Cantera  2.3.0
Go to the documentation of this file.
1 /**
2  * @file VPSSMgr_IdealGas.h
3  * Declaration file for a derived class that handles the calculation
4  * of standard state thermo properties for
5  * a set of species which have an Ideal Gas dependence
6  * (see \ref mgrpdssthermocalc and
7  * class \link Cantera::VPSSMgr_IdealGas VPSSMgr_IdealGas\endlink).
8  */
10 // This file is part of Cantera. See License.txt in the top-level directory or
11 // at for license and copyright information.
16 #include "VPSSMgr.h"
18 namespace Cantera
19 {
20 //! A VPSSMgr where all species in the phase obey an ideal gas equation of state
21 /**
22  * @attention This class currently does not have any test cases or examples. Its
23  * implementation may be incomplete, and future changes to Cantera may
24  * unexpectedly cause this class to stop working. If you use this class,
25  * please consider contributing examples or test cases. In the absence of
26  * new tests or examples, this class may be deprecated and removed in a
27  * future version of Cantera. See
28  * for additional information.
29  */
30 class VPSSMgr_IdealGas : public VPSSMgr
31 {
32 public:
33  //! Basic constructor that initializes the object
34  /*!
35  * @param vp_ptr Pointer to the owning ThermoPhase
36  * @param spth Species thermo pointer.
37  */
40  VPSSMgr_IdealGas(const VPSSMgr_IdealGas& right);
41  VPSSMgr_IdealGas& operator=(const VPSSMgr_IdealGas& right);
42  virtual VPSSMgr* duplMyselfAsVPSSMgr() const;
44  /*! @name Properties of the Standard State of the Species in the Solution
45  * Within VPStandardStateTP, these properties are calculated via a common
46  * routine, _updateStandardStateThermo(), which must be overloaded in
47  * inherited objects. The values are cached within this object, and are
48  * not recalculated unless the temperature or pressure changes.
49  */
50  //@{
51  virtual void getIntEnergy_RT(doublereal* urt) const;
52  virtual void getStandardVolumes(doublereal* vol) const;
53  //@}
55 protected:
56  virtual void _updateStandardStateThermo();
58 public:
59  //! Create and install an ideal gas standard state manager for one species
60  //! within this object
61  /*!
62  * This function sets up the internal data within this object for
63  * handling the calculation of the standard state for the species.
64  *
65  * - It registers the species with the MultiSpeciesThermo object for the
66  * containing VPStandardStateTP phase.
67  * - It also creates a PDSS object, which basically contains a
68  * duplication of some of this information and returns a pointer to
69  * the new object.
70  * .
71  * @param k Species index within the phase
72  * @param speciesNode Reference to the species node in the XML tree
73  * @param phaseNode_ptr Pointer to the phase node in the XML tree
74  * @return a pointer to the a newly created PDSS object containing the
75  * parameterization
76  */
77  virtual PDSS* createInstallPDSS(size_t k, const XML_Node& speciesNode,
78  const XML_Node* const phaseNode_ptr);
80  virtual PDSS_enumType reportPDSSType(int index = -1) const;
81  virtual VPSSMgr_enumType reportVPSSMgrType() const;
82 };
83 }
85 #endif
virtual void _updateStandardStateThermo()
Updates the standard state thermodynamic functions at the current T and P of the solution.
Virtual base class for the classes that manage the calculation of standard state properties for all t...
Definition: VPSSMgr.h:228
Declaration file for a virtual base class that manages the calculation of standard state properties f...
virtual PDSS * createInstallPDSS(size_t k, const XML_Node &speciesNode, const XML_Node *const phaseNode_ptr)
Create and install an ideal gas standard state manager for one species within this object...
virtual void getStandardVolumes(doublereal *vol) const
Get the molar volumes of each species in their standard states at the current T and P of the solution...
Class XML_Node is a tree-based representation of the contents of an XML file.
Definition: xml.h:97
virtual VPSSMgr_enumType reportVPSSMgrType() const
This utility function reports the type of manager for the calculation of ss properties.
enum for VPSSMgr types that are responsible for calculating the species standard state and reference-...
Definition: mix_defs.h:119
virtual void getIntEnergy_RT(doublereal *urt) const
Returns the vector of nondimensional internal Energies of the standard state at the current temperatu...
Types of PDSS's.
Definition: mix_defs.h:105
This is a filter class for ThermoPhase that implements some prepatory steps for efficiently handling ...
virtual VPSSMgr * duplMyselfAsVPSSMgr() const
Duplication routine for objects which derive from VPSSMgr.
Virtual base class for a species with a pressure dependent standard state.
Definition: PDSS.h:176
A VPSSMgr where all species in the phase obey an ideal gas equation of state.
virtual PDSS_enumType reportPDSSType(int index=-1) const
This utility function reports the type of parameterization used for the species with index number ind...
A species thermodynamic property manager for a phase.
Namespace for the Cantera kernel.
Definition: application.cpp:29
VPSSMgr_IdealGas(VPStandardStateTP *vp_ptr, MultiSpeciesThermo *spth)
Basic constructor that initializes the object.