3.1-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
h2on2kinetic.hh
Go to the documentation of this file.
1// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
2// vi: set et ts=4 sw=4 sts=4:
3/*****************************************************************************
4 * See the file COPYING for full copying permissions. *
5 * *
6 * This program is free software: you can redistribute it and/or modify *
7 * it under the terms of the GNU General Public License as published by *
8 * the Free Software Foundation, either version 3 of the License, or *
9 * (at your option) any later version. *
10 * *
11 * This program is distributed in the hope that it will be useful, *
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14 * GNU General Public License for more details. *
15 * *
16 * You should have received a copy of the GNU General Public License *
17 * along with this program. If not, see <http://www.gnu.org/licenses/>. *
18 *****************************************************************************/
24#ifndef DUMUX_H2O_N2_FLUID_SYSTEM_KINETIC_HH
25#define DUMUX_H2O_N2_FLUID_SYSTEM_KINETIC_HH
26
32
34
37
38namespace Dumux {
39namespace FluidSystems {
40
46template <class Scalar, class Policy = H2ON2DefaultPolicy<>>
48 public FluidSystems::H2ON2<Scalar, Policy>
49{
50private:
52
54public:
57
64 template <class FluidState>
65 static Scalar componentEnthalpy(FluidState &fluidState,
66 const int phaseIdx,
67 const int compIdx)
68 {
69 const Scalar T = fluidState.temperature(phaseIdx);
70 const Scalar p = fluidState.pressure(phaseIdx);
71
72 switch (phaseIdx){
74 switch(compIdx){
78 return ParentType::N2::gasEnthalpy(T, p); // TODO: should be liquid enthalpy
79 default:
80 DUNE_THROW(Dune::NotImplemented,
81 "wrong index");
82 break;
83 }// end switch compIdx
84 break;
86 switch(compIdx){
90 return ParentType::N2::gasEnthalpy(T, p);
91 default:
92 DUNE_THROW(Dune::NotImplemented,
93 "wrong index");
94 break;
95 }// end switch compIdx
96 break;
97 default:
98 DUNE_THROW(Dune::NotImplemented,
99 "wrong index");
100 break;
101 }// end switch phaseIdx
102 }
103
109 {
111 }
112
118 {
120 }
121};
122} // end namespace Fluidsystem
123} // end namespace Dumux
124
125#endif
Material properties of pure water .
Properties of pure molecular nitrogen .
Tabulates all thermodynamic properties of a given untabulated chemical species.
A much simpler (and thus potentially less buggy) version of pure water.
Relations valid for an ideal gas.
Binary coefficients for water and nitrogen.
make the local view function available whenever we use the grid geometry
Definition: adapt.hh:29
std::string temperature() noexcept
I/O name of temperature for equilibrium models.
Definition: name.hh:51
static Scalar henry(Scalar temperature)
Henry coefficient for molecular nitrogen in liquid water.
Definition: h2o_n2.hh:48
static const Scalar gasEnthalpy(Scalar temperature, Scalar pressure)
Specific enthalpy of pure nitrogen gas.
Definition: n2.hh:176
static const Scalar gasEnthalpy(Scalar temperature, Scalar pressure)
Specific enthalpy of the gas .
Definition: tabulatedcomponent.hh:238
static const Scalar liquidEnthalpy(Scalar temperature, Scalar pressure)
Specific enthalpy of the liquid .
Definition: tabulatedcomponent.hh:265
static Scalar vaporPressure(Scalar T)
The vapor pressure in of the component at a given temperature.
Definition: tabulatedcomponent.hh:211
Scalar Scalar
export the scalar type
Definition: fluidsystems/base.hh:48
A two-phase fluid system with two components water Nitrogen for non-equilibrium models.
Definition: h2on2.hh:69
static constexpr int liquidPhaseIdx
index of the liquid phase
Definition: h2on2.hh:85
static constexpr int N2Idx
Definition: h2on2.hh:91
static constexpr int gasPhaseIdx
index of the gas phase
Definition: h2on2.hh:86
static constexpr int H2OIdx
Definition: h2on2.hh:90
A two-phase fluid system with two components water Nitrogen for non-equilibrium models....
Definition: h2on2kinetic.hh:49
static Scalar vaporPressure(Scalar temperature)
Return the vapor pressure of a component above one phase. .
Definition: h2on2kinetic.hh:117
static Scalar henry(Scalar temperature)
Return the Henry constant for a component in a phase. .
Definition: h2on2kinetic.hh:108
static Scalar componentEnthalpy(FluidState &fluidState, const int phaseIdx, const int compIdx)
Return the enthalpy of a component in a phase.
Definition: h2on2kinetic.hh:65
The a parameter cache which does nothing.
Definition: nullparametercache.hh:34
Relations valid for an ideal gas.
Definition: idealgas.hh:37
Fluid system base class.