Single Particle Model (SPM)

class pybamm.lithium_ion.SPM(options=None, name='Single Particle Model', build=True)

Single Particle Model (SPM) of a lithium-ion battery, from [1].

Parameters:
  • options (dict, optional) – A dictionary of options to be passed to the model.
  • name (str, optional) – The name of the model.
  • build (bool, optional) – Whether to build the model on instantiation. Default is True. Setting this option to False allows users to change any number of the submodels before building the complete model (submodels cannot be changed after the model is built).

References

[1]SG Marquis, V Sulzer, R Timms, CP Please and SJ Chapman. “An asymptotic derivation of a single particle model with electrolyte”. Journal of The Electrochemical Society, 166(15):A3693–A3706, 2019

Extends: pybamm.lithium_ion.BaseModel

class pybamm.lithium_ion.BasicSPM(name='Single Particle Model')

Single Particle Model (SPM) model of a lithium-ion battery, from [2].

This class differs from the pybamm.lithium_ion.SPM model class in that it shows the whole model in a single class. This comes at the cost of flexibility in combining different physical effects, and in general the main SPM class should be used instead.

Parameters:name (str, optional) – The name of the model.

References

[2]SG Marquis, V Sulzer, R Timms, CP Please and SJ Chapman. “An asymptotic derivation of a single particle model with electrolyte”. Journal of The Electrochemical Society, 166(15):A3693–A3706, 2019

Extends: pybamm.lithium_ion.BaseModel

new_copy(build=False)

Create a copy of the model. Overwrites the functionality of pybamm.BaseModel to make sure that the submodels are updated correctly