Skip to main content

A package to make isoconversional computations for non-isothermal kinetics

Project description

pICNIK

pICNIK is a package for isoconversional computations for non-isothermal kinetcis.
The package has an object oriented interface with two classes: DataExtraction and ActivationEnergy, with the purpose of managing the experimental data and computing activation energies ($E_{\alpha}$) with the next isoconversional methods:

  • Ozawa-Flynn-Wall (OFW)
    $\ln{\left(\beta_{i}\right)} = \left[\ln{\left(\frac{A_{\alpha}E_{\alpha}}{g(\alpha)R}\right)}-5.331\right]-1.052\frac{E_{\alpha}}{RT_{\alpha,i}}}$

  • Kissinger-Akahira-Sunose (KAS)\ $\ln{\left(\frac{\beta_{i}}{T_{\alpha ,i}^{2}}\right)}\approx\ln{\left[\frac{A_\alpha R}{E_\alpha g(\alpha)}\right]}-\frac{E_\alpha}{RT_{\alpha ,i}}$

  • Friedman (Fr)
    $\ln{\left(\frac{d\alpha}{dt}\right){\alpha ,i}} = \ln{\left[A{\alpha}f\left(\alpha\right)\right]} - \frac{E_{\alpha}}{RT_{\alpha ,i}}$

  • Vyazovkin (Vy)
    $\phi=n(n-1) - \sum_{i}^{n} \sum_{j \neq i}^{n-1} \frac{\beta_j I(E_{\alpha},T_{\alpha ,i})}{\beta_i I(E_{\alpha},T_{\alpha ,j})}$

  • Advanced method of Vyazovkin (aVy)
    $\phi=n(n-1) - \sum_{i}^{n} \sum_{j \neq i}^{n-1} \frac{\beta_j J(E_{\Delta\alpha},T_{\Delta\alpha ,i})}{\beta_i J(E_{\Delta\alpha},T_{\Delta\alpha ,j})}$

Installation

picnik can be installed from PyPi with pip: $ pip install picnik

DataExtractioin class

It has methods to open the .csv files containing the thermogravimetric data as pandas DataFrames for the experimental data, computing and adding the conversion for the process ($\alpha$) and the conversion rate ($d\alpha/dt$) as columns in the DataFrame.
The class also has methods for creating isoconversional DataFrames of time, temperature, conversion rates (for the OFW, KAS, Fr and Vy methods) and also "advanced" DataFrames of time and temperature (for the aVy method).
Example:

import picnik as pnk

files = ["HR_1.csv","HR_2.csv",...,"HR_n.csv"]
xtr = pnk.DataExtraction()
xtr.set_data(files)
xtr.data_extraction()
xtr.isoconversional()
xtr.adv_isoconversional()

The DataFrames are stored as attributes of the xtr object

ActivationEnergy class

This class has methods to compute the activation energies with the DataFrames created with the xtr object along with its associated error. The Fr(),OFW(),KAS() methods return a tuple of three, two and two elements respectively. The first element of the tuples is a numpy array containing the isoconversional activation energies. The second element contains the associated error within a 95% confidence interval. The third element in the case of the Fr() method is a numpy array containing the intercept of the Friedman method. The Vy() and aVy() only return a numpy array of isoconversional activation energies, the error associated to this methods are obtained with the Vy_error() and aVy_error() methods Example:

ace = pnk.ActivationEnergy(xtr.Beta,
                           xtr.TempIsoDF,
                           xtr.diffIsoDF,
                           xtr.TempAdvIsoDF,
                           xtr.timeAdvIsoDF)
E_Fr, E_OFW, E_KAS, E_Vy, E_aVy = ace.Fr(), ace.OFW(), ace.KAS(), ace.Vy(), ace.aVy()
Vy_e, aVy_e = ace.Vy_error(), ace.aVy_error()

The constructor of this class needs five arguments, a list/array/tuple of Temperature rates, and four DataFrames: one of temperature, one of convertsion rates and two "advanced" one of temperature and the other of time.

Saving results

The DataExtractionclass also has a method to export the results as .csv or .xlsx files:

xtr.save_df(E_Fr = E_Fr[0], 
            E_OFW = E_OFW[0], 
            E_KAS = E_KAS[0], 
            E_Vy = E_Vy, 
            E_aVy = E_aVy,
            file_t="xlsx" )

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

PICNIK-0.1.0.tar.gz (13.9 kB view details)

Uploaded Source

Built Distribution

PICNIK-0.1.0-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file PICNIK-0.1.0.tar.gz.

File metadata

  • Download URL: PICNIK-0.1.0.tar.gz
  • Upload date:
  • Size: 13.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.8 CPython/3.8.10 Linux/5.4.0-81-generic

File hashes

Hashes for PICNIK-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b3d2bb60d80303869204abe3015ca27eb56c0cd2a791af8b59a47cf82c3afc9c
MD5 c0bd732c98249e40c8f513c9eef0ce31
BLAKE2b-256 510b829183970739ab2a4a9286c728f1b2319f5d409fd26cbc7fe5efb2241f6c

See more details on using hashes here.

File details

Details for the file PICNIK-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: PICNIK-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.8 CPython/3.8.10 Linux/5.4.0-81-generic

File hashes

Hashes for PICNIK-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1d10d3d5043cf5cd6a43ef6dd4bb22e00480b1962bca5270d69b80cf3834dbdf
MD5 c1f0cb82d9081f0b5dcfa998b651da08
BLAKE2b-256 9090ca667e9ad6353e74c3909023b92bb8c66a3e4edd505df55be17e965962bb

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