Cantera  2.3.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members

Transport Parameters for pure water. More...

#include <WaterTransport.h>

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

Public Member Functions

 WaterTransport (thermo_t *thermo=0, int ndim=1)
 default constructor More...
 
 WaterTransport (const WaterTransport &right)
 
WaterTransportoperator= (const WaterTransport &right)
 
virtual TransportduplMyselfAsTransport () const
 Duplication routine for objects which inherit from Transport. More...
 
virtual int model () const
 Transport model. More...
 
virtual std::string transportType () const
 Identifies the Transport object type. More...
 
virtual doublereal viscosity ()
 Returns the viscosity of water at the current conditions (kg/m/s) More...
 
virtual doublereal bulkViscosity ()
 The bulk viscosity in Pa-s. More...
 
virtual doublereal thermalConductivity ()
 Returns the thermal conductivity of water at the current conditions (W/m/K) More...
 
- Public Member Functions inherited from Transport
 Transport (thermo_t *thermo=0, size_t ndim=1)
 Constructor. More...
 
 Transport (const Transport &right)
 
Transportoperator= (const Transport &right)
 
thermo_tthermo ()
 
bool ready ()
 
void setNDim (const int ndim)
 Set the number of dimensions to be expected in flux expressions. More...
 
size_t nDim () const
 Return the number of dimensions in flux expressions. More...
 
void checkSpeciesIndex (size_t k) const
 Check that the specified species index is in range. More...
 
void checkSpeciesArraySize (size_t kk) const
 Check that an array size is at least nSpecies(). More...
 
virtual doublereal getElectricConduct ()
 Compute the mixture electrical conductivity (S m-1) at the current conditions of the phase (Siemens m-1) More...
 
virtual void getElectricCurrent (int ndim, const doublereal *grad_T, int ldx, const doublereal *grad_X, int ldf, const doublereal *grad_V, doublereal *current)
 Compute the electric current density in A/m^2. More...
 
virtual void getSpeciesFluxes (size_t ndim, const doublereal *const grad_T, size_t ldx, const doublereal *const grad_X, size_t ldf, doublereal *const fluxes)
 Get the species diffusive mass fluxes wrt to the specified solution averaged velocity, given the gradients in mole fraction and temperature. More...
 
virtual void getSpeciesFluxesES (size_t ndim, const doublereal *grad_T, size_t ldx, const doublereal *grad_X, size_t ldf, const doublereal *grad_Phi, doublereal *fluxes)
 Get the species diffusive mass fluxes wrt to the mass averaged velocity, given the gradients in mole fraction, temperature and electrostatic potential. More...
 
virtual void getSpeciesVdiff (size_t ndim, const doublereal *grad_T, int ldx, const doublereal *grad_X, int ldf, doublereal *Vdiff)
 Get the species diffusive velocities wrt to the mass averaged velocity, given the gradients in mole fraction and temperature. More...
 
virtual void getSpeciesVdiffES (size_t ndim, const doublereal *grad_T, int ldx, const doublereal *grad_X, int ldf, const doublereal *grad_Phi, doublereal *Vdiff)
 Get the species diffusive velocities wrt to the mass averaged velocity, given the gradients in mole fraction, temperature, and electrostatic potential. More...
 
virtual void getMolarFluxes (const doublereal *const state1, const doublereal *const state2, const doublereal delta, doublereal *const cfluxes)
 Get the molar fluxes [kmol/m^2/s], given the thermodynamic state at two nearby points. More...
 
virtual void getMassFluxes (const doublereal *state1, const doublereal *state2, doublereal delta, doublereal *mfluxes)
 Get the mass fluxes [kg/m^2/s], given the thermodynamic state at two nearby points. More...
 
virtual void getThermalDiffCoeffs (doublereal *const dt)
 Return a vector of Thermal diffusion coefficients [kg/m/sec]. More...
 
virtual void getBinaryDiffCoeffs (const size_t ld, doublereal *const d)
 Returns the matrix of binary diffusion coefficients [m^2/s]. More...
 
virtual void getMultiDiffCoeffs (const size_t ld, doublereal *const d)
 Return the Multicomponent diffusion coefficients. Units: [m^2/s]. More...
 
virtual void getMixDiffCoeffs (doublereal *const d)
 Returns a vector of mixture averaged diffusion coefficients. More...
 
virtual void getMixDiffCoeffsMole (doublereal *const d)
 Returns a vector of mixture averaged diffusion coefficients. More...
 
virtual void getMixDiffCoeffsMass (doublereal *const d)
 Returns a vector of mixture averaged diffusion coefficients. More...
 
virtual void setParameters (const int type, const int k, const doublereal *const p)
 Set model parameters for derived classes. More...
 
void setVelocityBasis (VelocityBasis ivb)
 Sets the velocity basis. More...
 
VelocityBasis getVelocityBasis () const
 Gets the velocity basis. More...
 
virtual void getSpeciesViscosities (doublereal *const visc)
 Returns the pure species viscosities. More...
 
virtual doublereal ionConductivity ()
 The ionic conductivity in 1/ohm/m. More...
 
virtual void getSpeciesIonConductivity (doublereal *const ionCond)
 Returns the pure species ionic conductivity. More...
 
virtual void mobilityRatio (double *mobRat)
 Returns the pointer to the mobility ratios of the species in the phase. More...
 
virtual void getSpeciesMobilityRatio (double **mobRat)
 Returns the pure species limit of the mobility ratios. More...
 
virtual void selfDiffusion (doublereal *const selfDiff)
 Returns the self diffusion coefficients of the species in the phase. More...
 
virtual void getSpeciesSelfDiffusion (double **selfDiff)
 Returns the pure species self diffusion in solution of each species. More...
 
virtual doublereal electricalConductivity ()
 The electrical conductivity (Siemens/m). More...
 
virtual void getMobilities (doublereal *const mobil_e)
 Get the Electrical mobilities (m^2/V/s). More...
 
virtual void getFluidMobilities (doublereal *const mobil_f)
 Get the fluid mobilities (s kmol/kg). More...
 
virtual void init (thermo_t *thermo, int mode=0, int log_level=0)
 Initialize a transport manager. More...
 
virtual bool initLiquid (LiquidTransportParams &tr)
 Called by TransportFactory to set parameters. More...
 
virtual bool initSolid (SolidTransportData &tr)
 Called by TransportFactory to set parameters. More...
 
virtual void setThermo (thermo_t &thermo)
 Specifies the ThermoPhase object. More...
 

Private Member Functions

void initTP ()
 Routine to do some common initializations at the start of using this routine. More...
 

Private Attributes

WaterPropsIAPWSm_sub
 Pointer to the WaterPropsIAPWS object, which does the actual calculations for the real equation of state. More...
 
WaterPropsm_waterProps
 Pointer to the WaterProps object. More...
 
PDSS_Waterm_waterPDSS
 Pressure dependent standard state object for water. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Transport
void finalize ()
 Enable the transport object for use. More...
 
- Protected Attributes inherited from Transport
thermo_tm_thermo
 pointer to the object representing the phase More...
 
bool m_ready
 true if finalize has been called More...
 
size_t m_nsp
 Number of species. More...
 
size_t m_nDim
 Number of dimensions used in flux expressions. More...
 
int m_velocityBasis
 Velocity basis from which diffusion velocities are computed. More...
 

Detailed Description

Transport Parameters for pure water.

Definition at line 31 of file WaterTransport.h.

Constructor & Destructor Documentation

◆ WaterTransport()

WaterTransport ( thermo_t thermo = 0,
int  ndim = 1 
)

default constructor

Parameters
thermoThermoPhase object that represents the phase. Defaults to zero
ndimNumber of dimensions of the flux expressions. Defaults to a value of one.

Definition at line 16 of file WaterTransport.cpp.

References WaterTransport::initTP().

Referenced by WaterTransport::duplMyselfAsTransport().

Member Function Documentation

◆ duplMyselfAsTransport()

Transport * duplMyselfAsTransport ( ) const
virtual

Duplication routine for objects which inherit from Transport.

This virtual routine can be used to duplicate objects derived from Transport even if the application only has a pointer to Transport to work with.

These routines are basically wrappers around the derived copy constructor.

Deprecated:
To be removed after Cantera 2.3 for all classes derived from Transport.

Reimplemented from Transport.

Definition at line 42 of file WaterTransport.cpp.

References WaterTransport::WaterTransport().

◆ model()

virtual int model ( ) const
inlinevirtual

Transport model.

The transport model is the set of equations used to compute the transport properties. This method returns an integer flag that identifies the transport model implemented. The base class returns 0.

Deprecated:
Use transportType() instead. To be removed after Cantera 2.3.

Reimplemented from Transport.

Definition at line 47 of file WaterTransport.h.

References Cantera::warn_deprecated().

◆ transportType()

virtual std::string transportType ( ) const
inlinevirtual

Identifies the Transport object type.

Each derived class should override this method to return a meaningful identifier.

Reimplemented from Transport.

Definition at line 53 of file WaterTransport.h.

◆ viscosity()

doublereal viscosity ( )
virtual

Returns the viscosity of water at the current conditions (kg/m/s)

This function calculates the value of the viscosity of pure water at the current T and P.

The formulas used are from the paper: J. V. Sengers, J. T. R. Watson, "Improved International Formulations for the Viscosity and Thermal Conductivity of Water Substance", J. Phys. Chem. Ref. Data, 15, 1291 (1986).

The formulation is accurate for all temperatures and pressures, for steam and for water, even near the critical point. Pressures above 500 MPa and temperature above 900 C are suspect.

Reimplemented from Transport.

Definition at line 78 of file WaterTransport.cpp.

References WaterTransport::m_waterProps, and WaterProps::viscosityWater().

◆ bulkViscosity()

virtual doublereal bulkViscosity ( )
inlinevirtual

The bulk viscosity in Pa-s.

The bulk viscosity is only non-zero in rare cases. Most transport managers either overload this method to return zero, or do not implement it, in which case an exception is thrown if called.

Reimplemented from Transport.

Definition at line 73 of file WaterTransport.h.

◆ thermalConductivity()

doublereal thermalConductivity ( )
virtual

Returns the thermal conductivity of water at the current conditions (W/m/K)

This function calculates the value of the thermal conductivity of water at the current T and P.

The formulas used are from the paper: J. V. Sengers, J. T. R. Watson, "Improved International Formulations for the Viscosity and Thermal Conductivity of Water Substance", J. Phys. Chem. Ref. Data, 15, 1291 (1986).

The formulation is accurate for all temperatures and pressures, for steam and for water, even near the critical point. Pressures above 500 MPa and temperature above 900 C are suspect.

Reimplemented from Transport.

Definition at line 83 of file WaterTransport.cpp.

References WaterTransport::m_waterProps, and WaterProps::thermalConductivityWater().

◆ initTP()

void initTP ( )
private

Member Data Documentation

◆ m_sub

WaterPropsIAPWS* m_sub
mutableprivate

Pointer to the WaterPropsIAPWS object, which does the actual calculations for the real equation of state.

This object owns m_sub

Definition at line 104 of file WaterTransport.h.

Referenced by WaterTransport::initTP().

◆ m_waterProps

WaterProps* m_waterProps
private

Pointer to the WaterProps object.

This class is used to house several approximation routines for properties of water.

This object owns m_waterProps, and the WaterPropsIAPWS object used by WaterProps is m_sub, which is defined above.

Definition at line 114 of file WaterTransport.h.

Referenced by WaterTransport::initTP(), WaterTransport::thermalConductivity(), and WaterTransport::viscosity().

◆ m_waterPDSS

PDSS_Water* m_waterPDSS
private

Pressure dependent standard state object for water.

We assume that species 0 is water, with a PDSS_Water object.

Definition at line 120 of file WaterTransport.h.

Referenced by WaterTransport::initTP().


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