OGS
|
A model for water vapour density in the unsaturated porous media.
The water vapour density is given by
\[ \rho_v = h\, \rho_{vS}, \]
where \(h\) is the relative humidity according to
\[ h=\exp({\frac{p}{\rho_w R T}}), \]
with \(R\) the specific gas constant for water vapour, and \(\rho_{vS}\), is the saturated vapour density given by
\[ \rho_{vS}=10^{-3}\, \exp({19.819-4975.9/T}). \]
The specific gas constant for water vapour \(R=461.6\,\text{J}\,\text{kg}^{-1}\text{K}^{-1}\), the value is calculated by \(R_g/M_w\) with \(R_g= 8.3144621\,\text{J}\,\text{mol}^{-1}\text{K}^{-1}\), the ideal gas constant, and \(M_w=0.018016\,\text{kg}\,\text{mol}^{-1}\), the molar mass of water.
The formula of this density model is presented on page 20 of [21].
In the application, the vapour density related terms in the mass balance equation are multiplied with \(1-S\) with \( S \), the water saturation. Therefore the application of the water vapour density model is naturally restricted in the unsaturated zones.
Definition at line 56 of file WaterVapourDensity.h.
#include <WaterVapourDensity.h>
Public Member Functions | |
WaterVapourDensity (std::string name) | |
void | checkScale () const override |
PropertyDataType | value (VariableArray const &variable_array, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const override |
PropertyDataType | dValue (VariableArray const &variable_array, Variable const variable, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const override |
Public Member Functions inherited from MaterialPropertyLib::Property | |
virtual | ~Property () |
virtual PropertyDataType | initialValue (ParameterLib::SpatialPosition const &pos, double const t) const |
virtual PropertyDataType | value () const |
virtual PropertyDataType | value (VariableArray const &variable_array, VariableArray const &variable_array_prev, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
virtual PropertyDataType | dValue (VariableArray const &variable_array, VariableArray const &variable_array_prev, Variable const variable, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
virtual PropertyDataType | d2Value (VariableArray const &variable_array, Variable const variable1, Variable const variable2, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
Default implementation: 2nd derivative of any constant property is zero. | |
virtual void | setProperties (std::vector< std::unique_ptr< Phase > > const &phases) |
Default implementation: | |
void | setScale (std::variant< Medium *, Phase *, Component * > scale) |
template<typename T > | |
T | initialValue (ParameterLib::SpatialPosition const &pos, double const t) const |
template<typename T > | |
T | value () const |
template<typename T > | |
T | value (VariableArray const &variable_array, VariableArray const &variable_array_prev, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
template<typename T > | |
T | value (VariableArray const &variable_array, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
template<typename T > | |
T | dValue (VariableArray const &variable_array, VariableArray const &variable_array_prev, Variable const variable, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
template<typename T > | |
T | dValue (VariableArray const &variable_array, Variable const variable, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
template<typename T > | |
T | d2Value (VariableArray const &variable_array, Variable const &variable1, Variable const &variable2, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
Additional Inherited Members | |
Protected Attributes inherited from MaterialPropertyLib::Property | |
std::string | name_ |
PropertyDataType | value_ |
The single value of a property. | |
PropertyDataType | dvalue_ |
std::variant< Medium *, Phase *, Component * > | scale_ |
|
inlineexplicit |
Definition at line 59 of file WaterVapourDensity.h.
References MaterialPropertyLib::name, and MaterialPropertyLib::Property::name_.
|
inlineoverridevirtual |
Reimplemented from MaterialPropertyLib::Property.
Definition at line 60 of file WaterVapourDensity.h.
References OGS_FATAL, and MaterialPropertyLib::Property::scale_.
|
overridevirtual |
Reimplemented from MaterialPropertyLib::Property.
Definition at line 56 of file WaterVapourDensity.cpp.
References MaterialPropertyLib::VariableArray::density, MaterialPropertyLib::dsaturatedVaporDensitydT(), MaterialPropertyLib::humidity(), MaterialPropertyLib::liquid_phase_pressure, MaterialPropertyLib::VariableArray::liquid_phase_pressure, OGS_FATAL, MaterialPropertyLib::saturatedVaporDensity(), MaterialPropertyLib::temperature, MaterialPropertyLib::VariableArray::temperature, and MaterialLib::PhysicalConstant::SpecificGasConstant::WaterVapour.
|
overridevirtual |
Reimplemented from MaterialPropertyLib::Property.
Definition at line 42 of file WaterVapourDensity.cpp.
References MaterialPropertyLib::VariableArray::density, MaterialPropertyLib::humidity(), MaterialPropertyLib::VariableArray::liquid_phase_pressure, MaterialPropertyLib::saturatedVaporDensity(), and MaterialPropertyLib::VariableArray::temperature.