1.. highlight:: yaml
2
3.. _sec-yaml-species:
4
5*******
6Species
7*******
8
9The fields of a ``species`` entry are:
10
11``name``
12    String identifier used for the species. Required.
13
14``composition``
15    Mapping that specifies the elemental composition of the species,
16    e.g., ``{C: 1, H: 4}``. Required.
17
18``thermo``
19    Mapping containing the reference state thermodynamic model specification
20    and parameters. See :ref:`sec-yaml-species-thermo`.
21
22``equation-of-state``
23    A mapping or list of mappings. Each mapping contains an equation of state
24    model specification for the species, any parameters for that model, and any
25    parameters for interactions with other species. See
26    :ref:`sec-yaml-species-eos`. If this field is absent and a model is
27    required, the ``ideal-gas`` model is assumed.
28
29``transport``
30    Mapping containing the species transport model specification and
31    parameters. See :ref:`sec-yaml-species-transport`.
32
33``sites``
34    The number of sites occupied by a surface or edge species. Default is 1.
35
36``Debye-Huckel``
37    Additional model parameters used in the Debye-Hückel model. See
38    :ref:`sec-yaml-Debye-Huckel` for more information.
39
40
41.. _sec-yaml-species-thermo:
42
43Species thermo models
44=====================
45
46Fields of a species ``thermo`` entry used by all models are:
47
48``model``
49    String specifying the model to be used. Required. Supported model strings
50    are:
51
52    - :ref:`NASA7 <sec-yaml-nasa7>`
53    - :ref:`NASA9 <sec-yaml-nasa9>`
54    - :ref:`Shomate <sec-yaml-shomate>`
55    - :ref:`constant-cp <sec-yaml-constcp>`
56    - :ref:`piecewise-Gibbs <sec-yaml-piecewise-gibbs>`
57
58``reference-pressure``
59    The reference pressure at which the given thermodynamic properties apply.
60    Defaults to 1 atm.
61
62
63.. _sec-yaml-nasa7:
64
65NASA 7-coefficient polynomials
66------------------------------
67
68The polynomial form `described here <https://cantera.org/science/science-species.html#the-nasa-7-coefficient-polynomial-parameterization>`__,
69given for one or two temperature regions. Additional fields of a ``NASA7``
70thermo entry are:
71
72``temperature-ranges``
73    A list giving the temperature intervals on which the polynomials are valid.
74    For one temperature region, this list contains the minimum and maximum
75    temperatures for the polynomial. For two temperature regions, this list
76    contains the minimum, intermediate, and maximum temperatures.
77
78``data``
79    A list with one item per temperature region, where that item is a 7 item
80    list of polynomial coefficients. The temperature regions are arranged in
81    ascending order. Note that this is different from the standard CHEMKIN
82    formulation that uses two temperature regions listed in descending order.
83
84Example::
85
86    thermo:
87      model: NASA7
88      temperature-ranges: [300.0, 1000.0, 5000.0]
89      data:
90      - [3.298677, 0.0014082404, -3.963222e-06, 5.641515e-09,
91        -2.444854e-12, -1020.8999, 3.950372]
92      - [2.92664, 0.0014879768, -5.68476e-07, 1.0097038e-10,
93        -6.753351e-15, -922.7977, 5.980528]
94
95
96.. _sec-yaml-nasa9:
97
98NASA 9-coefficient polynomials
99------------------------------
100
101The polynomial form `described here <https://cantera.org/science/science-species.html#the-nasa-9-coefficient-polynomial-parameterization>`__,
102given for any number of temperature regions. Additional fields of a ``NASA9``
103thermo entry are:
104
105``temperature-ranges``
106    A list giving the temperature intervals on which the polynomials are valid.
107    This list contains the minimum temperature, the intermediate temperatures
108    between each set pair of regions, and the maximum temperature.
109
110``data``
111    A list with one item per temperature region, where that item is a 9 item
112    list of polynomial coefficients. The temperature regions are arranged in
113    ascending order.
114
115Example::
116
117    thermo:
118      model: NASA9
119      temperature-ranges: [200.00, 1000.00, 6000.0, 20000]
120      reference-pressure: 1 bar
121      data:
122      - [2.210371497E+04, -3.818461820E+02, 6.082738360E+00, -8.530914410E-03,
123         1.384646189E-05, -9.625793620E-09, 2.519705809E-12, 7.108460860E+02,
124         -1.076003744E+01]
125      - [5.877124060E+05, -2.239249073E+03, 6.066949220E+00, -6.139685500E-04,
126         1.491806679E-07,  -1.923105485E-11, 1.061954386E-15, 1.283210415E+04,
127         -1.586640027E+01]
128      - [8.310139160E+08, -6.420733540E+05, 2.020264635E+02, -3.065092046E-02,
129         2.486903333E-06, -9.705954110E-11, 1.437538881E-15, 4.938707040E+06,
130         -1.672099740E+03]
131
132.. _sec-yaml-shomate:
133
134Shomate polynomials
135-------------------
136
137The polynomial form `described here <https://cantera.org/science/science-species.html#the-shomate-parameterization>`__,
138given for one or two temperature regions. Additional fields of a ``Shomate``
139thermo entry are:
140
141``temperature-ranges``
142    A list giving the temperature intervals on which the polynomials are valid.
143    For one temperature region, this list contains the minimum and maximum
144    temperatures for the polynomial. For two temperature regions, this list
145    contains the minimum, intermediate, and maximum temperatures.
146
147``data``
148    A list with one item per temperature region, where that item is a 7 item
149    list of polynomial coefficients. The temperature regions are arranged in
150    ascending order.
151
152Example::
153
154    thermo:
155      model: Shomate
156      temperature-ranges: [298, 1300, 6000]
157      data:
158      - [25.56759, 6.096130, 4.054656, -2.671301, 0.131021,
159        -118.0089, 227.3665]
160      - [35.15070, 1.300095, -0.205921, 0.013550, -3.282780,
161        -127.8375, 231.7120]
162
163
164.. _sec-yaml-constcp:
165
166Constant heat capacity
167----------------------
168
169The constant heat capacity model `described here <https://cantera.org/science/science-species.html#constant-heat-capacity>`__.
170Additional fields of a ``constant-cp`` thermo entry are:
171
172``T0``
173    The reference temperature. Defaults to 298.15 K.
174
175``h0``
176    The molar enthalpy at the reference temperature. Defaults to 0.0.
177
178``s0``
179    The molar entropy at the reference temperature. Defaults to 0.0.
180
181``cp0``
182    The heat capacity at constant pressure. Defaults to 0.0.
183
184``T-min``
185    The minimum temperature at which this thermo data should be used.
186    Defaults to 0.0.
187
188``T-max``
189    The maximum temperature at which this thermo data should be used.
190    Defaults to infinity.
191
192Example::
193
194    thermo:
195      model: constant-cp
196      T0: 1000 K
197      h0: 9.22 kcal/mol
198      s0: -3.02 cal/mol/K
199      cp0: 5.95 cal/mol/K
200
201.. _sec-yaml-piecewise-gibbs:
202
203Piecewise Gibbs
204---------------
205
206A model based on piecewise interpolation of the Gibbs free energy as
207`described here <https://cantera.org/documentation/dev/doxygen/html/d4/d9e/classCantera_1_1Mu0Poly.html#details>`__
208Additional fields of a ``piecewise-Gibbs`` entry are:
209
210``h0``
211    The molar enthalpy at the reference temperature of 298.15 K. Defaults to
212    0.0.
213
214``dimensionless``
215    A boolean flag indicating whether the values of the Gibbs free energy are
216    given in a dimensionless form, i.e., divided by :math:`RT`. Defaults to
217    ``false``.
218
219``data``
220    A mapping of temperatures to values of the Gibbs free energy. The Gibbs free
221    energy can be either in molar units (if ``dimensionless`` is ``false``) or
222    nondimensionalized by the corresponding temperature (if ``dimensionless`` is
223    ``true``). A value must be provided at :math:`T^\circ = 298.15` K.
224
225``T-min``
226    The minimum temperature at which this thermo data should be used.
227    Defaults to 0.0.
228
229``T-max``
230    The maximum temperature at which this thermo data should be used.
231    Defaults to infinity.
232
233Example::
234
235    thermo:
236      model: piecewise-Gibbs
237      h0: -230.015 kJ/mol
238      dimensionless: true
239      data: {298.15: -91.50963, 333.15: -85.0}
240
241
242.. _sec-yaml-species-eos:
243
244Species equation of state models
245================================
246
247``model``
248    String specifying the model to be used. Required. Supported model strings
249    are:
250
251    - :ref:`constant-volume <sec-yaml-eos-constant-volume>`
252    - :ref:`density-temperature-polynomial <sec-yaml-eos-density-temperature-polynomial>`
253    - :ref:`HKFT <sec-yaml-eos-hkft>`
254    - :ref:`ideal-gas <sec-yaml-eos-ideal-gas>`
255    - :ref:`ions-from-neutral-molecule <sec-yaml-eos-ions-from-neutral>`
256    - :ref:`liquid-water-IAPWS95 <sec-yaml-eos-liquid-water-iapws95>`
257    - :ref:`molar-volume-temperature-polynomial <sec-yaml-eos-molar-volume-temperature-polynomial>`
258    - :ref:`Redlich-Kwong <sec-yaml-eos-redlich-kwong>`
259
260
261.. _sec-yaml-eos-constant-volume:
262
263Constant volume
264---------------
265
266A constant volume model as
267`described here <https://cantera.org/documentation/dev/doxygen/html/da/d33/classCantera_1_1PDSS__ConstVol.html#details>`__.
268
269Any one of the following may be specified:
270
271``molar-volume``
272    The molar volume of the species.
273
274``molar-density``
275    The molar density of the species.
276
277``density``
278    The mass density of the species.
279
280Example::
281
282    equation-of-state:
283      model: constant-volume
284      molar-volume: 1.3 cm^3/mol
285
286
287.. _sec-yaml-eos-density-temperature-polynomial:
288
289Density temperature polynomial
290------------------------------
291
292A model in which the density varies with temperature as
293`described here <https://cantera.org/documentation/dev/doxygen/html/d0/d2f/classCantera_1_1PDSS__SSVol.html#details>`__.
294
295Additional fields:
296
297``data``
298    Vector of 4 coefficients for a cubic polynomial in temperature
299
300Example::
301
302    equation-of-state:
303      model: density-temperature-polynomial
304      units: {mass: g, length: cm}
305      data: [0.536504, -1.04279e-4, 3.84825e-9, -5.2853e-12]
306
307
308.. _sec-yaml-eos-hkft:
309
310HKFT
311----
312
313The Helgeson-Kirkham-Flowers-Tanger model as
314`described here <https://cantera.org/documentation/dev/doxygen/html/d9/d18/classCantera_1_1PDSS__HKFT.html#details>`__.
315
316Additional fields:
317
318``h0``
319    Enthalpy of formation at the reference temperature and pressure
320
321``s0``
322    Entropy of formation at the reference temperature and pressure
323
324``a``
325    4-element vector containing the coefficients :math:`a_1, \ldots , a_4`
326
327``c``
328    2-element vector containing the coefficients :math:`c_1` and :math:`c_2`
329
330``omega``
331    The :math:`\omega` parameter at the reference temperature and pressure
332
333Example::
334
335    equation-of-state:
336      model: HKFT
337      h0: -57433. cal/gmol
338      s0: 13.96 cal/gmol/K
339      a: [0.1839 cal/gmol/bar, -228.5 cal/gmol,
340         3.256 cal*K/gmol/bar, -27260. cal*K/gmol]
341      c: [18.18 cal/gmol/K, -29810. cal*K/gmol]
342      omega: 33060 cal/gmol
343
344
345.. _sec-yaml-eos-ideal-gas:
346
347Ideal gas
348---------
349
350A species using the ideal gas equation of state, as
351`described here <https://cantera.org/documentation/dev/doxygen/html/df/d31/classCantera_1_1PDSS__IdealGas.html#details>`__.
352This model is the default if no ``equation-of-state`` section is included.
353
354
355.. _sec-yaml-eos-ions-from-neutral:
356
357Ions from neutral molecule
358--------------------------
359
360A species equation of state model used with the ``ions-from-neutral-molecule``
361phase model, as
362`described here <https://cantera.org/documentation/dev/doxygen/html/d5/df4/classCantera_1_1PDSS__IonsFromNeutral.html#details>`__.
363
364Additional fields:
365
366``special-species``
367    Boolean indicating whether the species is the "special species" in the
368    phase. Default is ``false``.
369
370``multipliers``
371    A dictionary mapping species to neutral species multiplier values.
372
373Example::
374
375    equation-of-state:
376      model: ions-from-neutral-molecule
377      multipliers: {KCl(l): 1.2}
378
379
380.. _sec-yaml-eos-liquid-water-iapws95:
381
382Liquid Water IAPWS95
383--------------------
384
385A detailed equation of state for liquid water as
386`described here <https://cantera.org/documentation/dev/doxygen/html/de/d64/classCantera_1_1PDSS__Water.html#details>`__.
387
388
389.. _sec-yaml-eos-molar-volume-temperature-polynomial:
390
391Molar volume temperature polynomial
392-----------------------------------
393
394A model in which the molar volume varies with temperature as
395`described here <https://cantera.org/documentation/dev/doxygen/html/d0/d2f/classCantera_1_1PDSS__SSVol.html#details>`__.
396
397Additional fields:
398
399``data``
400    Vector of 4 coefficients for a cubic polynomial in temperature
401
402
403.. _sec-yaml-eos-redlich-kwong:
404
405Redlich-Kwong
406-------------
407
408A model where species follow the Redlich-Kwong equation of state as
409`described here <https://cantera.org/documentation/dev/doxygen/html/d6/d29/classCantera_1_1RedlichKwongMFTP.html#details>`__.
410
411Additional fields:
412
413``a``
414    Pure-species ``a`` coefficient. Scalar or list of two values for a
415    temperature-dependent expression.
416
417``b``
418    Pure-species ``b`` coefficient.
419
420``binary-a``
421    Mapping where the keys are species and the values are the ``a``
422    coefficients for binary interactions between the two species.
423
424
425.. _sec-yaml-species-transport:
426
427Species transport models
428========================
429
430``model``
431    String specifying the model type. The only model that is specifically
432    handled is ``gas``.
433
434Gas transport
435-------------
436
437Species transport properties are a rare exception to Cantera's use of SI units,
438and use the units in which these properties are customarily reported. No
439conversions are supported.
440
441The additional fields of a ``gas`` transport entry are:
442
443``geometry``
444    A string specifying the geometry of the molecule. One of ``atom``,
445    ``linear``, or ``nonlinear``.
446
447``diameter``
448    The Lennard-Jones collision diameter [Å]
449
450``well-depth``
451    The Lennard-Jones well depth [K]
452
453``dipole``
454    The permanent dipole moment [Debye]. Default 0.0.
455
456``polarizability``
457    The dipole polarizability [Å^3]. Default 0.0.
458
459``rotational-relaxation``
460    The rotational relaxation collision number at 298 K [-]. Default 0.0.
461
462``acentric-factor``
463    Pitzer's acentric factor [-]. Default 0.0.
464
465``dispersion-coefficient``
466    The dispersion coefficient, normalized by :math:`e^2` [Å^5]. Default 0.0.
467
468``quadrupole-polarizability``
469    The quadrupole polarizability [Å^5]. Default 0.0.
470
471Example::
472
473    transport:
474      model: gas
475      geometry: linear
476      well-depth: 107.4
477      diameter: 3.458
478      polarizability: 1.6
479      rotational-relaxation: 3.8
480