Sitelet https://github.com/PPeitsch/pkynetics
Skip to content
PPeitschPublic

About

A Python library for thermal analysis and reaction kinetics. Supports DSC, TGA, and dilatometry with tools for model-fitting (JMAK, Kissinger), model-free (Friedman, KAS, OFW) analysis, data processing, and visualization.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

11 stars

Watchers

2 watching

Forks

Repository files navigation

Pkynetics

PyPI version Python Versions Documentation Status Tests Coverage License Contributor Covenant

A Python library for thermal analysis kinetic methods, providing tools for data preprocessing, kinetic analysis, and result visualization.

Features

Data Import

  • DSC and TGA exports from TA Instruments, Mettler Toledo, Netzsch and Setaram
  • Dilatometry data
  • Flexible custom importer for non-standard formats
  • Automatic manufacturer detection
  • Comprehensive data validation

Analysis Methods

  • Model-fitting methods:
    • Johnson-Mehl-Avrami-Kolmogorov (JMAK)
    • Kissinger
    • Coats-Redfern
    • Freeman-Carroll
    • Horowitz-Metzger
  • Model-Free methods:
    • Friedman method
    • Kissinger-Akahira-Sunose (KAS)
    • Ozawa-Flynn-Wall (OFW)
  • Dilatometry analysis:
    • Transformed fraction by the lever rule or the tangent method
    • Five detectors for the transformation limits (derivative, offset, double_tangent, second_derivative, statistical), chosen with detection=
    • Automatic baseline margin (margin="auto")
    • DilatometryAnalyzer, which holds the analysis settings in one place
  • DSC analysis: baselines, peaks, thermal events and heat capacity
  • Data preprocessing, with smoothing by Savitzky-Golay, moving average or LOWESS
  • Synthetic data generation for testing the kinetic methods
  • Error handling and validation

Visualization

  • Comprehensive plotting functions for:
    • Kinetic analysis results
    • Dilatometry data
    • Transformation analysis
    • Custom plot styling options

Installation

Pkynetics requires Python 3.10 or later. Install using pip:

pip install pkynetics

For development installation:

git clone https://github.com/PPeitsch/pkynetics.git
cd pkynetics
pip install -e .[dev]

For detailed installation instructions and requirements, see our Installation Guide.

Quick start

from pkynetics.data import load_dilatometry_heating
from pkynetics.technique_analysis import DilatometryAnalyzer

data = load_dilatometry_heating()  # Zircaloy-4 heating run, fetched on first use

result = DilatometryAnalyzer().analyze(
    data["temperature"], data["relative_change"], method="lever"
)
print(result["start_temperature"], result["end_temperature"])

Example data

Since 0.7.0 the example data does not ship with the package. pkynetics.data downloads each file on first use from pkynetics-data, verifies it by SHA256 and caches it on disk. Use pkynetics.data.fetch(name) for a path, or one of the loaders (load_dilatometry_heating, load_dsc_setaram, load_cp_three_step, …) for the data already imported. To work offline, point PKYNETICS_DATA_DIR at a directory holding the files. See Example data.

Documentation

Complete documentation is available at pkynetics.readthedocs.io, including:

  • Detailed API reference
  • Usage examples
  • Method descriptions
  • Best practices

Contributing

We welcome contributions! Please read our:

Security

For vulnerability reports, please review our Security Policy.

Change Log

See CHANGELOG.md for a list of changes and version updates.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Citing Pkynetics

If you use Pkynetics in your research, please cite it as:

@software{pkynetics,
  author = {Pablo Peitsch},
  title = {Pkynetics: A Python Library for Thermal Analysis Kinetic Methods},
  year = {2026},
  version = {0.7.0},
  publisher = {GitHub},
  url = {https://github.com/PPeitsch/pkynetics}
}

About

A Python library for thermal analysis and reaction kinetics. Supports DSC, TGA, and dilatometry with tools for model-fitting (JMAK, Kissinger), model-free (Friedman, KAS, OFW) analysis, data processing, and visualization.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

11 stars

Watchers

2 watching

Forks

Releases

Used by

Contributors

Languages