Cantera  2.5.1
SpeciesThermoFactory.h
Go to the documentation of this file.
1 /**
2  * @file SpeciesThermoFactory.h
3  * Header for factory functions to build instances of classes that manage the
4  * standard-state thermodynamic properties of a set of species
5  * (see \ref spthermo);
6  */
7 
8 // This file is part of Cantera. See License.txt in the top-level directory or
9 // at https://cantera.org/license.txt for license and copyright information.
10 
11 #ifndef SPECIESTHERMO_FACTORY_H
12 #define SPECIESTHERMO_FACTORY_H
13 
15 
16 namespace Cantera
17 {
18 
19 class XML_Node;
20 class AnyMap;
21 
22 //! Create a new SpeciesThermoInterpType object given a corresponding constant.
23 /*!
24  * @param type A constant specifying the type to be created
25  * @param tlow The lowest temperature at which the parameterization is valid
26  * @param thigh The highest temperature at which the parameterization is valid
27  * @param pref The reference pressure for the parameterization
28  * @param coeffs The array of coefficients for the parameterization
29  * @returns The pointer to the newly allocated SpeciesThermoInterpType object
30  */
31 SpeciesThermoInterpType* newSpeciesThermoInterpType(int type, double tlow,
32  double thigh, double pref, const double* coeffs);
33 
34 //! Create a new SpeciesThermoInterpType object given a string
35 /*!
36  * @param type String name for the species thermo type
37  * @param tlow The lowest temperature at which the parameterization is valid
38  * @param thigh The highest temperature at which the parameterization is valid
39  * @param pref The reference pressure for the parameterization
40  * @param coeffs The array of coefficients for the parameterization
41  * @returns the pointer to the newly allocated SpeciesThermoInterpType object
42  */
43 SpeciesThermoInterpType* newSpeciesThermoInterpType(const std::string& type,
44  double tlow, double thigh, double pref, const double* coeffs);
45 
46 //! Create a new SpeciesThermoInterpType object from XML_Node
47 /*!
48  * @param thermoNode 'thermo' XML_Node (child of the 'species' node) with child
49  * nodes representing parameterizations for one or more temperature ranges
50  * @returns the pointer to the newly allocated SpeciesThermoInterpType object
51  *
52  * @deprecated The XML input format is deprecated and will be removed in
53  * Cantera 3.0.
54  */
55 SpeciesThermoInterpType* newSpeciesThermoInterpType(const XML_Node& thermoNode);
56 
57 //! Create a new SpeciesThermoInterpType object using the specified parameters
58 /*!
59  * @param thermo_node An AnyMap specifying the model type (e.g. "NASA") and any
60  * model parameters necessary to instantiate the object
61  */
62 unique_ptr<SpeciesThermoInterpType> newSpeciesThermo(const AnyMap& thermo_node);
63 
64 }
65 
66 #endif
Pure Virtual Base class for individual species reference state thermodynamic managers and text for th...
Namespace for the Cantera kernel.
Definition: AnyMap.cpp:264
unique_ptr< SpeciesThermoInterpType > newSpeciesThermo(const AnyMap &node)
Create a new SpeciesThermoInterpType object using the specified parameters.
SpeciesThermoInterpType * newSpeciesThermoInterpType(int type, double tlow, double thigh, double pref, const double *coeffs)
Create a new SpeciesThermoInterpType object given a corresponding constant.