16 #ifndef dealii_tensor_function_parser_h 17 #define dealii_tensor_function_parser_h 111 template <
int rank,
int dim,
typename Number =
double>
132 const std::string &expression,
133 const std::string &constants =
"",
134 const std::string &variable_names = default_variable_names() +
",t");
209 initialize(
const std::string & vars,
210 const std::vector<std::string> &expressions,
212 const bool time_dependent =
false);
222 initialize(
const std::string &vars,
223 const std::string &expression,
225 const bool time_dependent =
false);
233 default_variable_names();
252 const std::vector<std::string> &
253 get_expressions()
const;
262 <<
"Parsing Error at Column " << arg1
263 <<
". The parser said: " << arg2);
268 <<
"The number of components (" << arg1
269 <<
") is not equal to the number of expressions (" << arg2
275 #ifdef DEAL_II_WITH_MUPARSER 308 init_muparser()
const;
339 template <
int rank,
int dim,
typename Number>
#define DeclException2(Exception2, type1, type2, outsequence)
std::map< std::string, double > constants
A class that provides a separate storage location on each thread that accesses the object...
std::map< std::string, double > ConstMap
unsigned int n_components
Threads::ThreadLocalStorage< std::vector< std::unique_ptr< mu::Parser > > > tfp
static std::string default_variable_names()
#define Assert(cond, exc)
#define DEAL_II_NAMESPACE_CLOSE
std::vector< std::string > expressions
#define DEAL_II_NAMESPACE_OPEN
Threads::ThreadLocalStorage< std::vector< double > > vars
static ::ExceptionBase & ExcNotImplemented()
std::vector< std::string > var_names