/pymultipleis

A library for fitting a sequence of electrochemical impedance spectra (JAX version).

Primary LanguagePythonMIT LicenseMIT

pymultipleis

Installation | Examples | Documentation | Citing this work

A library for fitting a sequence of electrochemical impedance spectra.

  • Implements algorithms for simultaneous and sequential fitting.

  • Written in python and based on the JAX library.

  • Leverages JAX's in-built automatic differentiation (autodiff) of Python functions.

  • Takes advantage of JAX's just-in-time compilation (JIT) of Python code to XLA which runs on GPU or TPU hardware.

Installation

pymultipleis requires the following:

  • Python (>=3.9)
  • JAX (>=0.3.17)

Installing JAX on Linux is natively supported by the JAX team and instructions to do so can be found here.

For Windows systems, the officially supported method is building directly from the source code (see Building JAX from source). However, it might be easier to use pre-built JAX wheels which can be found in this Github repo. Further details on Windows installation is also provided in this repo.

After installing JAX, you can now install pymultipleis via the following pip command

pip install pymultipleis

Getting started with pymultipleis contains a quick start guide to fitting your data with pymultipleis.

Examples

Jupyter notebooks which cover several aspects of pymultipleis can be found in Examples.

Documentation

Details about the pymultipleis API, can be found in the reference documentation.

Citing this work

If you use pymultipleis for academic research, you may cite the library as follows:

@misc{Chukwu2022,
  author = {Chukwu, Richard},
  title = {pymultipleis: a library for fitting a sequence of electrochemical impedance spectra},
  publisher = {GitHub},
  year = {2022},
  url = {https://github.com/richinex/pymultipleis},
}