Skip to main content

Package for manipulating Chemical Kinetics Experimental Data (ChemKED) files.

Project description


DOI Travis Build Status Appveyor Build status codecov Dependency Status Code of Conduct License Anaconda-Server Badge

PyKED is a Python-based software package for validating and interacting with ChemKED (Chemical Kinetics Experimental Data format) files that describe fundamental experimental measurements of combustion phenomena.

An installation guide, usage examples, and API docs are provided in the online documentation:

Code of Conduct

In order to have a more open and welcoming community, PyKED adheres to a code of conduct adapted from the Contributor Covenant code of conduct. The code of conduct for PyKED is available in the GitHub Repository in the file.

Please adhere to this code of conduct in any interactions you have in the PyKED community. It is strictly enforced on all official PyKED repositories, websites, and resources. If you encounter someone violating these terms, please let a maintainer ([@kyleniemeyer](, [@bryanwweber](, or via email at know and we will address it as soon as possible.


PyKED is released under the BSD-3 clause license, see LICENSE for details.

If you use this package as part of a scholarly work, please refer to for guidance on citing this resource.

Change Log

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.





0.4.1 - 2018-03-09


  • Documentation for old versions is available on the Releases page of the docs



  • Doctr deploys on tags now

  • Syntax changes for example files in the documentation

0.4.0 - 2018-03-07


  • New method to instantiate a ChemKED class directly from a ReSpecTh XML file

  • The __version__ attribute can be imported from the top-level module

  • New time-histories field to replace the volume-history. This field allows specification of several other relevant parameters besides volume.

  • Added rcm-data field and moved compressed-temperature, compressed-pressure, and compression-time to this field

  • Added stroke, clearance, and compression-ratio to the rcm-data field

  • Added conda-forge instructions to the installation documentation

  • Allow alpha versions to be specified during testing


  • Crossref lookups via Habanero now comply with the “be-nice” policy

  • Removed UnboundLocalError from error processing for reference validation

  • Switch to flake8 for style checking in CI services

  • file-author field is now a list called file-authors

  • ReSpecTh->ChemKED converter function now returns a dictionary, while the command-line entry points write out files

  • Require Habanero>=0.6.0 to support the mailto argument

  • Require pytest>=3.2.0 to support the pytest.mark.filterwarnings decorator

  • Deprecate the volume-history field in the ChemKED YAML file and replace with time-histories

  • ORCID lookups are now done by a function in the local module, removing an external dependency

  • Composition in a DataPoint is now stored in a dictionary of namedtuples (called Composition) rather than a list of dictionaries


  • Crossref lookups in the converters use the common API instance from validation

  • d/dt max extrapolated ignition type can be converted to/from ReSpecTh

  • Tests now check for appropriate warnings and ignore unrelated warnings

0.3.0 - 2017-10-09


  • New extrapolated ignition type, where the maximum slope is extrapolated to the baseline

  • Tests that the composition type is stored properly in the DataPoint

  • species_conversion dictionary can be passed to the get_cantera_mole_fraction and get_cantera_mass_fraction functions to change the name of a species in the output string

  • Jupyter Notebook examples of usage


  • Removes elemental-composition as a synonym for atomic-composition


  • Fixes test_incorrect_doi_period_at_end docstring


  • Conda builds are now noarch - one package for all Pythons!

  • pip installs now require Python compatible with 3.5

  • Appveyor runs a single job and no longer builds conda packages

  • Remove journal from required fields in the reference

0.2.1 - 2017-08-31


  • Fixes Cantera convenience output functions

0.2.0 - 2017-08-10


  • Adds ChemKED method to write new file, with tests

  • Adds converters to and from ReSpecTh files, with tests

  • Adds command-line entry points for converter scripts

  • Add docs for converters


  • ignition_type dictionary in DataPoint is now deepcopyd

0.1.6 - 2017-07-17


  • Added logo files to repo

  • Added first_stage_ignition_delay, compressed_pressure, and compressed_temperature as properties


  • Added Zenodo collection DOI to

0.1.5 - 2017-05-22


  • Schema can now be split into multiple files via !include directive


  • Remove Python 2.7 classifier from

  • DataFrame output for datapoints lists with multiple compositions (i.e., a species not in all compositions)


  • Improved tests with no internet

  • Improved tests with no warning

0.1.4 - 2017-04-21


  • Add skip_validation keyword argument to the ChemKED initializer


  • Python 2.7 support is removed again

0.1.3 - 2017-04-13


  • Add back Python 2.7 support

  • Add Appveyor builds for Windows conda packages

0.1.2 - 2017-04-13


  • Tests of the composition uncertainty in the DataPoint

  • Tests of the values in the references

  • Packaging for conda and PyPI

  • Add Anaconda-Server badge to README


  • All fixed DOIs in are now specified with placeholders

0.1.1 - 2017-04-02


  • Added Zenodo DOI badge to README

  • Added CITATION file, and mention of license to README


  • Fixed chemked-version bug in schema introduced in 0.1.0

0.1.0 - 2017-04-02


Citation of PyKED


To cite PyKED in a scholarly article, please use

K. E. Niemeyer and B. W. Weber. (2018) PyKED v0.4.1 [software]. Zenodo.

A BibTeX entry for LaTeX users is

    author = {Kyle E Niemeyer and Bryan W Weber},
    year = 2017,
    title = {PyKED v0.4.1},
    doi = {10.5281/zenodo.597935},
    url = {},

In both cases, please update the entry with the version used. The DOI for the latest version is given in the badge at the top, or alternately will take you to the latest version (and generally represents all versions). If you would like to cite a specific, older version, the DOIs for each release are:

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

pyked-0.4.1.tar.gz (62.8 kB view hashes)

Uploaded source

Built Distribution

pyked-0.4.1-py3-none-any.whl (74.2 kB view hashes)

Uploaded py3

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