Skip to content

v22.11

Compare
Choose a tag to compare
@valentinsulzer valentinsulzer released this 04 Dec 23:49
· 3173 commits to main since this release
efd426c

Features

  • Updated parameter sets so that interpolants are created explicitly in the parameter set python file. This does not change functionality but allows finer control, e.g. specifying a "cubic" interpolator instead of the default "linear" (#2510)
  • Equivalent circuit models (#2478)
  • New Idaklu solver options for jacobian type and linear solver, support Sundials v6 (#2444)
  • Added scale and reference attributes to Variable objects, which can be use to make the ODE/DAE solver better conditioned (#2440)
  • SEI reactions can now be asymmetric (#2425)

Bug fixes

  • Switched from pkg_resources to importlib_metadata for handling entry points (#2500)
  • Fixed some bugs related to processing FunctionParameter to Interpolant (#2494)

Optimizations

  • ParameterValues now avoids trying to process children if a function parameter is an object that doesn't depend on its children (#2477)
  • Implemented memoization via cache and cached_property from functools (#2465)
  • Added more rules for simplifying expressions, especially around Concatenations. Also, meshes constructed from multiple domains are now cached (#2443)
  • Added more rules for simplifying expressions. Constants in binary operators are now moved to the left by default (e.g. x*2 returns 2*x) (#2424)

Breaking changes

  • Interpolants created from parameter data are now "linear" by default (was "cubic") (#2494)
  • Renamed entry point for parameter sets to pybamm_parameter_sets (#2475)
  • Removed code for generating ModelingToolkit problems (#2432)
  • Removed FirstOrder and Composite lead-acid models, and some submodels specific to those models (#2431)