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:
Collaboration diagram for MaterialLib::PorousMedium::Permeability:

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 

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
Definition: Permeability.h:66
virtual int getNumberOfGlobalComponents() const =0

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

◆ ~Permeability()

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

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

Get the intrinsic permeability tensor.

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;
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

Definition at line 67 of file Permeability.h.

Referenced by Permeability(), and getValue().

◆ _permeability_parameter

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

Definition at line 66 of file Permeability.h.

Referenced by getValue().

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