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.0.tar.gz (440.9 kB view details)

Uploaded Source

Built Distribution

pyimpspec-5.1.0-py3-none-any.whl (480.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyimpspec-5.1.0.tar.gz
  • Upload date:
  • Size: 440.9 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.0.tar.gz
Algorithm Hash digest
SHA256 0eb8af751970a288ddf6d4b69319a16b8576fd8b8f0aba1ed66fa428d76e28eb
MD5 32157f0b88cce40f235572edbb80687c
BLAKE2b-256 f6672f440275494877d9ce1e50c29d6e1c3b97051baf2e2457a81ee391376340

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyimpspec-5.1.0-py3-none-any.whl
  • Upload date:
  • Size: 480.4 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 99025466eaa2b75a98a311eda7ac868ded26af1dcc4399d15d829d870653b32f
MD5 20a4d0ec3277caa0d89dbdac9f1057bb
BLAKE2b-256 fcd452c4c70a0d697e919ff654ccc3bca4fa3e2a8487496cf56e479dccc5c6b7

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