This species thermo manager requires that all species have the same parameterization. More...
#include <SpeciesThermoMgr.h>


Public Member Functions | |
| SpeciesThermo1 () | |
| base constructor | |
| virtual | ~SpeciesThermo1 () |
| destructor | |
| SpeciesThermo1 (const SpeciesThermo1 &right) | |
| Copy Constructor. | |
| SpeciesThermo1 & | operator= (const SpeciesThermo1 &right) |
| Asignment Operator. | |
| virtual SpeciesThermo * | duplMyselfAsSpeciesThermo () const |
| Duplication routine for objects which inherit from SpeciesThermo. | |
| virtual void | install (std::string name, int sp, int type, const vector_fp &c) |
| Install one species into this Species Thermo Manager. | |
| virtual void | update (doublereal t, vector_fp &cp_R, vector_fp &h_RT, vector_fp &s_R) const |
| update the object, because the temperature changed | |
| virtual void | update_one (int k, doublereal t, vector_fp &cp_R, vector_fp &h_RT, vector_fp &s_R) const |
| update the object for one species, because the temperature changed | |
| virtual doublereal | minTemp (int k=-1) const |
| Returns the minimum temperature. | |
| virtual doublereal | maxTemp (int k=-1) const |
| Returns the maximum temperature. | |
| virtual doublereal | refPressure (int k=-1) const |
| returns the reference pressure | |
| virtual int | reportType (int k) const |
| This utility function reports the type of parameterization used for the species with index number index. | |
| virtual void | reportParams (int index, int &type, doublereal *const c, doublereal &minTemp, doublereal &maxTemp, doublereal &refPressure) const |
| virtual void | modifyParams (int index, doublereal *c) |
| Modify parameters for the standard state. | |
| virtual void | install (std::string name, int index, int type, const doublereal *c, doublereal minTemp, doublereal maxTemp, doublereal refPressure)=0 |
| Install a new species thermodynamic property parameterization for one species. | |
| virtual void | install_STIT (SpeciesThermoInterpType *stit_ptr)=0 |
| Install a new species thermodynamic property parameterization for one species. | |
| virtual void | update (doublereal T, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const =0 |
| Compute the reference-state properties for all species. | |
| virtual void | update_one (int k, doublereal T, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const |
| Like update(), but only updates the single species k. | |
Private Attributes | |
| std::vector< SPM > | m_thermo |
| Vector of SPM objects. There are m_kk of them. | |
| doublereal | m_pref |
| Reference pressure (Pa). | |
This species thermo manager requires that all species have the same parameterization.
This is a templated class. The first template is called SPM. SPM is an object that calculates the thermo for one species. This class contains a vector of SPM's, one for each species. Together, the vector of SPM's is itself a SpeciesThermo class.
Definition at line 364 of file SpeciesThermoMgr.h.
| SpeciesThermo1 | ( | ) | [inline] |
base constructor
Definition at line 656 of file SpeciesThermoMgr.h.
| ~SpeciesThermo1 | ( | ) | [inline, virtual] |
destructor
Definition at line 662 of file SpeciesThermoMgr.h.
| SpeciesThermo1 | ( | const SpeciesThermo1< SPM > & | right | ) | [inline] |
Copy Constructor.
| right | Object to be copied |
Definition at line 667 of file SpeciesThermoMgr.h.
References SpeciesThermo1< SPM >::operator=().
| SpeciesThermo * duplMyselfAsSpeciesThermo | ( | ) | const [inline, virtual] |
Duplication routine for objects which inherit from SpeciesThermo.
This virtual routine can be used to duplicate SpeciesThermo objects inherited from SpeciesThermo even if the application only has a pointer to SpeciesThermo to work with. ->commented out because we first need to add copy constructors and assignment operators to all of the derived classes.
Implements SpeciesThermo.
Definition at line 685 of file SpeciesThermoMgr.h.
| virtual void install | ( | std::string | name, | |
| int | index, | |||
| int | type, | |||
| const doublereal * | c, | |||
| doublereal | minTemp, | |||
| doublereal | maxTemp, | |||
| doublereal | refPressure | |||
| ) | [pure virtual, inherited] |
Install a new species thermodynamic property parameterization for one species.
| name | Name of the species | |
| index | The 'update' method will update the property values for this species at position i index in the property arrays. | |
| type | int flag specifying the type of parameterization to be installed. | |
| c | vector of coefficients for the parameterization. This vector is simply passed through to the parameterization constructor. | |
| minTemp | minimum temperature for which this parameterization is valid. | |
| maxTemp | maximum temperature for which this parameterization is valid. | |
| refPressure | standard-state pressure for this parameterization. |
Implemented in GeneralSpeciesThermo, and SpeciesThermoDuo< T1, T2 >.
| void install | ( | std::string | name, | |
| int | sp, | |||
| int | type, | |||
| const vector_fp & | c | |||
| ) | [inline, virtual] |
Install one species into this Species Thermo Manager.
| name | Name of the species | |
| sp | Species index | |
| type | species type in terms of an int | |
| c | Parameters for the species thermo |
Definition at line 692 of file SpeciesThermoMgr.h.
References SpeciesThermo1< SPM >::m_pref, SpeciesThermo1< SPM >::m_thermo, and SpeciesThermo1< SPM >::refPressure().
| virtual void install_STIT | ( | SpeciesThermoInterpType * | stit_ptr | ) | [pure virtual, inherited] |
Install a new species thermodynamic property parameterization for one species.
| stit_ptr | Pointer to the SpeciesThermoInterpType object This will set up the thermo for one species |
Implemented in GeneralSpeciesThermo, NasaThermo, ShomateThermo, SimpleThermo, and SpeciesThermoDuo< T1, T2 >.
| doublereal maxTemp | ( | int | k = -1 |
) | const [inline, virtual] |
Returns the maximum temperature.
| k | species index. Defaults to -1. |
Implements SpeciesThermo.
Definition at line 729 of file SpeciesThermoMgr.h.
References Cantera::_maxTemp(), and SpeciesThermo1< SPM >::m_thermo.
| doublereal minTemp | ( | int | k = -1 |
) | const [inline, virtual] |
Returns the minimum temperature.
| k | species index. Defaults to -1. |
Implements SpeciesThermo.
Definition at line 720 of file SpeciesThermoMgr.h.
References Cantera::_minTemp(), and SpeciesThermo1< SPM >::m_thermo.
| void modifyParams | ( | int | index, | |
| doublereal * | c | |||
| ) | [inline, virtual] |
Modify parameters for the standard state.
| index | Species index | |
| c | Vector of coefficients used to set the parameters for the standard state. |
Implements SpeciesThermo.
Definition at line 760 of file SpeciesThermoMgr.h.
References SpeciesThermo1< SPM >::m_thermo.
| SpeciesThermo1< SPM > & operator= | ( | const SpeciesThermo1< SPM > & | right | ) | [inline] |
Asignment Operator.
| right | Object to be copied |
Definition at line 675 of file SpeciesThermoMgr.h.
References SpeciesThermo1< SPM >::m_pref, and SpeciesThermo1< SPM >::m_thermo.
Referenced by SpeciesThermo1< SPM >::SpeciesThermo1().
| doublereal refPressure | ( | int | k = -1 |
) | const [inline, virtual] |
returns the reference pressure
| k | species index. Defaults to -1. |
Implements SpeciesThermo.
Definition at line 738 of file SpeciesThermoMgr.h.
References SpeciesThermo1< SPM >::m_pref.
Referenced by SpeciesThermo1< SPM >::install().
| void reportParams | ( | int | index, | |
| int & | type, | |||
| doublereal *const | c, | |||
| doublereal & | minTemp, | |||
| doublereal & | maxTemp, | |||
| doublereal & | refPressure | |||
| ) | const [inline, virtual] |
This utility function reports back the type of parameterization and all of the parameters for the species, index.
| index | Species index | |
| type | Integer type of the standard type | |
| c | Vector of coefficients used to set the parameters for the standard state. | |
| minTemp | output - Minimum temperature | |
| maxTemp | output - Maximum temperature | |
| refPressure | output - reference pressure (Pa). |
Implements SpeciesThermo.
Definition at line 750 of file SpeciesThermoMgr.h.
References SpeciesThermo1< SPM >::m_thermo.
| int reportType | ( | int | k | ) | const [inline, virtual] |
This utility function reports the type of parameterization used for the species with index number index.
Note, all parameterizations are the same, by definition, here
| k | Species index |
Implements SpeciesThermo.
Definition at line 744 of file SpeciesThermoMgr.h.
References SpeciesThermo1< SPM >::m_thermo.
| virtual void update | ( | doublereal | T, | |
| doublereal * | cp_R, | |||
| doublereal * | h_RT, | |||
| doublereal * | s_R | |||
| ) | const [pure virtual, inherited] |
Compute the reference-state properties for all species.
Given temperature T in K, this method updates the values of the non-dimensional heat capacity at constant pressure, enthalpy, and entropy, at the reference pressure, Pref of each of the standard states.
| T | Temperature (Kelvin) | |
| cp_R | Vector of Dimensionless heat capacities. (length m_kk). | |
| h_RT | Vector of Dimensionless enthalpies. (length m_kk). | |
| s_R | Vector of Dimensionless entropies. (length m_kk). |
Implemented in GeneralSpeciesThermo, NasaThermo, ShomateThermo, SimpleThermo, and SpeciesThermoDuo< T1, T2 >.
Referenced by VPSSMgr_Water_ConstVol::_updateRefStateThermo(), VPSSMgr::_updateRefStateThermo(), SurfPhase::_updateThermo(), SingleSpeciesTP::_updateThermo(), IdealSolidSolnPhase::_updateThermo(), IdealGasPhase::_updateThermo(), and SpeciesThermo::update_one().
| void update | ( | doublereal | t, | |
| vector_fp & | cp_R, | |||
| vector_fp & | h_RT, | |||
| vector_fp & | s_R | |||
| ) | const [inline, virtual] |
update the object, because the temperature changed
| t | temperature(Kelvin) | |
| cp_R | vector of dimensionless heat capacity | |
| h_RT | vector of dimensionless enthalpy | |
| s_R | vector of dimensionless entropy |
Definition at line 706 of file SpeciesThermoMgr.h.
References Cantera::_updateAll(), and SpeciesThermo1< SPM >::m_thermo.
| virtual void update_one | ( | int | k, | |
| doublereal | T, | |||
| doublereal * | cp_R, | |||
| doublereal * | h_RT, | |||
| doublereal * | s_R | |||
| ) | const [inline, virtual, inherited] |
Like update(), but only updates the single species k.
The default treatment is to just call update() which means that potentially the operation takes a m_kk*m_kk hit.
| k | species index | |
| T | Temperature (Kelvin) | |
| cp_R | Vector of Dimensionless heat capacities. (length m_kk). | |
| h_RT | Vector of Dimensionless enthalpies. (length m_kk). | |
| s_R | Vector of Dimensionless entropies. (length m_kk). |
Reimplemented in GeneralSpeciesThermo, NasaThermo, ShomateThermo, and SimpleThermo.
Definition at line 291 of file SpeciesThermo.h.
References SpeciesThermo::update().
Referenced by PDSS_SSVol::setTemperature(), PDSS_IdealGas::setTemperature(), and PDSS_ConstVol::setTemperature().
| void update_one | ( | int | k, | |
| doublereal | t, | |||
| vector_fp & | cp_R, | |||
| vector_fp & | h_RT, | |||
| vector_fp & | s_R | |||
| ) | const [inline, virtual] |
update the object for one species, because the temperature changed
| k | species index | |
| t | temperature(Kelvin) | |
| cp_R | vector of dimensionless heat capacity | |
| h_RT | vector of dimensionless enthalpy | |
| s_R | vector of dimensionless entropy |
Definition at line 713 of file SpeciesThermoMgr.h.
References SpeciesThermo1< SPM >::m_thermo.
doublereal m_pref [private] |
Reference pressure (Pa).
Definition at line 511 of file SpeciesThermoMgr.h.
Referenced by SpeciesThermo1< SPM >::install(), SpeciesThermo1< SPM >::operator=(), and SpeciesThermo1< SPM >::refPressure().
std::vector<SPM> m_thermo [private] |
Vector of SPM objects. There are m_kk of them.
Definition at line 508 of file SpeciesThermoMgr.h.
Referenced by SpeciesThermo1< SPM >::install(), SpeciesThermo1< SPM >::maxTemp(), SpeciesThermo1< SPM >::minTemp(), SpeciesThermo1< SPM >::modifyParams(), SpeciesThermo1< SPM >::operator=(), SpeciesThermo1< SPM >::reportParams(), SpeciesThermo1< SPM >::reportType(), SpeciesThermo1< SPM >::update(), and SpeciesThermo1< SPM >::update_one().
1.6.3