7 #ifndef CT_LIQUIDTRANINTERACTION_H
8 #define CT_LIQUIDTRANINTERACTION_H
15 #include "cantera/base/XML_Writer.h"
79 LTI_MODEL_LOG_MOLEFRACS,
80 LTI_MODEL_PAIRWISE_INTERACTION,
81 LTI_MODEL_STEFANMAXWELL_PPN,
82 LTI_MODEL_STOKES_EINSTEIN,
83 LTI_MODEL_MOLEFRACS_EXPT
132 virtual doublereal
getMixTransProp(doublereal* speciesValues, doublereal* weightSpecies = 0) {
140 virtual void getMatrixTransProp(DenseMatrix& mat, doublereal* speciesValues = 0) {
142 throw NotImplemented(
"LiquidTranInteraction::getMixTransProp");
197 doublereal getMixTransProp(doublereal* valueSpecies, doublereal* weightSpecies = 0);
198 doublereal getMixTransProp(std::vector<LTPspecies*> LTPptrs) ;
205 void getMatrixTransProp(
DenseMatrix& mat, doublereal* speciesValues = 0);
236 doublereal
getMixTransProp(doublereal* valueSpecies, doublereal* weightSpecies = 0);
278 doublereal
getMixTransProp(doublereal* valueSpecies, doublereal* weightSpecies = 0);
335 m_model = LTI_MODEL_LOG_MOLEFRACS;
349 doublereal
getMixTransProp(doublereal* valueSpecies, doublereal* weightSpecies = 0);
388 m_model = LTI_MODEL_PAIRWISE_INTERACTION;
404 doublereal
getMixTransProp(doublereal* valueSpecies, doublereal* weightSpecies = 0);
415 std::vector<LTPspecies*> m_diagonals;
494 m_model = LTI_MODEL_STEFANMAXWELL_PPN;
510 doublereal
getMixTransProp(doublereal* valueSpecies, doublereal* weightSpecies = 0);
521 doublereal m_ionCondMix;
523 std::vector<LTPspecies*> m_ionCondSpecies;
524 typedef std::vector<LTPspecies*> LTPvector;
526 std::vector<LiquidTranInteraction*> m_mobRatMixModel;
527 std::vector<LTPvector> m_mobRatSpecies;
529 std::vector<LiquidTranInteraction*> m_selfDiffMixModel;
531 std::vector<LTPvector> m_selfDiffSpecies;
540 m_model = LTI_MODEL_STOKES_EINSTEIN;
549 void setParameters(LiquidTransportParams& trParam);
557 doublereal getMixTransProp(doublereal* valueSpecies, doublereal* weightSpecies = 0);
558 doublereal getMixTransProp(std::vector<LTPspecies*> LTPptrs) ;
565 void getMatrixTransProp(DenseMatrix& mat, doublereal* speciesValues = 0) ;
568 std::vector<LTPspecies*> m_viscosity;
569 std::vector<LTPspecies*> m_hydroRadius;
585 m_model = LTI_MODEL_MOLEFRACS_EXPT;
599 doublereal
getMixTransProp(doublereal* valueSpecies, doublereal* weightSpecies = 0);
thermo_t * m_thermo
pointer to thermo object to get current temperature
doublereal getMixTransProp(doublereal *valueSpecies, doublereal *weightSpecies=0)
Copy constructor.
TransportPropertyType
Enumeration of the types of transport properties that can be handled by the variables in the various ...
LiquidTranMixingModel m_model
Model for species interaction effects Takes enum LiquidTranMixingModel.
std::vector< DenseMatrix * > m_Hij
Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (in energy units...
Simple mass fraction weighting of transport properties.
doublereal getMixTransProp(doublereal *valueSpecies, doublereal *weightSpecies=0)
Return the mixture transport property value.
Headers for the Transport object, which is the virtual base class for all transport property evaluato...
std::vector< DenseMatrix * > m_Bij
Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (linear temperat...
std::vector< DenseMatrix * > m_Aij
Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (no temperature ...
Class XML_Node is a tree-based representation of the contents of an XML file.
This file contains definitions of terms that are used in internal routines and are unlikely to need m...
Transport properties that act like pairwise interactions as in binary diffusion coefficients.
TransportPropertyType m_property
enum indicating what property this is (i.e viscosity)
void getMatrixTransProp(DenseMatrix &mat, doublereal *speciesValues=0)
Return the matrix of binary interaction parameters.
virtual doublereal getMixTransProp(doublereal *speciesValues, doublereal *weightSpecies=0)
Return the mixture transport property value.
void getMatrixTransProp(DenseMatrix &mat, doublereal *speciesValues=0)
Return the matrix of binary interaction parameters.
void getMatrixTransProp(DenseMatrix &mat, doublereal *speciesValues=0)
Return the matrix of binary interaction parameters.
void getMatrixTransProp(DenseMatrix &mat, doublereal *speciesValues=0)
Return the matrix of binary interaction parameters.
Header file defining class LiquidTransportData.
Base class for a phase with thermodynamic properties.
Class LiquidTransportParams holds transport model parameters relevant to transport in mixtures...
Error class to indicate an unimplemented method.
void getMatrixTransProp(DenseMatrix &mat, doublereal *speciesValues=0)
Return the matrix of binary interaction parameters.
void setParameters(LiquidTransportParams &trParam)
Copy constructor.
Mixing rule using logarithms of the mole fractions.
DenseMatrix m_Dij
Matrix of interactions.
Classes providing support for XML data files.
LiquidTranMixingModel
Composition dependence type for liquid mixture transport properties.
void setParameters(LiquidTransportParams &trParam)
Copy constructor.
LiquidTranInteraction(TransportPropertyType tp_ind=TP_UNKNOWN)
Constructor.
std::vector< DenseMatrix * > m_Sij
Matrix of interaction coefficients for polynomial in molefraction*weight of speciesA (in entropy unit...
Simple mole fraction weighting of transport properties.
void getMatrixTransProp(DenseMatrix &mat, doublereal *speciesValues=0)
Return the matrix of binary interaction parameters.
std::vector< double > vector_fp
Turn on the use of stl vectors for the basic array type within cantera Vector of doubles.
doublereal getMixTransProp(doublereal *valueSpecies, doublereal *weightSpecies=0)
Copy constructor.
doublereal getMixTransProp(doublereal *valueSpecies, doublereal *weightSpecies=0)
Return the mixture transport property value.
Stefan Maxwell Diffusion Coefficients can be solved for given ion conductivity, mobility ratios...
Simple mole fraction weighting of transport properties.
doublereal getMixTransProp(doublereal *valueSpecies, doublereal *weightSpecies=0)
Copy constructor.
virtual void init(const XML_Node &compModelNode=XML_Node(), thermo_t *thermo=0)
initialize LiquidTranInteraction objects with thermo and XML node
doublereal getMixTransProp(doublereal *valueSpecies, doublereal *weightSpecies=0)
Copy constructor.
DenseMatrix m_Eij
Matrix of interactions (in energy units, 1/RT temperature dependence)
Base class to handle transport property evaluation in a mixture.
Class that holds the data that is read in from the xml file, and which is used for processing of the ...
A class for full (non-sparse) matrices with Fortran-compatible data storage, which adds matrix operat...