OGS
Curve.h
Go to the documentation of this file.
1
10#pragma once
11
15
16namespace MaterialPropertyLib
17{
22class Curve final : public Property
23{
24public:
27 Curve(std::string name, Variable const independent_variable,
29
32 PropertyDataType value(VariableArray const& variable_array,
34 double const t, double const dt) const override;
35
38 PropertyDataType dValue(VariableArray const& variable_array,
39 Variable const variable,
40 ParameterLib::SpatialPosition const& /*pos*/,
41 double const /*t*/,
42 double const /*dt*/) const override;
43
44private:
49};
50} // namespace MaterialPropertyLib
Definition of the PiecewiseLinearInterpolation class.
PropertyDataType dValue(VariableArray const &variable_array, Variable const variable, ParameterLib::SpatialPosition const &, double const, double const) const override
Definition Curve.cpp:31
MathLib::PiecewiseLinearInterpolation const & curve_
The curve used by the property.
Definition Curve.h:48
Variable const independent_variable_
The variable type that the curve property depends on.
Definition Curve.h:46
Curve(std::string name, Variable const independent_variable, MathLib::PiecewiseLinearInterpolation const &curve)
Definition Curve.cpp:15
virtual PropertyDataType value() const
Definition Property.cpp:76
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