Cantera  2.0
Public Member Functions | Protected Attributes | List of all members
LTPspecies_Arrhenius Class Reference

Class LTPspecies_Arrhenius holds transport parameters for a specific liquid-phase species (LTPspecies) when the transport property is expressed in Arrhenius form. More...

#include <LTPspecies.h>

Inheritance diagram for LTPspecies_Arrhenius:
[legend]
Collaboration diagram for LTPspecies_Arrhenius:
[legend]

Public Member Functions

 LTPspecies_Arrhenius (const XML_Node &propNode, std::string name, TransportPropertyType tp_ind, const thermo_t *thermo)
 Construct an LTPspecies object for a liquid transport property expressed in extended Arrhenius form.
 
 LTPspecies_Arrhenius (const LTPspecies_Arrhenius &right)
 Copy constructor.
 
LTPspecies_Arrheniusoperator= (const LTPspecies_Arrhenius &right)
 Assignment operator.
 
virtual ~LTPspecies_Arrhenius ()
 Destructor.
 
virtual LTPspeciesduplMyselfAsLTPspecies () const
 duplication routine
 
doublereal getSpeciesTransProp ()
 Return the pure species value for this transport property evaluated from the Arrhenius expression.
 
virtual bool checkPositive () const
 Check to see if the property evaluation will be positive.
 
doublereal getMixWeight () const
 Return the weight mixture.
 

Protected Attributes

doublereal m_temp
 temperature from thermo object
 
doublereal m_logt
 logarithm of current temperature
 
doublereal m_prop
 most recent evaluation of transport property
 
doublereal m_logProp
 logarithm of most recent evaluation of transport property
 
std::string m_speciesName
 Species Name.
 
LTPTemperatureDependenceType m_model
 Model type for the temperature dependence.
 
TransportPropertyType m_property
 enum indicating which property this is (i.e viscosity)
 
vector_fp m_coeffs
 Model temperature-dependence ceofficients.
 
const thermo_tm_thermo
 Pointer to a const thermo object to get current temperature.
 
doublereal m_mixWeight
 Weighting used for mixing.
 

Detailed Description

Class LTPspecies_Arrhenius holds transport parameters for a specific liquid-phase species (LTPspecies) when the transport property is expressed in Arrhenius form.

Used for pure species properties with equations of the form

\[ x = A T^b \exp( - E / RT ) \]

where A, b, and E are passed in the xml input file.

As an example of the input required for LTPspecies_Arrhenius consider the following XML fragment

*    <species>
*      <!-- thermodynamic properties -->
*      <transport>
*        <viscosity model="Arrhenius">
*           <!-- Janz, JPCRD, 17, supplement 2, 1988 -->
*           <A>6.578e-5</A>
*           <b>0.0</b>
*           <E units="J/kmol">23788.e3</E>
*        </viscosity>
*        <!-- other transport properties -->
*      </transport>
*    </species>
* 

Definition at line 291 of file LTPspecies.h.

Constructor & Destructor Documentation

LTPspecies_Arrhenius ( const XML_Node propNode,
std::string  name,
TransportPropertyType  tp_ind,
const thermo_t thermo 
)

Construct an LTPspecies object for a liquid transport property expressed in extended Arrhenius form.

The transport property is constructed from the XML node,

<propNode>, 

that is a child of the

<transport> 

node and specifies a type of transport property (like viscosity)

Parameters
propNodeReference to the XML node that contains the property information.This class is assumed to be parameterized by reading XML_Node information.
nameString containing the species name
tp_indenum TransportPropertyType containing the property id that this object is creating a parameterization for (e.g., viscosity)
thermoconst pointer to the ThermoPhase object, which is used to find the temperature.

Definition at line 219 of file LTPspecies.cpp.

References Cantera::getArrhenius(), LTPspecies::m_coeffs, LTPspecies::m_model, LTPspecies_Arrhenius::m_prop, LTPspecies_Arrhenius::m_temp, and XML_Node::name().

Referenced by LTPspecies_Arrhenius::duplMyselfAsLTPspecies().

Copy constructor.

Parameters
rightObject to be copied

Definition at line 239 of file LTPspecies.cpp.

~LTPspecies_Arrhenius ( )
virtual

Destructor.

Definition at line 259 of file LTPspecies.cpp.

Member Function Documentation

LTPspecies_Arrhenius & operator= ( const LTPspecies_Arrhenius right)

Assignment operator.

Parameters
rightObject to be copied

Definition at line 246 of file LTPspecies.cpp.

References LTPspecies_Arrhenius::m_logProp, LTPspecies_Arrhenius::m_logt, LTPspecies_Arrhenius::m_prop, LTPspecies_Arrhenius::m_temp, and LTPspecies::operator=().

LTPspecies * duplMyselfAsLTPspecies ( ) const
virtual

duplication routine

Returns
Returns a copy of this routine as a pointer to LTPspecies

Reimplemented from LTPspecies.

Definition at line 267 of file LTPspecies.cpp.

References LTPspecies_Arrhenius::LTPspecies_Arrhenius().

doublereal getSpeciesTransProp ( )
virtual

Return the pure species value for this transport property evaluated from the Arrhenius expression.

In general the Arrhenius expression is

\[ \mu = A T^n \exp( - E / R T ). \]

Note that for viscosity, the convention is such that a positive activation energy corresponds to the typical case of a positive argument to the exponential so that the Arrhenius expression is

\[ \mu = A T^n \exp( + E / R T ). \]

Any temperature and composition dependence will be adjusted internally according to the information provided.

Reimplemented from LTPspecies.

Definition at line 294 of file LTPspecies.cpp.

References LTPspecies::m_coeffs, LTPspecies_Arrhenius::m_logProp, LTPspecies_Arrhenius::m_logt, LTPspecies_Arrhenius::m_prop, LTPspecies::m_property, LTPspecies_Arrhenius::m_temp, LTPspecies::m_thermo, and Phase::temperature().

bool checkPositive ( ) const
virtualinherited

Check to see if the property evaluation will be positive.

Returns
Returns a boolean

Definition at line 127 of file LTPspecies.cpp.

References LTPspecies::m_coeffs.

doublereal getMixWeight ( ) const
inherited

Return the weight mixture.

Returns
Returns a single double which is used as a weight

Definition at line 132 of file LTPspecies.cpp.

References LTPspecies::m_mixWeight.

Member Data Documentation

doublereal m_temp
protected
doublereal m_logt
protected

logarithm of current temperature

Definition at line 365 of file LTPspecies.h.

Referenced by LTPspecies_Arrhenius::getSpeciesTransProp(), and LTPspecies_Arrhenius::operator=().

doublereal m_prop
protected

most recent evaluation of transport property

Definition at line 368 of file LTPspecies.h.

Referenced by LTPspecies_Arrhenius::getSpeciesTransProp(), LTPspecies_Arrhenius::LTPspecies_Arrhenius(), and LTPspecies_Arrhenius::operator=().

doublereal m_logProp
protected

logarithm of most recent evaluation of transport property

Definition at line 371 of file LTPspecies.h.

Referenced by LTPspecies_Arrhenius::getSpeciesTransProp(), and LTPspecies_Arrhenius::operator=().

std::string m_speciesName
protectedinherited

Species Name.

Definition at line 160 of file LTPspecies.h.

Referenced by LTPspecies::operator=().

LTPTemperatureDependenceType m_model
protectedinherited
TransportPropertyType m_property
protectedinherited

enum indicating which property this is (i.e viscosity)

Definition at line 166 of file LTPspecies.h.

Referenced by LTPspecies_Arrhenius::getSpeciesTransProp(), and LTPspecies::operator=().

vector_fp m_coeffs
protectedinherited
const thermo_t* m_thermo
protectedinherited

Pointer to a const thermo object to get current temperature.

Definition at line 172 of file LTPspecies.h.

Referenced by LTPspecies_Arrhenius::getSpeciesTransProp(), LTPspecies_Poly::getSpeciesTransProp(), LTPspecies_ExpT::getSpeciesTransProp(), and LTPspecies::operator=().

doublereal m_mixWeight
protectedinherited

Weighting used for mixing.

This weighting can be employed to allow salt transport properties to be represented by specific ions. For example, to have Li+ and Ca+ represent the mixing transport properties of LiCl and CaCl2, the weightings for Li+ would be 2.0, for K+ would be 3.0 and for Cl- would be 0.0. The transport properties for Li+ would be those for LiCl and the transport properties for Ca+ would be those for CaCl2. The transport properties for Cl- should be something innoccuous like 1.0–note that 0.0 is not innocuous if there are logarithms involved.

Definition at line 186 of file LTPspecies.h.

Referenced by LTPspecies::getMixWeight(), LTPspecies::LTPspecies(), and LTPspecies::operator=().


The documentation for this class was generated from the following files: