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

Mixing rule using logarithms of the mole fractions. More...

#include <LiquidTranInteraction.h>

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

Public Member Functions

 LTI_Log_MoleFracs (TransportPropertyType tp_ind=TP_UNKNOWN)
 
virtual ~LTI_Log_MoleFracs ()
 Copy constructor.
 
doublereal getMixTransProp (doublereal *valueSpecies, doublereal *weightSpecies=0)
 Return the mixture transport property value.
 
doublereal getMixTransProp (std::vector< LTPspecies * > LTPptrs)
 
void getMatrixTransProp (DenseMatrix &mat, doublereal *speciesValues=0)
 Return the matrix of binary interaction parameters.
 
virtual void init (const XML_Node &compModelNode=0, thermo_t *thermo=0)
 initialize LiquidTranInteraction objects with thermo and XML node
 
virtual void setParameters (LiquidTransportParams &trParam)
 

Protected Attributes

LiquidTranMixingModel m_model
 Model for species interaction effects Takes enum LiquidTranMixingModel.
 
TransportPropertyType m_property
 enum indicating what property this is (i.e viscosity)
 
thermo_tm_thermo
 pointer to thermo object to get current temperature
 
std::vector< DenseMatrix * > m_Aij
 Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (no temperature dependence, dimensionless)
 
std::vector< DenseMatrix * > m_Bij
 Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (linear temperature dependence, units 1/K)
 
DenseMatrix m_Eij
 Matrix of interactions (in energy units, 1/RT temperature dependence)
 
std::vector< DenseMatrix * > m_Hij
 Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (in energy units, 1/RT temperature dependence)
 
std::vector< DenseMatrix * > m_Sij
 Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (in entropy units, divided by R)
 
DenseMatrix m_Dij
 Matrix of interactions.
 

Detailed Description

Mixing rule using logarithms of the mole fractions.

This model is based on the idea that liquid molecules are generally interacting with some energy and entropy of interaction. For transport properties that depend on these energies of interaction, the mixture transport property can be written in terms of its logarithm

\[ \ln \eta_{mix} = \sum_i X_i \ln \eta_i + \sum_i \sum_j X_i X_j ( S_{i,j} + E_{i,j} / T ) \]

.

These additional interaction terms multiply the mixture property by

\[ \exp( \sum_{i} \sum_{j} X_i X_j ( S_{i,j} + E_{i,j} / T ) ) \]

so that the self-interaction terms \( S_{i,j} \) and \( E_{i,j} \) should be zero.

Note that the energies and entropies of interaction should be a function of the composition themselves, but this is not yet implemented. (We might follow the input of Margules model thermodynamic data for the purpose of implementing this.)

Sample input for this method is

*    <transport model="Liquid">
*       <viscosity>
*          <compositionDependence model="logMoleFractions">
*             <interaction speciesA="Li+" speciesB="K+">
*               <!--
*                 interactions are from speciesA = LiCl(L)
*                 and speciesB = KCl(L).
*                   -->
*                <Eij units="J/kmol"> -1.0e3 </Eij>
*                <Sij units="J/kmol/K"> 80.0e-5 </Sij>
*             </interaction>
*          </compositionDependence>
*       </viscosity>
*    </transport>
*  

Definition at line 370 of file LiquidTranInteraction.h.

Constructor & Destructor Documentation

virtual ~LTI_Log_MoleFracs ( )
inlinevirtual

Copy constructor.

Assignment operator

Definition at line 386 of file LiquidTranInteraction.h.

Member Function Documentation

doublereal getMixTransProp ( doublereal *  valueSpecies,
doublereal *  weightSpecies = 0 
)
virtual

Return the mixture transport property value.

Takes the separate species transport properties as input (this method does not know what transport property it is at this point.

Reimplemented from LiquidTranInteraction.

Definition at line 470 of file LiquidTranInteraction.cpp.

References Phase::getMoleFractions(), LiquidTranInteraction::m_Hij, LiquidTranInteraction::m_Sij, LiquidTranInteraction::m_thermo, Phase::nSpecies(), and Phase::temperature().

void getMatrixTransProp ( DenseMatrix mat,
doublereal *  speciesValues = 0 
)
inlinevirtual

Return the matrix of binary interaction parameters.

Takes the proper mixing rule for the binary interaction parameters and calculates them: Not implemented for this mixing rule.

Reimplemented from LiquidTranInteraction.

Definition at line 402 of file LiquidTranInteraction.h.

References LiquidTranInteraction::m_Eij.

void init ( const XML_Node compModelNode = 0,
thermo_t thermo = 0 
)
virtualinherited

Member Data Documentation

LiquidTranMixingModel m_model
protectedinherited

Model for species interaction effects Takes enum LiquidTranMixingModel.

Definition at line 159 of file LiquidTranInteraction.h.

Referenced by LiquidTranInteraction::operator=().

TransportPropertyType m_property
protectedinherited

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

Definition at line 162 of file LiquidTranInteraction.h.

Referenced by LiquidTranInteraction::operator=().

thermo_t* m_thermo
protectedinherited
std::vector<DenseMatrix*> m_Aij
protectedinherited
std::vector<DenseMatrix*> m_Bij
protectedinherited

Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (linear temperature dependence, units 1/K)

Definition at line 175 of file LiquidTranInteraction.h.

Referenced by LTI_MoleFracs::getMixTransProp(), LTI_MassFracs::getMixTransProp(), LTI_MoleFracs_ExpT::getMixTransProp(), LiquidTranInteraction::init(), LiquidTranInteraction::operator=(), and LiquidTranInteraction::~LiquidTranInteraction().

DenseMatrix m_Eij
protectedinherited

Matrix of interactions (in energy units, 1/RT temperature dependence)

Definition at line 178 of file LiquidTranInteraction.h.

Referenced by LTI_Log_MoleFracs::getMatrixTransProp(), LTI_Pairwise_Interaction::getMatrixTransProp(), LiquidTranInteraction::init(), and LiquidTranInteraction::operator=().

std::vector<DenseMatrix*> m_Hij
protectedinherited

Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (in energy units, 1/RT temperature dependence)

Definition at line 182 of file LiquidTranInteraction.h.

Referenced by LTI_Log_MoleFracs::getMixTransProp(), LiquidTranInteraction::init(), LiquidTranInteraction::operator=(), and LiquidTranInteraction::~LiquidTranInteraction().

std::vector<DenseMatrix*> m_Sij
protectedinherited

Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (in entropy units, divided by R)

Definition at line 186 of file LiquidTranInteraction.h.

Referenced by LTI_Log_MoleFracs::getMixTransProp(), LiquidTranInteraction::init(), LiquidTranInteraction::operator=(), and LiquidTranInteraction::~LiquidTranInteraction().

DenseMatrix m_Dij
protectedinherited

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