A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

equiv-circ-model

An equivalent circuit model for a battery cell, module, and pack.
https://github.com/batterysim/equiv-circ-model

Category: Energy Storage
Sub Category: Battery

Keywords

battery battery-cell electric-vehicles equivalent-circuit-model

Last synced: about 14 hours ago
JSON representation

Repository metadata

An equivalent circuit model (ECM) for a battery cell, module, and pack

README.md

Equivalent circuit model

This repository contains Python code for running an equivalent circuit model (ECM) developed for a 2013 Nissan Leaf battery cell and module. The ecm package contains source code for the equivalent circuit model while the examples folder provides scripts for running the ECM for a battery cell, module, and pack. Model parameters are determined from hybrid pulse power characterization (HPPC) and discharge tests conducted at ORNL. The battery cell and module specifications were provided by NREL.

Installation

The Anaconda or Miniconda distribution of Python 3 is recommended for this project. The ecm package requires Matplotlib, NumPy, Pandas, and SciPy.

The simplest way to install the ECM package is with pip. This can be done from within the equiv-circ-model directory:

# Install the ecm package
pip install -e .

A requirements file is provided for running the ECM in a virtual environment using pip:

# Create a new virtual environment
python -m venv env

# Activate the environment
source env/bin/activate

# Install packages needed for the ECM
pip install -r requirements.txt

# From within equiv-circ-model directory, install the ecm package
pip install -e .

# Deactivate the environment
deactivate

# Remove the environment by deleting the `env` folder

An environment yaml file is also provided for running the ECM in a conda environment:

# Create a new conda environment and install packages needed for the ECM
conda env create -f environment.yml

# Activate the environment
conda activate ecm

# From within equiv-circ-model directory, install the ecm package
pip install -e .

# Deactivate the environment
conda deactivate

# Remove the environment and its installed packages
conda env remove -n ecm

Usage

Examples of using the ecm package are provided in the examples folder. Examples are organized into subfolders for battery cell and battery module models. From within the subfolder, each script can be run from the command line such as:

# View plots of the battery cell HPPC data
cd ~/equiv-circ-model/examples/cell
python view_hppc_data.py

# Run the ECM for a battery cell and compare to HPPC battery cell data
cd ~/equiv-circ-model/examples/cell
python hppc_vt.py

Project structure

ecm - Python package containing source code for the equivalent circuit model (ECM).

examples/cell - Example scripts for running the battery cell ECM.

examples/cell-to-module - Examples of using a cell model to predict a battery module.

examples/cell-to-pack - Examples of using a cell model to predict a battery pack.

examples/data - Data files from 2013 Nissan Leaf battery cell and module tests. This data is used for developing and validating the ECM.

examples/module - Example scripts for running a battery module ECM.

examples/module-to-pack - Examples of using a module model to predict a battery pack.

Contributing

Comments, suggestions, and other feedback can be submitted on the Issues page.

License

This code is available under the MIT License - see the LICENSE file for more information.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 6 days ago

Total Commits: 59
Total Committers: 1
Avg Commits per committer: 59.0
Development Distribution Score (DDS): 0.0

Commits in past year: 1
Committers in past year: 1
Avg Commits per committer in past year: 1.0
Development Distribution Score (DDS) in past year: 0.0

Name Email Commits
Gavin Wiggins 6****g 59

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 8
Total pull requests: 0
Average time to close issues: 6 days
Average time to close pull requests: N/A
Total issue authors: 8
Total pull request authors: 0
Average comments per issue: 1.13
Average comments per pull request: 0
Merged pull request: 0
Bot issues: 0
Bot pull requests: 0

Past year issues: 1
Past year pull requests: 0
Past year average time to close issues: N/A
Past year average time to close pull requests: N/A
Past year issue authors: 1
Past year pull request authors: 0
Past year average comments per issue: 1.0
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/batterysim/equiv-circ-model

Top Issue Authors

  • balaji3112 (1)
  • rakesh-collab (1)
  • faa-santos (1)
  • hfathian (1)
  • AymanMounit (1)
  • vipulramk (1)
  • wigging (1)
  • kkh1897 (1)

Top Pull Request Authors


Top Issue Labels

Top Pull Request Labels


Package metadata

pypi.org: ecm-thinkclock

A Python package for equivalent circuit models

  • Homepage: https://github.com/batterysim/equiv-circ-model
  • Documentation: https://ecm-thinkclock.readthedocs.io/
  • Licenses: MIT License
  • Latest release: 20.3 (published 11 months ago)
  • Last Synced: 2025-04-26T12:30:52.747Z (1 day ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 56 Last month
  • Rankings:
    • Dependent packages count: 10.779%
    • Average: 35.743%
    • Dependent repos count: 60.707%
  • Maintainers (1)

Dependencies

environment.yml conda
  • matplotlib
  • numpy
  • pandas
  • python
  • scipy
requirements.txt pypi
  • matplotlib *
  • numpy *
  • pandas *
  • scipy *
setup.py pypi
  • matplotlib *
  • numpy *
  • pandas *
  • scipy *

Score: 8.761550139129644