version 3.11-dev
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
granite.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_GRANITE_HH
13#define DUMUX_GRANITE_HH
14
17
18#include <cmath>
19
20namespace Dumux::Components {
21
28template <class Scalar>
29class Granite : public Components::Base<Scalar, Granite<Scalar> >
30 , public Components::Solid<Scalar, Granite<Scalar> >
31
32{
33public:
37 static std::string name()
38 { return "Granite"; }
39
43 static constexpr bool solidIsCompressible()
44 {
45 return false; // iso c++ requires a return statement for constexpr functions
46 }
47
51 static constexpr Scalar molarMass()
52 {
53 return 60.08e-3;
54 }
55
63 {
64 return 2700;
65 }
66
74 {
75 return 2.8;
76 }
77
83 {
84 return 790;
85 }
86
87};
88
89} // end namespace Dumux::Components
90
91#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
Properties of granite.
Definition: granite.hh:32
static Scalar solidThermalConductivity(Scalar temperature)
Thermal conductivity of the component as a solid.
Definition: granite.hh:73
static constexpr bool solidIsCompressible()
Returns true if the solid phase is assumed to be compressible.
Definition: granite.hh:43
static constexpr Scalar molarMass()
The molar mass of Siliciumoxide which is 70 % of granite in .
Definition: granite.hh:51
static std::string name()
A human readable name for the solid.
Definition: granite.hh:37
static Scalar solidDensity(Scalar temperature)
The density in of the component at a given pressure in and temperature in .
Definition: granite.hh:62
static Scalar solidHeatCapacity(Scalar temperature)
Specific isobaric heat capacity of the component as a solid.
Definition: granite.hh:82
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,...
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.