Is the library parametric such that it works for other electrolyte systems like sodium batteries? How about flow batteries? I would think cracking isn't such an issue for 2 fluids across a membrane.
The "batteries-included" models in PyBaMM would apply to sodium batteries and lead-acid batteries (i.e. either the full Doyle-Fuller-Newman model or the Single Particle simplification). Flow batteries would probably require implementing a new model, which is supported in PyBaMM, since you need to model forced convection on either side of the separator.
I know PyBaMM has a relatively modular modeling system, but I'm not sure how they've broken down the models they have implemented.
Yeah thanks for the extra insight. On the modular modelling system bit, this is something we're not particularly good at telling people or highlighting. You can solve any PDE you want with PyBaMM but a lot of the high level battery models have been built upon several classes of lower level models that make battery specific assumptions. The Oxford University software research group headed by our good friend Martin gave a really nice intro course this year which helps you build a model from scratch which I find always helps with understanding https://train.rse.ox.ac.uk/material/HPCu/libraries. We should do more non-battery examples too, there is this one solving transient heat conduction in a rod https://docs.pybamm.org/en/latest/source/examples/notebooks/...
PyBaMM is technically chemistry agnostic but it's fair to say pretty much all the examples are for Li-ion. Sodium ion should be very possible as it's really the same physics but with different numbers. Flow batteries a bit more challenging because a few important processes would need to be added like the convection. Lead-acid examples are in there. PyBaMM actually started out on lead acid when Valentin was doing his PhD https://sites.google.com/view/valentinsulzer/publications
Or even just lead-acid?
ie is this 'debug lithium'