impedance.py

impedance.py: A Python package for electrochemical impedance analysis - Published in JOSS (2020)

https://github.com/ecshackweek/impedance.py

Science Score: 100.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
    Found 9 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: arxiv.org, joss.theoj.org, zenodo.org
  • Committers with academic emails
    8 of 26 committers (30.8%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

battery corrosion electrochemistry fuel-cell impedance lithium-ion

Scientific Fields

Mathematics Computer Science - 84% confidence
Last synced: 4 months ago · JSON representation ·

Repository

A Python package for working with electrochemical impedance data

Basic Info
  • Host: GitHub
  • Owner: ECSHackWeek
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 5.8 MB
Statistics
  • Stars: 255
  • Watchers: 21
  • Forks: 114
  • Open Issues: 56
  • Releases: 21
Topics
battery corrosion electrochemistry fuel-cell impedance lithium-ion
Created over 7 years ago · Last pushed over 1 year ago
Metadata Files
Readme Contributing License Code of conduct Citation

README.md

DOI GitHub release

PyPI - Downloads All Contributors

Build Status Documentation Status Coverage Status

impedance.py

impedance.py is a Python package for making electrochemical impedance spectroscopy (EIS) analysis reproducible and easy-to-use.

Aiming to create a consistent, scikit-learn-like API for impedance analysis, impedance.py contains modules for data preprocessing, validation, model fitting, and visualization.

For a little more in-depth discussion of the package background and capabilities, check out our Journal of Open Source Software paper.

If you have a feature request or find a bug, please file an issue or, better yet, make the code improvements and submit a pull request! The goal is to build an open-source tool that the entire impedance community can improve and use!

Installation

The easiest way to install impedance.py is from PyPI using pip.

bash pip install impedance

See Getting started with impedance.py for instructions on getting started from scratch.

Dependencies

impedance.py requires:

  • Python (>=3.7)
  • SciPy (>=1.0)
  • NumPy (>=1.22.4)
  • Matplotlib (>=3.0)
  • Altair (>=3.0)
  • Pandas

Several example notebooks are provided in the docs/source/examples/ directory. Opening these will require Jupyter notebook or Jupyter lab.

Examples and Documentation

Several examples can be found in the docs/source/examples/ directory (the Fitting impedance spectra notebook is a great place to start) and the documentation can be found at impedancepy.readthedocs.io.

Citing impedance.py

DOI

If you use impedance.py in published work, please consider citing https://joss.theoj.org/papers/10.21105/joss.02349 as

bash @article{Murbach2020, doi = {10.21105/joss.02349}, url = {https://doi.org/10.21105/joss.02349}, year = {2020}, publisher = {The Open Journal}, volume = {5}, number = {52}, pages = {2349}, author = {Matthew D. Murbach and Brian Gerwe and Neal Dawson-Elli and Lok-kun Tsui}, title = {impedance.py: A Python package for electrochemical impedance analysis}, journal = {Journal of Open Source Software} }

Contributors ✨

This project started at the 2018 Electrochemical Society (ECS) Hack Week in Seattle and has benefited from a community of users and contributors since. Thanks goes to these wonderful people (emoji key):

Lok-kun Tsui
Lok-kun Tsui

💻 ⚠️ 📖
Brian Gerwe
Brian Gerwe

💻 ⚠️ 📖 👀
Neal
Neal

👀 💻
Matt Murbach
Matt Murbach

📖 👀 ⚠️ 💻
Kenny Huynh
Kenny Huynh

🐛 💻
lawrencerenna
lawrencerenna

🤔
Rowin
Rowin

🐛 💻
Michael Plews
Michael Plews

🤔
Chebuskin
Chebuskin

🐛
environmat
environmat

🐛
Abdullah Sumbal
Abdullah Sumbal

🐛
nobkat
nobkat

💻
Nick
Nick

🐛 💻
aokomorowski
aokomorowski

💻
Peter Attia
Peter Attia

💻 ⚠️ 📖
sdkang
sdkang

⚠️ 💻
lucasfdvx
lucasfdvx

🐛
Marcus Karlstad
Marcus Karlstad

🐛
Mark Bouman
Mark Bouman

🐛 💻
oslopanda
oslopanda

🐛
pililac
pililac

🐛
Kavin Teenakul
Kavin Teenakul

💻 📖
Enrico
Enrico

💻
Amin Sadeghi
Amin Sadeghi

💻 🐛

This project follows the all-contributors specification. Contributions of any kind welcome!

Owner

  • Name: ECS Hack Week
  • Login: ECSHackWeek
  • Kind: organization

JOSS Publication

impedance.py: A Python package for electrochemical impedance analysis
Published
August 03, 2020
Volume 5, Issue 52, Page 2349
Authors
Matthew D. Murbach ORCID
Hive Battery Labs, Seattle, WA, USA
Brian Gerwe ORCID
University of Washington, Department of Chemical Engineering, Seattle, WA, USA
Neal Dawson-Elli ORCID
PayScale, Seattle, WA, USA
Lok-kun Tsui ORCID
University of New Mexico, Center for MicroEngineered Materials, Albuquerque, NM, USA
Editor
Monica Bobra ORCID
Tags
electrochemistry impedance lithium-ion batteries fuel cells corrosion

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use impedance.py in published work, please consider citing https://joss.theoj.org/papers/10.21105/joss.02349 as shown below"
preferred-citation:
  type: article
  doi: 10.21105/joss.02349
  url: https://doi.org/10.21105/joss.02349
  year: 2020
  publisher: The Open Journal
  volume: 5
  number: 52
  pages: 2349
  authors:
    - family-names: Murbach
      given-names: Matthew
      orcid: http://orcid.org/0000-0002-6583-5995
    - family-names: Gerwe
      given-names: Brian
      orcid: http://orcid.org/0000-0002-1184-8483
    - family-names: Dawson-Elli
      given-names: Neal
      orcid: http://orcid.org/0000-0003-4559-7309
    - family-names: Tsui
      given-names: Lok-kun
      orcid: http://orcid.org/0000-0001-7381-0686
  title: "impedance.py: A Python package for electrochemical impedance analysis"
  journal: Journal of Open Source Software

GitHub Events

Total
  • Issues event: 5
  • Watch event: 36
  • Issue comment event: 2
  • Pull request event: 1
  • Fork event: 10
Last Year
  • Issues event: 5
  • Watch event: 36
  • Issue comment event: 2
  • Pull request event: 1
  • Fork event: 10

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 486
  • Total Committers: 26
  • Avg Commits per committer: 18.692
  • Development Distribution Score (DDS): 0.523
Past Year
  • Commits: 6
  • Committers: 3
  • Avg Commits per committer: 2.0
  • Development Distribution Score (DDS): 0.333
Top Committers
Name Email Commits
Matt Murbach m****h@u****u 232
Brian Gerwe g****b@u****u 53
Lok-kun Tsui l****i@u****u 40
allcontributors[bot] 4****] 37
Peter Attia p****a@g****m 27
Neal Dawson-Elli n****e@u****u 25
Kenny Huynh h****v@g****m 15
Dave Beck d****b@u****u 12
Jason Bonezzi j****5@z****u 10
Nick n****y@g****m 7
pangq2 p****q@o****u 6
Neal Dawson-Elli n****i@p****m 5
Kavin Teenakul a****t@p****m 2
Marcus Karlstad 9****i 2
Rowin r****n@a****r 2
Adrian Usler 4****r 1
Mark Bouman 1****n 1
Matthew Evans 7****s 1
Raymond Gasper 1****r 1
Simon Timbillah s****h@m****u 1
aokomorowski 4****i 1
nobkat n****9@g****m 1
oslopanda 3****a 1
pililac 6****c 1
sdkang 5****g 1
Enrico e****l@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 151
  • Total pull requests: 160
  • Average time to close issues: 3 months
  • Average time to close pull requests: 26 days
  • Total issue authors: 85
  • Total pull request authors: 32
  • Average comments per issue: 2.51
  • Average comments per pull request: 1.94
  • Merged pull requests: 137
  • Bot issues: 0
  • Bot pull requests: 31
Past Year
  • Issues: 5
  • Pull requests: 5
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 5
  • Pull request authors: 4
  • Average comments per issue: 0.4
  • Average comments per pull request: 0.6
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • mdmurbach (14)
  • BGerwe (14)
  • lktsui (7)
  • hkennyv (5)
  • edmundsj (5)
  • ravuru66 (4)
  • yuchengluo (3)
  • kevinsmia1939 (3)
  • Yugal0 (3)
  • FTHuld (3)
  • svmchop (3)
  • oslopanda (2)
  • Muneebing (2)
  • fatmaoza (2)
  • aokomorowski (2)
Pull Request Authors
  • mdmurbach (41)
  • allcontributors[bot] (33)
  • BGerwe (29)
  • lktsui (11)
  • petermattia (11)
  • adrianusler (5)
  • hkennyv (5)
  • MattiasMTS (3)
  • Gnpd (2)
  • etrevis (2)
  • andersonjacob (2)
  • ma-sadeghi (2)
  • kevinsmia1939 (2)
  • MarcinK00 (2)
  • SaftMacki (2)
Top Labels
Issue Labels
bug (48) enhancement (39) ECS Hack Week (5) good first issue (5) help wanted (4) documentation (3) question (2)
Pull Request Labels
Work in Progress (2)

Packages

  • Total packages: 3
  • Total downloads:
    • pypi 3,673 last-month
  • Total dependent packages: 6
    (may contain duplicates)
  • Total dependent repositories: 5
    (may contain duplicates)
  • Total versions: 59
  • Total maintainers: 1
pypi.org: impedance

A package for analyzing electrochemical impedance data

  • Versions: 21
  • Dependent Packages: 6
  • Dependent Repositories: 5
  • Downloads: 3,673 Last month
Rankings
Dependent packages count: 1.6%
Average: 4.4%
Downloads: 5.1%
Dependent repos count: 6.6%
Maintainers (1)
Last synced: 4 months ago
proxy.golang.org: github.com/ecshackweek/impedance.py
  • Versions: 19
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 4 months ago
proxy.golang.org: github.com/ECSHackWeek/impedance.py
  • Versions: 19
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 4 months ago

Dependencies

requirements.txt pypi
  • altair >=3.0
  • coveralls ==3.2.0
  • matplotlib >=3.0
  • nbsphinx *
  • numpy >=1.14
  • numpydoc *
  • pytest >=4.6
  • pytest-cov *
  • scipy >=1.0
setup.py pypi
  • altair >=3.0
  • matplotlib >=3.0
  • numpy >=1.14
  • scipy >=1.0
.github/workflows/ci.yml actions
  • actions/checkout v2.3.4 composite
  • actions/setup-python v2.2.2 composite
docs/requirements.txt pypi
  • nbsphinx *
  • numpydoc *
  • sphinx-rtd-theme *