Cantera  2.3.0
WaterTransport.h
Go to the documentation of this file.
1 /**
2  * @file WaterTransport.h Header file defining class WaterTransport
3  */
4 
5 // This file is part of Cantera. See License.txt in the top-level directory or
6 // at http://www.cantera.org/license.txt for license and copyright information.
7 
8 #ifndef CT_WATERTRAN_H
9 #define CT_WATERTRAN_H
10 
11 #include "LiquidTransportParams.h"
13 
14 namespace Cantera
15 {
16 //! @{
17 const int LVISC_CONSTANT = 0;
18 const int LVISC_WILKES = 1;
19 const int LVISC_MIXTUREAVG = 2;
20 
21 const int LDIFF_MIXDIFF_UNCORRECTED = 0;
22 const int LDIFF_MIXDIFF_FLUXCORRECTED = 1;
23 const int LDIFF_MULTICOMP_STEFANMAXWELL = 2;
24 //! @}
25 
26 class WaterProps;
27 class PDSS_Water;
28 
29 //! Transport Parameters for pure water
30 //! @ingroup tranprops
31 class WaterTransport : public Transport
32 {
33 public:
34  //! default constructor
35  /*!
36  * @param thermo ThermoPhase object that represents the phase.
37  * Defaults to zero
38  * @param ndim Number of dimensions of the flux expressions.
39  * Defaults to a value of one.
40  */
41  WaterTransport(thermo_t* thermo = 0, int ndim = 1);
42 
43  WaterTransport(const WaterTransport& right);
44  WaterTransport& operator=(const WaterTransport& right);
45  virtual Transport* duplMyselfAsTransport() const;
46 
47  virtual int model() const {
48  warn_deprecated("WaterTransport::model",
49  "To be removed after Cantera 2.3.");
50  return cWaterTransport;
51  }
52 
53  virtual std::string transportType() const {
54  return "Water";
55  }
56 
57  //! Returns the viscosity of water at the current conditions (kg/m/s)
58  /*!
59  * This function calculates the value of the viscosity of pure water at the
60  * current T and P.
61  *
62  * The formulas used are from the paper: J. V. Sengers, J. T. R. Watson,
63  * "Improved International Formulations for the Viscosity and Thermal
64  * Conductivity of Water Substance", J. Phys. Chem. Ref. Data, 15, 1291
65  * (1986).
66  *
67  * The formulation is accurate for all temperatures and pressures, for steam
68  * and for water, even near the critical point. Pressures above 500 MPa and
69  * temperature above 900 C are suspect.
70  */
71  virtual doublereal viscosity();
72 
73  virtual doublereal bulkViscosity() {
74  return 0.0;
75  }
76 
77  //! Returns the thermal conductivity of water at the current conditions
78  //! (W/m/K)
79  /*!
80  * This function calculates the value of the thermal conductivity of water
81  * at the current T and P.
82  *
83  * The formulas used are from the paper: J. V. Sengers, J. T. R. Watson,
84  * "Improved International Formulations for the Viscosity and Thermal
85  * Conductivity of Water Substance", J. Phys. Chem. Ref. Data, 15, 1291
86  * (1986).
87  *
88  * The formulation is accurate for all temperatures and pressures, for steam
89  * and for water, even near the critical point. Pressures above 500 MPa and
90  * temperature above 900 C are suspect.
91  */
92  virtual doublereal thermalConductivity();
93 
94 private:
95  //! Routine to do some common initializations at the start of using
96  //! this routine.
97  void initTP();
98 
99  //! Pointer to the WaterPropsIAPWS object, which does the actual calculations
100  //! for the real equation of state
101  /*!
102  * This object owns m_sub
103  */
105 
106  //! Pointer to the WaterProps object
107  /*!
108  * This class is used to house several approximation routines for properties
109  * of water.
110  *
111  * This object owns m_waterProps, and the WaterPropsIAPWS object used by
112  * WaterProps is m_sub, which is defined above.
113  */
115 
116  //! Pressure dependent standard state object for water
117  /*!
118  * We assume that species 0 is water, with a PDSS_Water object.
119  */
121 };
122 }
123 #endif
virtual doublereal viscosity()
Returns the viscosity of water at the current conditions (kg/m/s)
Class for calculating the equation of state of water.
Base class for transport property managers.
void warn_deprecated(const std::string &method, const std::string &extra)
Print a warning indicating that method is deprecated.
Definition: global.cpp:54
Transport Parameters for pure water.
virtual doublereal bulkViscosity()
The bulk viscosity in Pa-s.
WaterTransport(thermo_t *thermo=0, int ndim=1)
default constructor
virtual std::string transportType() const
Identifies the Transport object type.
Base class for a phase with thermodynamic properties.
Definition: ThermoPhase.h:93
Header file defining class LiquidTransportParams.
The WaterProps class is used to house several approximation routines for properties of water...
Definition: WaterProps.h:93
Class for the liquid water pressure dependent standard state.
Definition: PDSS_Water.h:49
PDSS_Water * m_waterPDSS
Pressure dependent standard state object for water.
thermo_t & thermo()
virtual int model() const
Transport model.
virtual Transport * duplMyselfAsTransport() const
Duplication routine for objects which inherit from Transport.
WaterPropsIAPWS * m_sub
Pointer to the WaterPropsIAPWS object, which does the actual calculations for the real equation of st...
void initTP()
Routine to do some common initializations at the start of using this routine.
WaterProps * m_waterProps
Pointer to the WaterProps object.
Namespace for the Cantera kernel.
Definition: application.cpp:29
virtual doublereal thermalConductivity()
Returns the thermal conductivity of water at the current conditions (W/m/K)
Headers for a class for calculating the equation of state of water from the IAPWS 1995 Formulation ba...