OGS
MaterialLib::PorousMedium::Permeability Class Reference

Detailed Description

The class implements a basic permeability model that employs a parameter (for instance a constant parameter or mesh cell dependent parameter) to fill the intrinsic permeability tensor.

Definition at line 24 of file Permeability.h.

#include <Permeability.h>

Inheritance diagram for MaterialLib::PorousMedium::Permeability:
[legend]
Collaboration diagram for MaterialLib::PorousMedium::Permeability:
[legend]

Public Member Functions

 Permeability (ParameterLib::Parameter< double > const &permeability_parameter, int const dimension)
 
virtual ~Permeability ()=default
 
virtual Eigen::MatrixXd getValue (const double t, ParameterLib::SpatialPosition const &pos, const double variable, const double temperature) const
 

Private Attributes

ParameterLib::Parameter< double > const & _permeability_parameter
 
int const _dimension
 

Constructor & Destructor Documentation

◆ Permeability()

MaterialLib::PorousMedium::Permeability::Permeability ( ParameterLib::Parameter< double > const & permeability_parameter,
int const dimension )
inlineexplicit

Definition at line 27 of file Permeability.h.

30 : _permeability_parameter(permeability_parameter), _dimension(dimension)
31 {
32 if (permeability_parameter.getNumberOfGlobalComponents() !=
34 {
36 "The given parameter has {:d} components, but the permeability "
37 "tensor is defined for a {:d} dimensional problem.",
38 permeability_parameter.getNumberOfGlobalComponents(),
40 }
41 }
#define OGS_FATAL(...)
Definition Error.h:26
ParameterLib::Parameter< double > const & _permeability_parameter
virtual int getNumberOfGlobalComponents() const =0

References _dimension, ParameterLib::Parameter< T >::getNumberOfGlobalComponents(), and OGS_FATAL.

◆ ~Permeability()

virtual MaterialLib::PorousMedium::Permeability::~Permeability ( )
virtualdefault

Member Function Documentation

◆ getValue()

virtual Eigen::MatrixXd MaterialLib::PorousMedium::Permeability::getValue ( const double t,
ParameterLib::SpatialPosition const & pos,
const double variable,
const double temperature ) const
inlinevirtual

Get the intrinsic permeability tensor.

Parameters
tpoint in time
posspatial position
variableA variable with any double type value.
temperatureTemperature with any double type value.

Reimplemented in MaterialLib::PorousMedium::DupuitPermeability.

Definition at line 52 of file Permeability.h.

56 {
57 (void)variable;
58 (void)temperature;
59
60 return Eigen::Map<Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic,
61 Eigen::RowMajor> const>(
63 }

References _dimension, and _permeability_parameter.

Referenced by MaterialLib::PorousMedium::DupuitPermeability::getValue().

Member Data Documentation

◆ _dimension

int const MaterialLib::PorousMedium::Permeability::_dimension
private

Definition at line 67 of file Permeability.h.

Referenced by Permeability(), and getValue().

◆ _permeability_parameter

ParameterLib::Parameter<double> const& MaterialLib::PorousMedium::Permeability::_permeability_parameter
private

Definition at line 66 of file Permeability.h.

Referenced by getValue().


The documentation for this class was generated from the following file: