Skip to main content

A package for parsing, validating, analyzing, and simulating impedance spectra.

Project description

pyimpspec

A package for parsing, validating, analyzing, and simulating impedance spectra.

tests build PyPI - Python Version GitHub PyPI

Table of contents

About

Pyimpspec is a Python package that provides an application programming interface (API) and a command-line interface (CLI) for working with impedance spectra. The target audience is researchers who use electrochemical impedance spectroscopy (EIS) though the program may also be useful in educational settings. Those looking for a program with a graphical user interface may wish to instead use DearEIS, which is based on pyimpspec.

The interfaces of pyimpspec implement features such as:

  • reading certain data formats and parsing the experimental data contained within
  • validation of impedance spectra using linear Kramers-Kronig tests or the Z-HIT algorithm
  • construction of circuits by, e.g., parsing circuit description codes (CDC)
  • support for user-defined circuit elements
  • estimation of the distribution of relaxation times (DRT)
  • complex non-linear least squares fitting of equivalent circuits
  • simulation of the impedance spectra of circuits
  • visualization of impedance spectra and various analysis results

See the official documentation for instructions on how to install pyimpspec, examples of how to use the API, and the API reference.

Changelog

See CHANGELOG.md for details.

Contributing

If you wish to contribute to the further development of pyimpspec, then there are several options available to you depending on your ability and the amount of time that you can spare.

If you find bugs, wish some feature was added, or find the documentation to be lacking, then please open an issue on GitHub.

If you wish to contribute code, then start by cloning the repository:

git clone https://github.com/vyrjana/pyimpspec.git

The development dependencies can be installed from within the repository directory using pip:

pip install -r ./dev-requirements.txt

Create a new branch based on either the main branch or the most recent development branch (e.g., dev-*), and submit your changes as a pull request.

Code contributions should, if it is applicable, also include unit tests, which should be implemented in files placed in the tests folder found in the root of the repository along with any assets required by the tests. It should be possible to run the tests by executing the run_tests.sh script, which uses the test discovery process built into the unittest module that is included with Python.

If it is possible, then delay the importing of dependencies until they are needed in order to reduce the overhead associated with just importing pyimpspec. Ignoring this guideline may, e.g., make using the CLI slower than it needs to be.

See CONTRIBUTORS for a list of people who have contributed to the pyimpspec project.

License

Copyright 2024 pyimpspec developers

Pyimpspec is licensed under the GPLv3 or later.

The licenses of pyimpspec's dependencies and/or sources of portions of code are included in the LICENSES folder.

Project details


Download files

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

Source Distribution

pyimpspec-5.1.1.tar.gz (441.4 kB view details)

Uploaded Source

Built Distribution

pyimpspec-5.1.1-py3-none-any.whl (480.5 kB view details)

Uploaded Python 3

File details

Details for the file pyimpspec-5.1.1.tar.gz.

File metadata

  • Download URL: pyimpspec-5.1.1.tar.gz
  • Upload date:
  • Size: 441.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for pyimpspec-5.1.1.tar.gz
Algorithm Hash digest
SHA256 69faa52e81d8df0ff4979d057b477648924da14edf037cead3f2c922204ba98c
MD5 afe40f730d78580096280b705f7f7bac
BLAKE2b-256 f53aa800e0355c7b42bf511db47836d3a3f8c318deafa5b27c8cc0d1f1d41a9e

See more details on using hashes here.

File details

Details for the file pyimpspec-5.1.1-py3-none-any.whl.

File metadata

  • Download URL: pyimpspec-5.1.1-py3-none-any.whl
  • Upload date:
  • Size: 480.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for pyimpspec-5.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4076b5f7861defc85f736011a5424f2bb2f49fe46c8bfa832ec78b97791c215c
MD5 de20aa59a557e6fe5ca1e41715266318
BLAKE2b-256 8eb02e3d6ac5ae831ab0cbf1fb59f940a0712c1ac131ee6eb4c1ee5e70e5a701

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page