OGS
|
A parameter class looking for values from indices in a property vector. This class can be used for material ID dependent parameters.
Definition at line 31 of file GroupBasedParameter.h.
#include <GroupBasedParameter.h>
Classes | |
struct | type |
Public Member Functions | |
GroupBasedParameter (std::string const &name_, MeshLib::Mesh const &mesh, MeshLib::PropertyVector< int > const &property, std::map< int, std::vector< double > > vec_values) | |
bool | isTimeDependent () const override |
int | getNumberOfGlobalComponents () const override |
std::vector< T > | operator() (double const, SpatialPosition const &pos) const override |
Returns the parameter value at the given time and position. | |
Public Member Functions inherited from ParameterLib::Parameter< T > | |
~Parameter () override=default | |
virtual Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > | getNodalValuesOnElement (MeshLib::Element const &element, double const t) const |
Returns a matrix of values for all nodes of the given element. | |
ParameterBase (std::string name_, MeshLib::Mesh const *mesh=nullptr) | |
Public Member Functions inherited from ParameterLib::ParameterBase | |
ParameterBase (std::string name_, MeshLib::Mesh const *mesh=nullptr) | |
virtual | ~ParameterBase ()=default |
void | setCoordinateSystem (CoordinateSystem const &coordinate_system) |
virtual void | initialize (std::vector< std::unique_ptr< ParameterBase > > const &) |
MeshLib::Mesh const * | mesh () const |
Static Private Member Functions | |
static std::optional< std::size_t > | getMeshItemID (SpatialPosition const &pos, type< MeshLib::MeshItemType::Cell >) |
static std::optional< std::size_t > | getMeshItemID (SpatialPosition const &pos, type< MeshLib::MeshItemType::Node >) |
Private Attributes | |
MeshLib::PropertyVector< int > const & | _property_index |
std::map< int, std::vector< T > > const | _vec_values |
Additional Inherited Members | |
Public Attributes inherited from ParameterLib::ParameterBase | |
std::string const | name |
Protected Member Functions inherited from ParameterLib::ParameterBase | |
std::vector< double > | rotateWithCoordinateSystem (std::vector< double > const &values, SpatialPosition const &pos) const |
Protected Attributes inherited from ParameterLib::ParameterBase | |
std::optional< CoordinateSystem > | _coordinate_system |
MeshLib::Mesh const * | _mesh |
|
inline |
Constructing from a property vector of index and corresponding values
name_ | the parameter's name |
mesh | the parameter's domain of definition. |
property | a property vector of index for mesh items |
vec_values | a vector of values for each index |
Definition at line 41 of file GroupBasedParameter.h.
|
inlinestaticprivate |
Definition at line 88 of file GroupBasedParameter.h.
References ParameterLib::SpatialPosition::getElementID().
Referenced by ParameterLib::GroupBasedParameter< T, MeshItemType >::operator()().
|
inlinestaticprivate |
Definition at line 95 of file GroupBasedParameter.h.
References ParameterLib::SpatialPosition::getNodeID().
|
inlineoverridevirtual |
Returns the number of components this Parameter has at every position and point in time.
Implements ParameterLib::Parameter< T >.
Definition at line 54 of file GroupBasedParameter.h.
References ParameterLib::GroupBasedParameter< T, MeshItemType >::_vec_values.
|
inlineoverridevirtual |
Implements ParameterLib::ParameterBase.
Definition at line 52 of file GroupBasedParameter.h.
|
inlineoverridevirtual |
Returns the parameter value at the given time and position.
Implements ParameterLib::Parameter< T >.
Definition at line 61 of file GroupBasedParameter.h.
References ParameterLib::ParameterBase::_coordinate_system, ParameterLib::GroupBasedParameter< T, MeshItemType >::_property_index, ParameterLib::GroupBasedParameter< T, MeshItemType >::_vec_values, ParameterLib::GroupBasedParameter< T, MeshItemType >::getMeshItemID(), OGS_FATAL, and ParameterLib::ParameterBase::rotateWithCoordinateSystem().
|
private |
Definition at line 102 of file GroupBasedParameter.h.
Referenced by ParameterLib::GroupBasedParameter< T, MeshItemType >::operator()().
|
private |
Definition at line 103 of file GroupBasedParameter.h.
Referenced by ParameterLib::GroupBasedParameter< T, MeshItemType >::getNumberOfGlobalComponents(), and ParameterLib::GroupBasedParameter< T, MeshItemType >::operator()().