Skip to main content
The pybamm.lead_acid module provides porous-electrode models for lead-acid batteries based on the asymptotic and full porous electrode frameworks.
Lead-acid models do not use particles (the "particle shape" option is fixed to "no particles"). Porosity changes during cycling are central to the lead-acid chemistry and are included automatically.

Available models


pybamm.lead_acid.Full

Full porous electrode model for lead-acid, based on the Newman-Tiedemann framework. Resolves the full electrolyte concentration, potential, and porosity distributions.
dict
Model options. See Options reference below.
str
default:"Full model"
Human-readable model name.
bool
default:"true"
Build the model on instantiation. Pass False to modify sub-models first.
Default parameter set: pybamm.ParameterValues("Sulzer2019")

pybamm.lead_acid.LOQS

Leading-Order Quasi-Static model — an asymptotic reduction of the full model. Much faster than Full, valid at low C-rates.
Default parameter set: pybamm.ParameterValues("Sulzer2019") Default solver: pybamm.CasadiSolver()
LOQS uses the Jacobian disabled by default (use_jacobian = False) when dimensionality = 0 because the system is small enough that this is faster.

pybamm.lead_acid.BasicFull

A simplified, single-file educational implementation of the full lead-acid model. Not intended for research — use Full instead.

Options reference

Lead-acid models accept the same base BatteryModelOptions dictionary as lithium-ion models, with the following notable options:
"hydrolysis": "true" requires "surface form" to be set to "differential" or "algebraic". Setting it alongside "surface form": "false" raises an error.

Default mesh points

The default var_pts for lead-acid models are:

Examples