OGS
Permeability.h
Go to the documentation of this file.
1
10
#pragma once
11
12
#include <Eigen/Core>
13
14
#include "
BaseLib/Error.h
"
15
#include "
ParameterLib/Parameter.h
"
16
17
namespace
MaterialLib
18
{
19
namespace
PorousMedium
20
{
24
class
Permeability
25
{
26
public
:
27
explicit
Permeability
(
28
ParameterLib::Parameter<double>
const
& permeability_parameter,
29
int
const
dimension)
30
:
_permeability_parameter
(permeability_parameter),
_dimension
(dimension)
31
{
32
if
(permeability_parameter.
getNumberOfGlobalComponents
() !=
33
_dimension
*
_dimension
)
34
{
35
OGS_FATAL(
36
"The given parameter has {:d} components, but the permeability "
37
"tensor is defined for a {:d} dimensional problem."
,
38
permeability_parameter.getNumberOfGlobalComponents(),
39
_dimension);
40
}
41
}
42
43
virtual
~Permeability
() =
default
;
44
52
virtual
Eigen::MatrixXd
getValue
(
const
double
t,
53
ParameterLib::SpatialPosition
const
& pos,
54
const
double
variable,
55
const
double
temperature)
const
56
{
57
(void)variable;
58
(void)temperature;
59
60
return
Eigen::Map<Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic,
61
Eigen::RowMajor>
const
>(
62
_permeability_parameter
(t, pos).data(),
_dimension
,
_dimension
);
63
}
64
65
private
:
66
ParameterLib::Parameter<double>
const
&
_permeability_parameter
;
67
int
const
_dimension
;
68
};
69
70
}
// namespace PorousMedium
71
}
// namespace MaterialLib
Error.h
Parameter.h
MaterialLib::PorousMedium::Permeability
Definition
Permeability.h:25
MaterialLib::PorousMedium::Permeability::~Permeability
virtual ~Permeability()=default
MaterialLib::PorousMedium::Permeability::_dimension
int const _dimension
Definition
Permeability.h:67
MaterialLib::PorousMedium::Permeability::Permeability
Permeability(ParameterLib::Parameter< double > const &permeability_parameter, int const dimension)
Definition
Permeability.h:27
MaterialLib::PorousMedium::Permeability::getValue
virtual Eigen::MatrixXd getValue(const double t, ParameterLib::SpatialPosition const &pos, const double variable, const double temperature) const
Definition
Permeability.h:52
MaterialLib::PorousMedium::Permeability::_permeability_parameter
ParameterLib::Parameter< double > const & _permeability_parameter
Definition
Permeability.h:66
ParameterLib::SpatialPosition
Definition
SpatialPosition.h:27
MaterialLib
Definition
ConstantFluidProperty.h:18
ParameterLib::Parameter
Definition
WellboreGeometry.h:23
ParameterLib::Parameter::getNumberOfGlobalComponents
virtual int getNumberOfGlobalComponents() const =0
MaterialLib
PorousMedium
Permeability
Permeability.h
Generated by
1.12.0