liionpack
liionpack: A Python package for simulating packs of batteries with PyBaMM - Published in JOSS (2022)
Science Score: 95.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 4 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
✓Committers with academic emails
5 of 14 committers (35.7%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords from Contributors
Scientific Fields
Repository
A battery pack simulation tool that uses the PyBaMM framework
Basic Info
- Host: GitHub
- Owner: pybamm-team
- License: mit
- Language: Python
- Default Branch: develop
- Homepage: https://liionpack.readthedocs.io/en/latest/
- Size: 37.5 MB
Statistics
- Stars: 108
- Watchers: 13
- Forks: 32
- Open Issues: 23
- Releases: 17
Metadata Files
README.md

Overview of liionpack
liionpack takes a 1D PyBaMM model and makes it into a pack. You can either specify the configuration e.g. 16 cells in parallel and 2 in series (16p2s) or load a netlist.
[!IMPORTANT] This repository is currently in "maintenance mode" and is no longer actively developed. Updates will be made to fix critical bugs and keep the package working with new versions of PyBaMM, but no new features will be added.
Installation
Follow the steps given below to install liionpack. The package must be installed to run the included examples. It is recommended to create a virtual environment for the installation, see the documentation.
To install liionpack using pip, run the following command:
bash
pip install liionpack
Conda
The following terminal commands are for setting up a conda development environment for liionpack. This requires the Anaconda or Miniconda Python distribution. This environment installs liionpack in editable mode which is useful for development of the liionpack source code. General users should install liionpack with pip.
```bash
Create a conda environment named lipack
cd liionpack conda env create --file environment.yml
Activate the environment
conda activate lipack
Exit the environment
conda deactivate
Delete the environment
conda env remove --name lipack ```
LaTeX
In order to use the draw_circuit functionality a version of Latex must be installed on your machine. We use an underlying Python package Lcapy for making the drawing and direct you to its installation instructions here for operating system specifics.
Example Usage
The following code block illustrates how to use liionpack to perform a simulation:
```python import liionpack as lp import numpy as np import pybamm
Generate the netlist
netlist = lp.setup_circuit(Np=16, Ns=2, Rb=1e-4, Rc=1e-2, Ri=5e-2, V=3.2, I=80.0)
output_variables = [ 'X-averaged total heating [W.m-3]', 'Volume-averaged cell temperature [K]', 'X-averaged negative particle surface concentration [mol.m-3]', 'X-averaged positive particle surface concentration [mol.m-3]', ]
Heat transfer coefficients
htc = np.ones(32) * 10
Cycling experiment, using PyBaMM
experiment = pybamm.Experiment([ "Charge at 20 A for 30 minutes", "Rest for 15 minutes", "Discharge at 20 A for 30 minutes", "Rest for 30 minutes"], period="10 seconds")
PyBaMM parameters
parameter_values = pybamm.ParameterValues("Chen2020")
Solve pack
output = lp.solve(netlist=netlist, parametervalues=parametervalues, experiment=experiment, outputvariables=outputvariables, htc=htc) ```
Documentation
There is a full API documentation, hosted on Read The Docs that can be found here.
Contributing to liionpack
If you'd like to help us develop liionpack by adding new methods, writing documentation, or fixing embarrassing bugs, please have a look at these guidelines first.
Get in touch
For any questions, comments, suggestions or bug reports, please see the contact page.
Acknowledgments
PyBaMM-team acknowledges the funding and support of the Faraday Institution's multi-scale modelling project and Innovate UK.
The development work carried out by members at Oak Ridge National Laboratory was partially sponsored by the Office of Electricity under the United States Department of Energy (DOE).
License
liionpack is fully open source. For more information about its license, see LICENSE.
Owner
- Name: PyBaMM Team
- Login: pybamm-team
- Kind: organization
- Website: https://www.pybamm.org/
- Twitter: pybamm_
- Repositories: 24
- Profile: https://github.com/pybamm-team
JOSS Publication
liionpack: A Python package for simulating packs of batteries with PyBaMM
Authors
Department of Chemical Engineering, University College London, London, WC1E 7JE, United Kingdom., The Faraday Institution, Quad One, Becquerel Avenue, Harwell Campus, Didcot, OX11 0RA, United Kingdom.
The Faraday Institution, Quad One, Becquerel Avenue, Harwell Campus, Didcot, OX11 0RA, United Kingdom., Mathematical Institute, University of Oxford, OX2 6GG, United Kingdom.
Carnegie Mellon University, Scott Hall 5109, 5000 Forbes Ave, Pittsburgh, PA 15213, United States.
The Faraday Institution, Quad One, Becquerel Avenue, Harwell Campus, Didcot, OX11 0RA, United Kingdom., WMG, University of Warwick, Coventry, CV4 7AL, United Kingdom
Oak Ridge National Laboratory, 2360 Cherahala Boulevard, Knoxville, Tennessee 37932, United States.
Oak Ridge National Laboratory, 2360 Cherahala Boulevard, Knoxville, Tennessee 37932, United States.
Symbiosis Institute of Technology, Symbiosis International University, Lavale, Pune, Maharashtra 412115, India.
Cluster Innovation Centre, University of Delhi, GC Narang Road, Delhi, 110007, India.
Oak Ridge National Laboratory, 2360 Cherahala Boulevard, Knoxville, Tennessee 37932, United States.
Tags
batteries packs electrochemistryGitHub Events
Total
- Create event: 41
- Issues event: 2
- Release event: 3
- Watch event: 23
- Delete event: 41
- Issue comment event: 9
- Push event: 51
- Pull request review comment event: 1
- Pull request review event: 36
- Pull request event: 78
- Fork event: 4
Last Year
- Create event: 41
- Issues event: 2
- Release event: 3
- Watch event: 23
- Delete event: 41
- Issue comment event: 9
- Push event: 51
- Pull request review comment event: 1
- Pull request review event: 36
- Pull request event: 78
- Fork event: 4
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Tom Tranter | t****r@g****m | 462 |
| Saransh | s****1@g****m | 76 |
| pre-commit-ci[bot] | 6****] | 74 |
| Gavin Wiggins | 6****g | 52 |
| Valentin Sulzer | v****r@h****m | 20 |
| Priyanshu Agarwal | p****6@g****m | 16 |
| Ferran Brosa Planella | F****a@w****k | 12 |
| Tom Tranter | t****r@n****k | 10 |
| Robert Timms | t****s@m****k | 6 |
| Eric G. Kratz | k****n | 6 |
| Alexander Bills | a****s@a****u | 4 |
| ksnvikrant | 9****t | 2 |
| Daniel S. Katz | d****z@i****g | 2 |
| Allu, Srikanth | a****s@o****v | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 131
- Total pull requests: 247
- Average time to close issues: about 1 month
- Average time to close pull requests: 14 days
- Total issue authors: 41
- Total pull request authors: 14
- Average comments per issue: 3.68
- Average comments per pull request: 1.08
- Merged pull requests: 226
- Bot issues: 0
- Bot pull requests: 81
Past Year
- Issues: 5
- Pull requests: 74
- Average time to close issues: N/A
- Average time to close pull requests: about 18 hours
- Issue authors: 4
- Pull request authors: 4
- Average comments per issue: 1.0
- Average comments per pull request: 0.05
- Merged pull requests: 68
- Bot issues: 0
- Bot pull requests: 60
Top Authors
Issue Authors
- TomTranter (51)
- wigging (11)
- tinosulzer (11)
- brosaplanella (6)
- Saransh-cpp (4)
- skywo1f (4)
- Jadhav-Sourabh (4)
- mefuller (3)
- ksnvikrant (3)
- SyarifulAzis1018 (2)
- kratman (2)
- PippaVossen (1)
- krishnakantsingh14 (1)
- ihlas123 (1)
- priyanshuone6 (1)
Pull Request Authors
- pre-commit-ci[bot] (100)
- TomTranter (90)
- Saransh-cpp (21)
- kratman (15)
- wigging (14)
- tinosulzer (8)
- priyanshuone6 (7)
- mleot (5)
- valentinsulzer (4)
- brosaplanella (3)
- rtimms (2)
- srikanthallu (1)
- abillscmu (1)
- danielskatz (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
-
Total downloads:
- pypi 376 last-month
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 1
(may contain duplicates) - Total versions: 30
- Total maintainers: 1
proxy.golang.org: github.com/pybamm-team/liionpack
- Documentation: https://pkg.go.dev/github.com/pybamm-team/liionpack#section-documentation
- License: mit
-
Latest release: v0.4.0
published 11 months ago
Rankings
pypi.org: liionpack
A battery pack simulator for PyBaMM
- Homepage: https://github.com/pybamm-team/liionpack
- Documentation: https://liionpack.readthedocs.io/en/latest/
- License: MIT License
-
Latest release: 0.4.0
published 11 months ago
Rankings
Maintainers (1)
Dependencies
- mkdocs-jupyter *
- mkdocs-material *
- mkdocstrings-python-legacy *
- actions/checkout v2 composite
- actions/download-artifact v2 composite
- actions/setup-python v2 composite
- actions/upload-artifact v2 composite
- actions/checkout v3 composite
- actions/download-artifact v2 composite
- actions/setup-python v4 composite
- actions/upload-artifact v2 composite
- pypa/gh-action-pypi-publish release/v1 composite
- actions/checkout v2 composite
- actions/download-artifact v2 composite
- actions/setup-python v2 composite
- actions/upload-artifact v2 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- codecov/codecov-action v1 composite
- Ipython *
- lcapy *
- matplotlib *
- nbconvert *
- networkx *
- numpy *
- openpyxl *
- pandas *
- plotly *
- pybamm >=23.5
- ray *
- redis *
- scikit-spatial *
- scipy *
- textwrapper *
- tqdm *
- ipython
- jupyter
- matplotlib
- numpy
- pandas
- pip
- python 3.9.*
- scipy
- sympy