Skip to main content

FIPT: Fast impedance tortuosity

FIPT is a measurement technique that allows a fast determination of the ionic resistance for battery electrodes. The technique is based on the work by J. Landesfeind (DOI: 10.1149/issn.1945-7111) and then optimized for execution speed and reliability at Battrion.

The measurement setup can be built based on https://github.com/deniz195/fipt

The data aquired in an FIPT measurement can be analyzed by the code in this repository. The code fits an analytical model to the data to determine the relevant parameters of the measurement:

r_ion - Ionic resistance
r_sep - Seperator resistance
chisqr - χ2 as quality of fit
gamma - Phase exponent
q_s   - Capacitance factor

The ionic resistance can be used to calculate the MacMullin number (and the tortuosity), which are important performance parameters of battery electrodes.

Quick analysis

If you want to quickly analyze your impedance data:

Install fipt-analysis:

pip install fipt[full]

Put the test data test_data_001.csv in your current folder (download here from the examples folder). Analyze the data:

python -m fipt ./test_data_001.csv

To analyze your own data, put it in a file with the same format as test_data_001.csv, which is:

Format: CSV
1st column, Frequency in [Hz]
2nd column, Z' in [Ohm] 
3rd column, Z'' in [Ohm]
(Name of columns is not important)

Examples

To see how to analyze fipt data in your own python code, refer to the jupyter notebook demo_fipt.ipynb in the examples folder.

Features and known issues

The code was optimized to allow the fitting and analysis of large numbers of data files, with minimum user intervention. The key features of the code are:

  • Robust estimation of starting parameters from raw data
  • Resistance to outlier data points through use of Student-T likelihood function
  • Ability to verify each fit, through automatic generation of result files (plots, statistics, etc.)

Known issues:

  • The code is currently provided with a minimum of documentation.
  • Calculation of MacMullin number and tortuosity not yet included

Requirements

Required packages are numpy, scipy for data and statistical models and lmfit to perform the model fitting.

It is recommended (but not necessary) to have pandas and matplotlib installed, so that fipt-analysis will be able to create plots of the fitting. These packages are automatically installed when using the install configuration full:

pip install fipt[full]

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

For questions please feel free to reach out to Deniz Bozyigit (dbozyigit@battrion.com)

License

MIT

Metadata

Release files for fipt 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fipt 0.3.0
File Size Uploaded Provenance Actions
fipt-0.3.0.tar.gz 12.9 kB Without provenance Details for fipt-0.3.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for fipt 0.3.0
File Interpreter ABI Platform Actions
fipt-0.3.0-py3-none-any.whl Python 3 none any Details for fipt-0.3.0-py3-none-any.whl

Total release size: 27.3 kB

Release files / fipt-0.3.0.tar.gz

Download URL fipt-0.3.0.tar.gz
Size 12.9 kB
Tags Source
SHA-256 checksum
How to use checksums
e50ad0ccd8c1a5839b3d827c1c9204dcb1fc45d9c546f049a2c7260df49eae0f
BLAKE2b-256 checksum
How to use checksums
5c663ce79be3816afd2b54b3cc4e4dd89479906ddda6236fde44939625002e7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.4.2 requests/2.18.4 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.2

Release files / fipt-0.3.0-py3-none-any.whl

Download URL fipt-0.3.0-py3-none-any.whl
Size 14.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
92d69b46b142c446abee45236089d94cdf82e4e4d942b30db0194ffa17be9e06
BLAKE2b-256 checksum
How to use checksums
4aad675f2e82bd3ce6e6540fa9ddf9e9dfe94fb7598549417abd38d441129ba6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.4.2 requests/2.18.4 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.2

Security for fipt 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page