OGS
Exponential.h
Go to the documentation of this file.
1 
10 #pragma once
11 
14 
15 namespace MaterialPropertyLib
16 {
18 {
24 };
25 
40 class Exponential final : public Property
41 {
42 public:
46  Exponential(std::string name,
47  double const offset,
48  PropertyDataType const& property_reference_value,
49  ExponentData const& v);
52  PropertyDataType value(VariableArray const& variable_array,
54  double const t, double const dt) const override;
57  PropertyDataType dValue(VariableArray const& variable_array,
58  Variable const primary_variable,
59  ParameterLib::SpatialPosition const& /*pos*/,
60  double const /*t*/,
61  double const /*dt*/) const override;
64  PropertyDataType d2Value(VariableArray const& variable_array,
65  Variable const pv1, Variable const pv2,
66  ParameterLib::SpatialPosition const& /*pos*/,
67  double const /*t*/,
68  double const /*dt*/) const override;
69 
70 private:
72  double const offset_;
73 };
74 } // namespace MaterialPropertyLib
double const offset_
additive offset in units of the property.
Definition: Exponential.h:72
ExponentData const exponent_data_
Definition: Exponential.h:71
Exponential(std::string name, double const offset, PropertyDataType const &property_reference_value, ExponentData const &v)
Definition: Exponential.cpp:18
PropertyDataType d2Value(VariableArray const &variable_array, Variable const pv1, Variable const pv2, ParameterLib::SpatialPosition const &, double const, double const) const override
Definition: Exponential.cpp:59
PropertyDataType dValue(VariableArray const &variable_array, Variable const primary_variable, ParameterLib::SpatialPosition const &, double const, double const) const override
Definition: Exponential.cpp:42
virtual PropertyDataType value() const
Definition: Property.cpp:72
std::variant< std::monostate, double, Vector, Eigen::Matrix< double, 4, 1 >, Eigen::Matrix< double, 6, 1 > > VariableType
Definition: VariableType.h:102
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 > > PropertyDataType
Definition: Property.h:35
std::array< VariableType, static_cast< int >(Variable::number_of_variables)> VariableArray
Definition: VariableType.h:108
VariableType factor
a dimensionless exponent.
Definition: Exponential.h:23