Schema Documentation¶
This document contains the complete specification for the ChemKED schema. The schema is broken into
several files for ease of maintenance. These files are combined with the custom !include
directive that has been added for this purpose. Note that !include should only be used in the
main schema file (chemked_schema.yaml) and must appear at the top of the file. The !include
directive is not supported in any actual ChemKED files.
Examples of constructing a ChemKED format file, as well as examples of files themselves, are located in Creating ChemKED files. The sections laid out in this file roughly correspond to the sections discussed in the tutorial.
Meta Keys¶
The keys in this section encode the “meta” information about the ChemKED file. All of the keys in this section are required in every ChemKED file.
chemked-version: string, requiredA string with the version of the ChemKED schema that this file targets.
datapoints: sequence, requiredA sequence of mappings representing the data encoded in the file. Each element of the sequence must conform to the schema described in Ignition Delay Keys (for now).
file-version: integer, requiredAn integer that represents the version of the file. Should be incremented every time a change is committed to a file in the database.
file-authors: sequence, requiredThe author(s) of the ChemKED file, which may be different from the authors of the referenced work. Elements of the sequence must be mappings that conform to the author schema.
Reference Keys¶
The keys in this section are related to the reference for the experiment, the article where the data is published, and the apparatus used to conduct the experiment. All the top-level keys in this section are required, although some of the sub-keys are optional.
apparatus: mapping, requiredThis mapping provides information about the apparatus used to conduct the experiments. Fields:
kind: string, requiredMust be one of
shock tubeorrapid compression machine. Values are case-sensitive.
institution: string, optionalThe institution where the experimental apparatus is located
facility: string, optionalA unique name or identifier for the apparatus, if the institution has several that are similar
experiment-type: string, requiredThe type of experiment encoded in this file. Currently, the only allowed value is
ignition delay, which is case sensitive.
reference: mapping, requiredThe reference contains the information about the article where the data in the file are published. Fields:
journal: string, optionalThe journal where the data are published
year: integer, requiredThe year of publication. Must be greater than 1600.
authors: sequence, requiredA sequence of all the authors of the article, where the elements of the sequence are mappings that must conform to the author type.
volume: integer, optionalThe volume of the publication. Must be greater than 0.
doi: string, optionalA DOI, if available.
detail: string, optionalA description of where in the article the data in this file are from, for instance, a figure or table number.
pages: string, optionalThe pages in the journal where the article is published (not the pages where the data are located, that would go in the
detailfield.)
Common Property Keys¶
The keys in this section can be specified as sub-keys of the the common-properties top-level
key, and reused in many different data points within a single ChemKED file. All of the keys in the
common-properties section are optional, although some of their values may be required in a
particular experiment type.
pressure-rise: sequence, optionalHas the same format as pressure-rise
pressure: sequence, optionalThe pressure of the experiment, with dimensions of mass per length per time squared. Must conform to value-unit-optional
ignition-type: mapping, optionalHas the same schema as ignition-type
composition: mapping, optionalThis mapping provides the specification of the initial composition of the mixture. Fields:
kind: string, requiredThe
kindcan bemole fraction,mass fraction, ormole percent
species: sequence, requiredThe elements of this sequence specify the species and their amounts in the mixture. Each element of the sequence is a mapping with the following keys:
species-name: string, requiredThe name of the species
InChI: string, required, excludesSMILES,atomic-compositionThe InChI string for the species
SMILES: string, required, excludesInChI,atomic-compositionThe SMILES string for the species
atomic-composition: sequence, required, excludesInChI,SMILESA sequence of mappings representing the atoms that make up the species. Useful for species without SMILES or InChI representations, such as real hydrocarbon fuels. Each element of the sequence is a mapping with the following keys:
element: string, requiredThe name of the element
amount: float, required, must be greater than 0.0The amount of the element
amount: sequence, requiredA sequence representing the amount of the species. Must conform to either value-with-uncertainty or value-without-uncertainty.
Ignition Delay Keys¶
This section details the schema for an autoignition delay measurement. This is one of the options for the datapoints schema.
temperature: sequence, requiredThe temperature of the experiment, with dimensions of temperature. Must conform to value-unit-required
composition: mapping, requiredThe composition of the experiment. Must conform to composition
pressure: sequence, requiredThe pressure of the experiment, with dimensions of mass per length per time squared. Must conform to value-unit-required
ignition-type: mapping, requiredA mapping describing how the ignition delay is defined in the experiments. Fields:
target: string, requiredDescribes the target measurement to define ignition. Can be one of:
temperaturepressureOHOH*CHCH*
type: string, requiredDescribes the type of ignition delay measurement. Can be one of:
d/dt max: maximum of the time derivative of thetargetmax: maximum of thetarget1/2 max: half-maximum of thetargetmin: minimum of thetargetd/dt max extrapolated: maximum slope of the target extrapolated to the baseline
ignition-delay: sequence, requiredThe ignition delay measurement, with dimensions of time. Must conform to value-unit-required
first-stage-ignition-delay: sequence, optionalIf two stages of ignition are present, this is the value of the first stage of ignition, with dimensions of time. Must conform to value-unit-optional
pressure-rise: sequence, optionalThe pressure rise after the passage of the reflected shock, with dimensions of inverse time. Must conform to value-unit-optional
equivalence-ratio: float, optionalThe equivalence ratio of the experiment, dimensionless. Minimum value is 0.0.
rcm-data: mapping, optionalData related to rapid compression machine (RCM) experiments. The keys of the mapping are detailed in the Rapid Compression Machine Data Keys section.
time-histories: sequence, optionalA sequence of mappings conforming to the time-history schema. Used to specify a time-varying history of values during an experiment.
Rapid Compression Machine Data Keys¶
This section details the keys specific to rapid compression machine (RCM) experiments, which are subkeys of the rcm-data key.
compression-time: sequence, optionalThe time taken during the compression stroke of a rapid compression machine experiment, with dimensions of time. Must conform to value-unit-optional
compressed-pressure: sequence, optionalThe pressure at the end of the compression stroke for a rapid compression machine experiment, with dimensions of mass per length per time squared. Must conform to value-unit-optional
compressed-temperature: sequence, optionalThe temperature at the end of the compression stroke for a rapid compression machine experiment, with dimensions of temperature. Must conform to value-unit-optional
compression-ratio: sequence, optionalThe dimensionless volumetric compression ratio for a rapid compression machine experiment. Must conform to value-unit-optional
stroke: sequence, optionalThe length of the stroke in a rapid compression machine experiment, with dimensions of length. Must conform to value-unit-optional
clearance: sequence, optionalThe clearance from the piston face to the end wall of the reaction chamber at the end of compression, with dimensions of length. Must conform to value-unit-optional
Schema-Only Keys¶
The schema files contain several keys that are used purely as references within the schema and should not be used in actual ChemKED files. These keys are documented in this section.
author: mappingInformation about a single author, used in several contexts. Fields:
name: string, requiredThe author’s full name
ORCID: string, optionalThe author’s ORCID identifier. Validated to be a valid ORCID and that the
namematches
value-with-uncertainty: sequenceA combination of a value and unit with uncertainty. Sequence elements:
- 0: string, required
The first element of the sequence should be the value and its associated units. The units are validated to have appropriate dimensions for the particular quantity under consideration
- 1: mapping, optional
The second element of the sequence should be a mapping representing the uncertainty. Fields:
uncertainty-type: string, requiredThe type of uncertainty. Options are
absoluteorrelative.
uncertainty: string, required, excludesupper-uncertaintyandlower-uncertaintyThe value of the uncertainty. If
uncertainty-typeisabsolute, must include units whose dimensions match the units of the value in the first element of the sequence.
upper-uncertainty: string, required, excludesuncertainty, requireslower-uncertaintyThe upper value of an asymmetrical uncertainty. Due to limitations in the Python library, asymmetrical uncertainties aren’t supported in PyKED, so the larger of
upper-uncertaintyandlower-uncertaintyis used.
lower-uncertainty: string, required, excludesuncertainty, requiresupper-uncertaintyThe lower value of an asymmetrical uncertainty. Due to limitations in the Python library, asymmetrical uncertainties aren’t supported in PyKED, so the larger of
upper-uncertaintyandlower-uncertaintyis used.
value-without-uncertainty: sequenceA combination of a value and unit without uncertainty. Sequence elements:
- 0: string, required
The first element of the sequence should be the value and its associated units. The units are validated to have appropriate dimensions for the particular quantity under consideration
value-unit-required: sequence, requiredA sequence conforming to either value-with-uncertainty or value-without-uncertainty. Must be included in the ChemKED file.
value-unit-optional: sequence, optionalA sequence conforming to either value-with-uncertainty or value-without-uncertainty. May or may not be included in the ChemKED file.
time-history: mapping, optionalSpecify the time history of a quantity during an experiment. Fields:
quantity: mapping, requiredA mapping describing the volume in the history. Fields:
units: string, requiredThe units of the volume, with dimensions of length cubed
column: integer, requiredThe 0-based index of the column containing the volume information in the
valuesarray. Must be 0 or 1
time: mapping, requiredA mapping describing the time in the history. Fields:
units: string, requiredThe units of the time, with dimensions of time
column: integer, requiredThe 0-based index of the column containing the time information in the
valuesarray. Must be 0 or 1
uncertainty: mapping, optionalThe uncertainty of the values in the
quantitycolumn. Can be specified either globally by a single value in the sequence or by specifying a column that must be present in the values array. Mapping keys:type: string, requiredEither
absoluteorrelativeto indicate the type of uncertainty
value: string, optionalA global value for the uncertainty applied to all points in the
valuesarray, specified as a string with units. Either this key must be present, or thecolumnandunitskeys must be present
column: integer, optionalThe column in the
valuesarray containing the uncertainty of each point. Either this key and theunitskey must be specified, or thevaluekey must be specified.
units: string, optionalThe units of the uncertainty in the
columnarray. IF thetypeis relative, this should bedimensionless. Either this key and thecolumnkey must be specified, or thevaluekey must be specified.
values: sequence or mapping, requiredMust be a sequence or mapping. If a mapping, the only key should be
filenamewhose value should be the filename of a comma-separated value file containing the values for the history. If a sequence, should be a sequence of sequences describing the values of the volume at the time points. Can be entered in any supported syntax, including:- [0.0, 0.0] - [1.0, 1.0] - - 2.0 - 2.0 - - 3.0 - 3.0