Skip to main content

A Python package for working with impedance data

Project description

GitHub release PyPI - Downloads All Contributors

Build Status Documentation Status

Codacy Badge Coverage Status

impedance.py

impedance.py is a Python module for working with impedance data.

This project started at the 2018 Electrochemical Society (ECS) Hack Week in Seattle and has grown from there.

Using a scikit-learn-like API, we hope to make visualizing, fitting, and analyzing impedance spectra more intuitive and reproducible.

impedance.py is currently under development and new features are rapidly being added. If you have a feature request or find a bug, please feel free to 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!

impedance.py currently provides:

  • preprocessing functions for easily loading in impedance data from a wide variety of file types
  • a simple API for fitting, predicting, and plotting impedance
  • validation methods for checking measurement validity
  • equivalent circuit fitting with customizable models
  • convenient Nyquist plots including confidence interval estimation for fit circuits

several features are currently being improved upon:

  • interactive plotting with altair
  • physics-based impedance models for lithium-ion batteries

Installation

Dependencies

impedance.py requires:

  • Python (>=3.5)
  • SciPy (>=1.0)
  • NumPy (>=1.14)
  • Matplotlib (>=3.0)

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

User Installation

The easiest way to install impedance.py is from PyPI using pip (see Getting started with impedance.py for instructions).

Examples and Documentation

Several examples can be found in the examples/ directory (the fitting_tutorial.ipynb is a great place to start) and the documentation can be found at impedancepy.readthedocs.io.

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Lok-kun Tsui

💻 ⚠️ 📖

Brian Gerwe

💻 ⚠️ 📖

Neal

👀

Matt Murbach

📖 👀 ⚠️ 💻

Kenny Huynh

🐛 💻

lawrencerenna

🤔

Rowin

🐛 💻

Michael Plews

🤔

Chebuskin

🐛

environmat

🐛

Abdullah Sumbal

🐛

nobkat

💻

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for impedance, version 0.5.1
Filename, size File type Python version Upload date Hashes
Filename, size impedance-0.5.1-py3-none-any.whl (31.5 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size impedance-0.5.1.tar.gz (28.9 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page