Cantera 2.6.0
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
16namespace Cantera
17{
18
19class XML_Node;
20class 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 */
31SpeciesThermoInterpType* 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 */
43SpeciesThermoInterpType* 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 */
55SpeciesThermoInterpType* 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 (for example, "NASA") and any
60 * model parameters necessary to instantiate the object
61 */
62unique_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.h:29
unique_ptr< SpeciesThermoInterpType > newSpeciesThermo(const AnyMap &thermo_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.