20 #ifndef LIBMESH_PARSED_FEM_FUNCTION_PARAMETER_H 21 #define LIBMESH_PARSED_FEM_FUNCTION_PARAMETER_H 25 #include "libmesh/libmesh_common.h" 26 #include "libmesh/parameter_accessor.h" 35 template <
typename T>
class ParsedFEMFunction;
49 template <
typename T=Number>
65 std::string param_name) :
77 virtual void set (
const T & new_value)
override {
84 virtual const T &
get ()
const override {
92 virtual std::unique_ptr<ParameterAccessor<T>>
clone()
const override {
93 return std::make_unique<ParsedFEMFunctionParameter<T>>(
_func,
_name);
108 #endif // LIBMESH_PARSED_FEM_FUNCTION_PARAMETER_H
virtual ParameterAccessor< T > & operator=(T *)
A simple reseater won't work with a parsed function.
The libMesh namespace provides an interface to certain functionality in the library.
ParsedFEMFunctionParameter(ParsedFEMFunction< T > &func_ref, std::string param_name)
Constructor: take the function to be modified and the name of the inline variable within it which rep...
Output get_inline_value(std::string_view inline_var_name) const
ParsedFEMFunction< T > & _func
virtual std::unique_ptr< ParameterAccessor< T > > clone() const override
void set_inline_value(std::string_view inline_var_name, Output newval)
Changes the value of an inline variable.
libMesh::Number _current_val
Accessor object allowing reading and modification of the independent variables in a parameter sensiti...
Accessor object allowing reading and modification of the independent variables in a parameter sensiti...