Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 7 committers (14.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.6%) to scientific vocabulary

Keywords from Contributors

solvers pybamm battery-models batteries interactive packaging network-simulation hacking embedded optim
Last synced: 7 months ago · JSON representation ·

Repository

Basic Info
Statistics
  • Stars: 31
  • Watchers: 4
  • Forks: 12
  • Open Issues: 12
  • Releases: 4
Created almost 2 years ago · Last pushed 8 months ago
Metadata Files
Readme License Citation

README.md

PyBaMM EIS

PyBaMM EIS rapidly calculates the electrochemical impedance of any battery model defined using PyBaMM, see the documentation

🔋 Using PyBaMM EIS

The easiest way to use PyBaMM EIS is to compute the impedance of a model of your choice with the default parameters:

```python import pybammeis import pybamm import numpy as np

DFN with capacitance

model = pybamm.lithiumion.DFN(options={"surface form": "differential"}) eissim = pybammeis.EISSimulation(model)

calculate impedance at log-spaced frequencies

eissim.solve(np.logspace(-4, 4, 30)) eissim.nyquist_plot() ```

💻 About PyBaMM

The example simulations use the package PyBaMM (Python Battery Mathematical Modelling). PyBaMM is an open-source battery simulation package written in Python. Our mission is to accelerate battery modelling research by providing open-source tools for multi-institutional, interdisciplinary collaboration. Broadly, PyBaMM consists of (i) a framework for writing and solving systems of differential equations, (ii) a library of battery models and parameters, and (iii) specialized tools for simulating battery-specific experiments and visualizing the results. Together, these enable flexible model definitions and fast battery simulations, allowing users to explore the effect of different battery designs and modeling assumptions under a variety of operating scenarios.

🚀 Installation

In order to run the notebooks in this repository you will need to install the pybamm-eis package. We recommend installing within a virtual environment in order to not alter any python distribution files on your machine.

PyBaMM is available on GNU/Linux, MacOS and Windows. For more detailed instructions on how to install PyBaMM, see the PyBaMM documentation.

Linux/Mac OS

To install the requirements on Linux/Mac OS use the following terminal commands:

  1. Clone the repository bash git clone https://github.com/pybamm-team/pybamm-eis

  2. Change into the pybamm-eis directory bash cd pybamm-eis

  3. Create a virtual environment bash virtualenv env

  4. Activate the virtual environment bash source env/bin/activate

  5. Install the pybammeis package bash pip install .

Windows

To install the requirements on Windows use the following commands:

  1. Clone the repository bash git clone https://github.com/pybamm-team/pybamm-eis

  2. Change into the pybamm-eis directory bash cd pybamm-eis

  3. Create a virtual environment bash python -m virtualenv env

  4. Activate the virtual environment bash \path\to\env\Scripts\activate where \path\to\env is the path to the environment created in step 3 (e.g. C:\Users\'Username'\env\Scripts\activate.bat).

  5. Install the pybammeis package bash pip install .

As an alternative, you can set up Windows Subsystem for Linux. This allows you to run a full Linux distribution within Windows.

Developer

To install as a developer follow the instructions above, replacing the final step with

bash pip install -e .

This will allow you to edit the code locally.

📖 Documentation

API documentation for the pybammeis package can be built locally using Sphinx. To build the documentation, first change into the docs directory, and then execute the following command:

bash make html

This will generate a number of html files in the docs/_build/html directory. To view the documentation, open the file docs/_build/html/index.html in a web browser.

🛠️ Contributing to PyBaMM

If you'd like to help us develop PyBaMM by adding new methods, writing documentation, or fixing embarrassing bugs, please have a look at these guidelines first.

🎉 Acknowledgments

This code was developed as part of the Oxford Mathematics Summer Project "Efficient Linear Algebra Methods to Determine Li-ion Battery Behaviour".

Student: Rishit Dhoot Supervisors: Prof Colin Please and Dr. Robert Timms

📫 Get in touch

For any questions, comments, suggestions or bug reports, please see the contact page.

📃 License

pybamm-eis is fully open source. For more information about its license, see LICENSE.

Owner

  • Name: PyBaMM Team
  • Login: pybamm-team
  • Kind: organization

Citation (CITATION.cff)

cff-version: 1.2.0
title: 'PyBaMM EIS: Efficient Linear Algebra Methods to Determine Li-ion Battery Behaviour'
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Rishit
    family-names: Dhoot
  - given-names: Robert
    family-names: Timms
  - given-names: Colin
    family-names: Please
version: "0.1.5" # Update this when you release a new version
repository-code: 'https://www.github.com/pybamm-team/pybamm-eis'

GitHub Events

Total
  • Create event: 9
  • Issues event: 5
  • Release event: 2
  • Watch event: 15
  • Delete event: 5
  • Issue comment event: 15
  • Push event: 8
  • Pull request review comment event: 2
  • Pull request review event: 9
  • Pull request event: 15
  • Fork event: 7
Last Year
  • Create event: 9
  • Issues event: 5
  • Release event: 2
  • Watch event: 15
  • Delete event: 5
  • Issue comment event: 15
  • Push event: 8
  • Pull request review comment event: 2
  • Pull request review event: 9
  • Pull request event: 15
  • Fork event: 7

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 120
  • Total Committers: 7
  • Avg Commits per committer: 17.143
  • Development Distribution Score (DDS): 0.525
Past Year
  • Commits: 15
  • Committers: 5
  • Avg Commits per committer: 3.0
  • Development Distribution Score (DDS): 0.667
Top Committers
Name Email Commits
Robert Timms t****s@m****k 57
rish31415 r****5@g****m 51
Eric G. Kratz k****n 5
dependabot[bot] 4****] 4
Noël Hallemans 9****s 1
Brady Planden 5****n 1
Arjun Verma a****c@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 15
  • Total pull requests: 20
  • Average time to close issues: 11 days
  • Average time to close pull requests: about 20 hours
  • Total issue authors: 8
  • Total pull request authors: 7
  • Average comments per issue: 0.6
  • Average comments per pull request: 0.7
  • Merged pull requests: 18
  • Bot issues: 0
  • Bot pull requests: 7
Past Year
  • Issues: 6
  • Pull requests: 12
  • Average time to close issues: N/A
  • Average time to close pull requests: about 10 hours
  • Issue authors: 5
  • Pull request authors: 5
  • Average comments per issue: 0.33
  • Average comments per pull request: 0.75
  • Merged pull requests: 10
  • Bot issues: 0
  • Bot pull requests: 7
Top Authors
Issue Authors
  • rtimms (8)
  • noelhallemans (4)
  • Akila1993 (2)
  • whileman133 (1)
  • larer (1)
  • keithbriggs (1)
  • agriyakhetarpal (1)
  • YannickNoelStephanKuhn (1)
Pull Request Authors
  • rtimms (10)
  • kratman (10)
  • dependabot[bot] (8)
  • arjxn-py (2)
  • BradyPlanden (2)
  • noelhallemans (1)
  • YannickNoelStephanKuhn (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (8) github_actions (2)

Dependencies

pyproject.toml pypi
  • matplotlib *
  • pybamm @ git+https://github.com/pybamm-team/PyBaMM.git@088ca3827c831e1b93c4667b6f4353f64fb32cbf
.github/workflows/build_docs.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
.github/workflows/pre-commit.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v4 composite
  • pre-commit/action v3.0.0 composite
.github/workflows/release.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • actions/upload-artifact v2 composite
  • pypa/gh-action-pypi-publish release/v1 composite
.github/workflows/unit_tests.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite