Skip to content

v26.3

Latest

Choose a tag to compare

@NicolaCourtier NicolaCourtier released this 05 Mar 16:47
6b30ff5

Full Changelog: https://github.com/pybop-team/PyBOP/blob/develop/CHANGELOG.md

v26.3 - 2026-03-05

Features

  • #897 - Adds separate LogPrior, LogPDF and LogPosterior classes and updates set_target.
  • #873 - Adds methods for saving result and reconstructing result from saved data. result.save: saves entire python object using pickle. result.save_data: saves primarily the logger data and any other data required to reconstruct the result from the problem or the sampler (for SamplingResult). Result.load_result: reconstructs the Result object based on the underlying problem (or sampler for SamplingResult) and the data saved to file.
  • #862 - Adds pybop.MarginalDistribution, pybop.MultivariateLogNormal.
  • #889 - Adds methods for setting the initial state from a voltage to the grouped models.
  • #869 - Adds methods for pre-processing current data for linear interpolation.
  • #868 - Adds support for Python3.13 (NumPy restricted to <2.4, EP-BOLFI optimiser and PyProBE do not support Python 3.13).
  • #871 - Adds a lumped thermal model called CellTemperature.
  • #846 - Adds Bayesian optimisation framework and, as an example, the EP-BOLFI optimiser

Bug Fixes

  • #890 - Fix the assignment of parameters within a MetaProblem.
  • #847 - Update readme and diagram of pybop components so that the diagram is displayed correctly in the readme.

Breaking Changes

  • #894 - Distinguish different uses of sigma, pass the covariance to the samplers, and add parameter get_mean and get_std functions.
  • #862 - Removes MultivariateParameters class. Instead allows multivariate parameters to be passed via pybamm.ParameterValues (as a pybop.Parameter with a pybop.MarginalDistribution). The pybop.Parameters class now handles multivariate parameters. Multivariate distributions are now defined in the model space instead of the search space.
  • #878 - Use "Current [A]" instead of "Current function [A]" in datasets and allow list of control functions.
  • #864 - Remove check_already_exists from ParameterValues following PyBaMM PR 5339.
  • #860 - Create a parent class for optimisation and sampling results, move PosteriorSummary attributes to the SamplingResult and deprecate the pints.AdaptiveCovarianceMCMC sampler.
  • #857 - Deprecate the custom PyBaMM model build process for a simulation without an experiment and rename batch_solve as solve_batch to align with other functions.
  • #839 - Renames 'prior' as 'distribution' for pybop.Parameter. Allows construction of a pybop.Parameter with a distribution of type scipy.stats.distributions.rv_frozen. Removes margins, set_bounds, remove_bounds from pybop.Parameter.