version 3.11-dev
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
trichloroethene.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// SPDX-FileCopyrightText: Copyright © DuMux Project contributors, see AUTHORS.md in root folder
5// SPDX-License-Identifier: GPL-3.0-or-later
6//
12#ifndef DUMUX_TRICHLOROETHENE_HH
13#define DUMUX_TRICHLOROETHENE_HH
14
16
20
21namespace Dumux::Components {
22
29template <class Scalar>
31: public Components::Base<Scalar, Trichloroethene<Scalar> >
32, public Components::Liquid<Scalar, Trichloroethene<Scalar> >
33, public Components::Gas<Scalar, Trichloroethene<Scalar> >
34{
36
37public:
41 static std::string name()
42 { return "Trichloroethene"; }
43
47 static constexpr Scalar molarMass()
48 {
49 return 131.39e-3; // [kg/mol]
50 }
51
56 {
57 DUNE_THROW(Dune::NotImplemented, "criticalTemperature for TCE");
58 }
59
64 {
65 DUNE_THROW(Dune::NotImplemented, "criticalPressure for TCE");
66 }
67
72 {
73 DUNE_THROW(Dune::NotImplemented, "tripleTemperature for TCE");
74 }
75
80 {
81 DUNE_THROW(Dune::NotImplemented, "triplePressure for TCE");
82 }
83
91 {
92 return 3900; // [Pa] (at 20C)
93 }
94
98 static constexpr bool gasIsCompressible()
99 { return true; }
100
104 static constexpr bool liquidIsCompressible()
105 { return false; }
106
110 static constexpr bool liquidViscosityIsConstant()
111 { return true; }
112
120 {
123 pressure);
124 }
125
135
139 static constexpr bool gasIsIdeal()
140 { return true; }
141
149 {
150 return 1460.0; // [kg/m^3]
151 }
152
162
170 {
171 return 5.7e-4;// [Pa*s]
172 }
173};
174
175} // end namespace Dumux::Components
176
177#endif
Base class for all components Components provide the thermodynamic relations for the liquid,...
Definition: components/base.hh:46
Scalar Scalar
export the scalar type used by the component
Definition: components/base.hh:50
Interface for components that have a gas state.
Definition: gas.hh:28
Interface for components that have a liquid state.
Definition: liquid.hh:28
A simple implementation of TCE as exemplary component for a dense NAPL.
Definition: trichloroethene.hh:34
static Scalar liquidDensity(Scalar temperature, Scalar pressure)
The density of pure TCE at a given pressure and temperature .
Definition: trichloroethene.hh:148
static constexpr bool gasIsIdeal()
Returns true if the gas phase is assumed to be ideal.
Definition: trichloroethene.hh:139
static Scalar tripleTemperature()
Returns the temperature at TCE's triple point.
Definition: trichloroethene.hh:71
static Scalar gasMolarDensity(Scalar temperature, Scalar pressure)
The molar density of steam in at a given pressure and temperature.
Definition: trichloroethene.hh:133
static constexpr bool liquidViscosityIsConstant()
Returns true if the liquid phase viscostiy is constant.
Definition: trichloroethene.hh:110
static Scalar liquidMolarDensity(Scalar temperature, Scalar pressure)
The molar density of pure TCE in at a given pressure and temperature.
Definition: trichloroethene.hh:160
static constexpr Scalar molarMass()
The molar mass in of TCE.
Definition: trichloroethene.hh:47
static Scalar triplePressure()
Returns the pressure at TCE's triple point.
Definition: trichloroethene.hh:79
static std::string name()
A human readable name for the dense NAPL TCE.
Definition: trichloroethene.hh:41
static constexpr bool gasIsCompressible()
Returns true if the gas phase is assumed to be compressible.
Definition: trichloroethene.hh:98
static Scalar criticalPressure()
Returns the critical pressure of TCE.
Definition: trichloroethene.hh:63
static Scalar gasDensity(Scalar temperature, Scalar pressure)
The density of steam at a given pressure and temperature .
Definition: trichloroethene.hh:119
static Scalar liquidViscosity(Scalar temperature, Scalar pressure)
The dynamic viscosity of pure TCE.
Definition: trichloroethene.hh:169
static Scalar vaporPressure(Scalar T)
The vapor pressure in of pure TCE at a given temperature.
Definition: trichloroethene.hh:90
static constexpr bool liquidIsCompressible()
Returns true if the liquid phase is assumed to be compressible.
Definition: trichloroethene.hh:104
static Scalar criticalTemperature()
Returns the critical temperature of TCE.
Definition: trichloroethene.hh:55
Relations valid for an ideal gas.
Definition: idealgas.hh:25
static constexpr Scalar density(Scalar avgMolarMass, Scalar temperature, Scalar pressure)
The density of the gas in , depending on pressure, temperature and average molar mass of the gas.
Definition: idealgas.hh:37
static constexpr Scalar molarDensity(Scalar temperature, Scalar pressure)
The molar density of the gas , depending on pressure and temperature.
Definition: idealgas.hh:58
Base class for all components Components provide the thermodynamic relations for the liquid,...
Interface for components that have a gas state.
Relations valid for an ideal gas.
Interface for components that have a liquid state.
Definition: air.hh:22
std::string temperature() noexcept
I/O name of temperature for equilibrium models.
Definition: name.hh:39
std::string pressure(int phaseIdx) noexcept
I/O name of pressure for multiphase systems.
Definition: name.hh:22