Skip to content

Latest commit

 

History

History
57 lines (37 loc) · 1.59 KB

README.md

File metadata and controls

57 lines (37 loc) · 1.59 KB

pykk

Downloads License PyPI version shields.io Test

Python library for calculating Kramers-Kronig transform written in Rust.

Requirements

  • Python >=3.9,< 3.13

Install

You can install with pip command.

$ pip install pykk

Or build from the source.

build

Use maturin for building. If you use poetry, you can build by the following commands.

$ poetry install
$ poetry run maturin build --release

You can find .whl file in $PROJECT_ROOT/target/wheels. Install it by pip command.

How to use

This library has two functions for calculating Kramers-Kronig transform, the transformation from real to imaginary part and vice versa.

import pykk

energy = [1, 2, 3, 4]  # the values MUST have the same intervals
real = [1, 2, 3, 4]

imag = pykk.real2imag(energy, real)  # real -> imaginary part
real_kk = pykk.imag2real(energy, imag)  # imaginary -> real part

Performance

Compare the performance with the code implemented by Python. The length of the data is ~ 1000 data points.

Python 3.8 pykk
37 s 0.4 ms

License

This application contains artifacts distributed under the license of the Apache License, Version 2.0.