OGS
TemperatureDependentDiffusion.h
Go to the documentation of this file.
1
// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2
// SPDX-License-Identifier: BSD-3-Clause
3
4
#pragma once
5
6
#include "
MaterialLib/MPL/Property.h
"
7
#include "
MaterialLib/MPL/VariableType.h
"
8
#include "
ParameterLib/Parameter.h
"
9
10
namespace
MaterialPropertyLib
11
{
27
class
TemperatureDependentDiffusion
final :
public
Property
28
{
29
public
:
30
explicit
TemperatureDependentDiffusion
(
31
ParameterLib::Parameter<double>
const
& D0,
32
double
const
Ea,
33
double
const
T0)
34
:
D0_
(D0),
Ea_
(Ea),
T0_
(T0)
35
{
36
}
37
38
void
checkScale
()
const override
;
39
40
PropertyDataType
value
(
VariableArray
const
& variable_array,
41
ParameterLib::SpatialPosition
const
& pos,
42
double
const
t,
43
double
const
/*dt*/
)
const override
;
44
45
private
:
47
ParameterLib::Parameter<double>
const
&
D0_
;
49
double
const
Ea_
;
51
double
const
T0_
;
52
};
53
}
// namespace MaterialPropertyLib
Property.h
Parameter.h
VariableType.h
MaterialPropertyLib::Property
Definition
MaterialLib/MPL/Property.h:44
MaterialPropertyLib::Property::value
virtual PropertyDataType value() const
Definition
MaterialLib/MPL/Property.cpp:67
MaterialPropertyLib::TemperatureDependentDiffusion::D0_
ParameterLib::Parameter< double > const & D0_
the molecular diffusion at the reference temperature
Definition
TemperatureDependentDiffusion.h:47
MaterialPropertyLib::TemperatureDependentDiffusion::Ea_
double const Ea_
the activation energy for diffusion
Definition
TemperatureDependentDiffusion.h:49
MaterialPropertyLib::TemperatureDependentDiffusion::checkScale
void checkScale() const override
Definition
TemperatureDependentDiffusion.cpp:14
MaterialPropertyLib::TemperatureDependentDiffusion::T0_
double const T0_
the reference temperature
Definition
TemperatureDependentDiffusion.h:51
MaterialPropertyLib::TemperatureDependentDiffusion::TemperatureDependentDiffusion
TemperatureDependentDiffusion(ParameterLib::Parameter< double > const &D0, double const Ea, double const T0)
Definition
TemperatureDependentDiffusion.h:30
MaterialPropertyLib::VariableArray
Definition
VariableType.h:94
ParameterLib::SpatialPosition
Definition
SpatialPosition.h:21
MaterialPropertyLib
Definition
ChemicalSolverInterface.h:98
MaterialPropertyLib::PropertyDataType
std::variant< double, Eigen::Matrix< double, 2, 1 >, Eigen::Matrix< double, 3, 1 >, Eigen::Matrix< double, 2, 2 >, Eigen::Matrix< double, 3, 3 >, Eigen::Matrix< double, 4, 1 >, Eigen::Matrix< double, 6, 1 >, Eigen::MatrixXd > PropertyDataType
Definition
MaterialLib/MPL/Property.h:24
ParameterLib::Parameter
Definition
ParameterLib/Parameter.h:134
MaterialLib
MPL
Properties
TemperatureDependentDiffusion.h
Generated by
1.14.0