High-performance simulations of the pseudo-2D porous electrode theory (PET) model in Julia
- Built for efficient controls, parameter estimation, and other complex battery simulations using the rigorous PET model
- Runs a full charge or discharge with 301 DAEs in ~3 ms on a laptop with 1 MB total memory usage
- Includes thermal and aging modes
After installing Julia, run the following command to add the PETLION package
import Pkg; Pkg.add("PETLION")
To get started, we recommend checking out the list of examples. To simulate a simple constant current-constant voltage (CC-CV) charge, run the following:
using PETLION
p = petlion(LCO)
sol = simulate(p, I=2, SOC=0, V_max=4.1)
simulate!(sol, p, 1800, V=:hold, I_min=1/20)
PETLION simulation
--------
Runs: I → V
Time: 2440.61 s
Current: 0.1955C
Voltage: 4.1 V
Power: 23.432 W
SOC: 1.0001
Exit: Above maximum SOC limit
- Marc D. Berliner – Creating and maintaining the code
- Richard D. Braatz – Technical oversight
- Richard B. Canty – Designing the PETLION logo
If you use PETLION in your work, please cite the paper:
@article{berliner2021petlion,
title={Methods---{PETLION}: Open-Source Software for Millisecond-Scale Porous Electrode Theory-Based Lithium-Ion Battery Simulations},
author={Berliner, Marc D and Cogswell, Daniel A and Bazant, Martin Z and Braatz, Richard D},
journal={Journal of The Electrochemical Society},
volume={168},
number={9},
pages={090504},
year={2021},
publisher={IOP Publishing}
}
This work was supported by the Toyota Research Institute through the D3BATT Center on Data-Driven-Design of Rechargeable Batteries.
Check out these high-quality and open-source battery simulation tools