LIBquiv: An open-source MATLAB class for time-domain simulation of physics-informed equivalent circuit models of lithium-ion batteries
Authors/Creators
- 1. Offenburg University of Applied Sciences
Description
Abstract
LIBquiv is a flexible and user-friendly open-source MATLAB framework for time-domain simulation of physics-informed equivalent circuit models (ECMs) of lithium-ion batteries (LIBs). Designed with an object-oriented approach, LIBquiv balances computational efficiency with physical accuracy and intuitive usage, making it ideal for performance simulations, BMS algorithm development, thermal management simulations, and aging studies. LIBquiv is being developed since 2018 at Offenburg University of Applied Sciences, Institute of Sustainable Energy Systems (INES), Offenburg, Germany (see https://ines.hs-offenburg.de/en/institute-of-energy-systems-technology-ines).
A peer-reviewed scientific paper describing LIBquiv was published in SoftwareX. The software version presented in that paper corresponds to release v1.1.0 of the LIBquiv GitHub repository (https://github.com/ines-energy/LIBquiv). This Zenodo repository offers a permanently reproducible capsule of that release.
Citation
If you use LIBquiv, you MUST cite BOTH the paper AND either the GitHub repository or this Zenodo repository, for example:
J. A. Braun, D. Schmider, S. Schwab, P. O. Mmeka, and W. G. Bessler, “LIBquiv: An open-source MATLAB class for time-domain simulation of physics-informed equivalent circuit models of lithium-ion batteries,” SoftwareX 36 (2026), 103088. https://doi.org/10.1016/j.softx.2026.103088. Code available on Zenodo (https://doi.org/10.5281/zenodo.21397404) or GitHub (https://github.com/ines-energy/LIBquiv).
Key features
- Modular ECM architecture: Supports 1 serial resistance and up to 3 RC-elements.
- Physics-informed model features:
- Lumped thermal modeling for temperature-dependent behavior.
- Diffusion models for slow-timescale behavior.
- OCV hysteresis models for path-dependent chemistries.
- Aging models based on degradation modes for lifetime prediction.
- Intuitive Syntax: Control your virtual battery using commands that mirror real-world laboratory cyclers.
Installation
1. Download files2. Add to MATLAB search path
Open MATLAB and run the following command (replace <PATH_TO_LIBQUIV> with your actual local folder path):
% Add the 'src' folder (not the file itself) to the MATLAB search path
addpath("<PATH_TO_LIBQUIV>\src\matlab\");
% Optional: persists the path for future sessions
savepath;
Quick start
LIBquiv is very intuitive to use. You can define charge, discharge, and rest protocols with simple method calls that mimic laboratory equipment:
% temporarily add path to CALB example
addpath(".\examples\matlab\Calb180Ah")
% create virtual battery object (using the CALB cell from examples)
myLIB = Calb180Ah();
% initialize with 100 % SOC
myLIB.init(1);
% perform a 1 C CCCV discharge and charge with 1h rest
% CC discharge (I/A, t_max/s, cut-off condition)
myLIB.CC(180, 10000, "V < 2.5");
% CV discharge (V/V, t_max/s, cut-off condition)
myLIB.CV(2.5, 10000, "abs(I) < 1.8");
% CC charge (I/A, t_max/s, cut-off condition)
myLIB.CC(-180, 10000, "V > 3.65");
% CV charge (V/V, t_max/s, cut-off condition)
myLIB.CV(3.65, 10000, "abs(I) < 1.8");
% 1 h rest
myLIB.CC(0, 3600);
% plot V and I vs. time
myLIB.plot();
Help
To get more information about the class properties and methods, see the MATLAB help:
doc LIBquiv
For comprehensive scripts and advanced parameterization, check the examples folder.
License
LIBquiv is fully open-source. It is licensed under the BSD 3-Clause "New" or "Revised" License. See LICENSE.TXT for details.
Acknowledgements
LIBquiv is the result of development activities over multiple years as part of several publicly-funded projects. We acknowledge partial funding by the European Regional Development Fund and the German state of Baden-Württemberg in the framework of the LIBlife project (grant no. FEIH_KMU_1098567), by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) in the framework of the research training group SiMET – Simulation of Mechano-Electro-Thermal Processes in Lithium-Ion Batteries (281041241/GRK 2218), by the Carl Zeiss Stiftung in the framework of the iFEMA project (P2021-08-003), and by the German State of Baden-Württemberg, Ministry of Science, Research and Arts, as part of the Mittelbauprogramm 2022 and the Mittelbauprogramm 2025.
Files
README.md
Additional details
Software
- Repository URL
- https://github.com/ines-energy/LIBquiv
- Programming language
- MATLAB
- Development Status
- Active