version 3.11-dev
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
nacl.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_NACL_HH
13#define DUMUX_NACL_HH
14
16
17#include <cmath>
18#include <iostream>
19
23
24namespace Dumux::Components {
25
30template <class Scalar>
31class NaCl
32: public Components::Base<Scalar, NaCl<Scalar> >
33, public Components::Solid<Scalar, NaCl<Scalar> >
34{
35public:
39 static std::string name()
40 {
41 return "NaCl";
42 }
43
47 static constexpr Scalar molarMass()
48 {
49 return 58.4428e-3 ;
50 }
51
56 {
57 return 2165.0;
58 }
59
64 {
66 }
67
72 {
73 return 50.50/molarMass();
74 }
75
81 {
82 return 6.49;
83 }
84};
85
86} // end namespace Dumux::Components
87
88#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
A class for the NaCl properties.
Definition: nacl.hh:34
static Scalar solidDensity(Scalar temperature)
The mass density of NaCl.
Definition: nacl.hh:55
static std::string name()
A human readable name for the NaCl.
Definition: nacl.hh:39
static Scalar solidMolarDensity(Scalar temperature)
The mass density of NaCl.
Definition: nacl.hh:63
static Scalar solidHeatCapacity(Scalar temperature)
The specific heat capacity of NaCl.
Definition: nacl.hh:71
static constexpr Scalar molarMass()
The molar mass of NaCl in .
Definition: nacl.hh:47
static Scalar solidThermalConductivity(Scalar temperature)
Thermal conductivity of the component as a solid.
Definition: nacl.hh:80
Interface for components that have a solid state.
Definition: solid.hh:28
Base class for all components Components provide the thermodynamic relations for the liquid,...
Some exceptions thrown in DuMux
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
Interface for components that have a solid state.