16 #include "libmesh/fparser_ad.hh" 21 #define usingFunctionParserUtilsMembers(T) \ 22 using typename FunctionParserUtils<T>::SymFunction; \ 23 using typename FunctionParserUtils<T>::SymFunctionPtr; \ 24 using typename FunctionParserUtils<T>::FailureMethod; \ 25 using FunctionParserUtils<T>::evaluate; \ 26 using FunctionParserUtils<T>::functionsOptimize; \ 27 using FunctionParserUtils<T>::setParserFeatureFlags; \ 28 using FunctionParserUtils<T>::addFParserConstants; \ 29 using FunctionParserUtils<T>::_enable_jit; \ 30 using FunctionParserUtils<T>::_enable_ad_cache; \ 31 using FunctionParserUtils<T>::_disable_fpoptimizer; \ 32 using FunctionParserUtils<T>::_enable_auto_optimize; \ 33 using FunctionParserUtils<T>::_eval_error_msg; \ 34 using FunctionParserUtils<T>::_func_params 40 typedef FunctionParserADBase<Real>
type;
53 template <
bool is_ad = false>
76 const std::vector<std::string> & constant_names,
77 const std::vector<std::string> & constant_expressions);
GenericReal< is_ad > evaluate(SymFunctionPtr &, const std::string &object_name="")
Evaluate FParser object and check EvalError.
typename GenericSymFunctionTempl< is_ad >::type GenericSymFunction
std::shared_ptr< SymFunction > SymFunctionPtr
Shorthand for an smart pointer to an autodiff function parser object.
FunctionParserUtils(const InputParameters ¶meters)
FunctionParserADBase< Real > type
virtual void functionsOptimize(SymFunctionPtr &parsed_function)
void addFParserConstants(SymFunctionPtr &parser, const std::vector< std::string > &constant_names, const std::vector< std::string > &constant_expressions)
add constants (which can be complex expressions) to the parser object
GenericSymFunction< is_ad > SymFunction
Shorthand for an autodiff function parser object.
enum FunctionParserUtils::FailureMethod _evalerror_behavior
FailureMethod
Enum for failure method.
const Real _quiet_nan
appropriate not a number value to return
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
bool _disable_fpoptimizer
static const char * _eval_error_msg[]
table of FParser eval error codes
std::vector< GenericReal< is_ad > > _func_params
Array to stage the parameters passed to the functions when calling Eval.
static InputParameters validParams()
typename Moose::GenericType< Real, is_ad > GenericReal
bool _enable_auto_optimize
void setParserFeatureFlags(SymFunctionPtr &)
apply input paramters to internal feature flags of the parser object