Skip to content

Latest commit

 

History

History
48 lines (38 loc) · 4.75 KB

CHANGELOG.md

File metadata and controls

48 lines (38 loc) · 4.75 KB

Features

  • #204 - Splits integration, unit, examples, plots tests, update workflows. Adds pytest --examples, --integration, --plots args. Adds tests for coverage after removal of examples. Adds examples and integrations nox sessions. Adds pybop.RMSE._evaluateS1() method
  • #206 - Adds Python 3.12 support with corresponding github actions changes.
  • #18 - Adds geometric parameter fitting capability, via model.rebuild() with model.rebuild_parameters.
  • #203 - Adds support for modern Python packaging via a pyproject.toml file and configures the pytest test runner and ruff linter to use their configurations stored as declarative metadata.
  • #123 - Configures scheduled tests to run against the last three PyPI releases of PyBaMM via dynamic GitHub Actions matrix generation.
  • #187 - Adds M1 Github runner to test_on_push workflow, updt. self-hosted supported python versions in scheduled tests.
  • #118 - Adds example jupyter notebooks.
  • #151 - Adds a standalone version of the Problem class.
  • #12 - Adds initial implementation of an Observer class and an unscented Kalman filter.
  • #190 - Adds a second example design cost, namely the VolumetricEnergyDensity.

Bug Fixes

  • #123 - Reinstates check for availability of parameter sets via PyBaMM upon retrieval by pybop.ParameterSet.pybamm().
  • #196 - Fixes failing observer cost tests.
  • #63 - Removes NLOpt Optimiser from future releases. This is to support deployment to the Apple M-Series platform.
  • #164 - Fixes convergence issues with gradient-based optimisers, changes default model.check_params() to allow infeasible solutions during optimisation iterations. Adds a feasibility check on the optimal parameters.

v23.12 - 2023-12-19

Features

  • #141 - Adds documentation with Sphinx and PyData Sphinx Theme. Updates docstrings across package, relocates costs and dataset to top-level of package. Adds noxfile session and deployment workflow for docs.
  • #131 - Adds SciPyDifferentialEvolution optimiser, adds functionality for user-selectable maximum iteration limit to SciPyMinimize, NLoptOptimize, and BaseOptimiser classes.
  • #107 - Adds Equivalent Circuit Model (ECM) with examples, Import/Export parameter methods ParameterSet.import_parameter and ParameterSet.export_parameters, updates default FittingProblem.signal definition to "Voltage [V]", and testing infrastructure
  • #127 - Adds Windows and macOS runners to the test_on_push action
  • #114 - Adds standard plotting class pybop.StandardPlot() via plotly backend
  • #114 - Adds quick_plot(), plot_convergence(), and plot_cost2d() methods
  • #114 - Adds a SciPy minimize example and logging for non-Pints optimisers
  • #116 - Adds PSO, SNES, XNES, ADAM, and IPropMin optimisers to PintsOptimisers() class
  • #38 - Restructures the Problem classes ahead of adding a design optimisation example
  • #38 - Updates tests and adds a design optimisation example script spme_max_energy
  • #120 - Updates the parameterisation test settings including the number of iterations
  • #145 - Reformats Dataset to contain a dictionary and signal into a list of strings

Bug Fixes

  • #182 - Allow square-brackets indexing of Dataset
  • Initial release
  • Adds Pints, NLOpt, and SciPy optimisers
  • Adds SumofSquareError and RootMeanSquareError cost functions
  • Adds Parameter and Dataset classes