Loading [MathJax]/extensions/tex2jax.js
OGS
Exponential.h
Go to the documentation of this file.
1
10#pragma once
11
14
15namespace MaterialPropertyLib
16{
17using StringOrVariable = std::variant<std::string, Variable>;
26
41class Exponential final : public Property
42{
43public:
47 Exponential(std::string name,
48 double const offset,
49 PropertyDataType const& property_reference_value,
50 ExponentData const& v);
53 PropertyDataType value(VariableArray const& variable_array,
55 double const t, double const dt) const override;
58 PropertyDataType dValue(VariableArray const& variable_array,
59 Variable const variable,
60 ParameterLib::SpatialPosition const& /*pos*/,
61 double const /*t*/,
62 double const /*dt*/) const override;
65 PropertyDataType d2Value(VariableArray const& variable_array,
66 Variable const pv1, Variable const pv2,
67 ParameterLib::SpatialPosition const& /*pos*/,
68 double const /*t*/,
69 double const /*dt*/) const override;
70
71private:
73 double const offset_;
74};
75} // namespace MaterialPropertyLib
double const offset_
additive offset in units of the property.
Definition Exponential.h:73
ExponentData const exponent_data_
Definition Exponential.h:72
PropertyDataType dValue(VariableArray const &variable_array, Variable const variable, ParameterLib::SpatialPosition const &, double const, double const) const override
Exponential(std::string name, double const offset, PropertyDataType const &property_reference_value, ExponentData const &v)
PropertyDataType d2Value(VariableArray const &variable_array, Variable const pv1, Variable const pv2, ParameterLib::SpatialPosition const &, double const, double const) const override
virtual PropertyDataType value() const
Definition Property.cpp:76
std::variant< std::monostate, double, Eigen::Vector< double, 4 >, Eigen::Vector< double, 5 >, Eigen::Vector< double, 6 >, Eigen::Vector< double, 9 > > VariableType
std::variant< std::string, Variable > StringOrVariable
Definition Curve.h:18
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 >, Eigen::MatrixXd > PropertyDataType
Definition Property.h:31
VariableType factor
a dimensionless exponent.
Definition Exponential.h:24