NumeRe v1.1.4
NumeRe: Framework für Numerische Rechnungen
mu Namespace Reference

Namespace for mathematical applications. More...

Namespaces

namespace  Test
 Namespace for test cases.
 

Classes

struct  Cache
 Describes the cache of a single expression. Might contain multiple cached data accesses. More...
 
struct  CachedDataAccess
 Describes an already evaluated data access, which can be reconstructed from the current parser state. More...
 
struct  ExpressionTarget
 This structure defines the overall expression target, if it is composed out of a temporary vector like {a,b}. More...
 
struct  LineStateStack
 This is the parser state stack for a whole command line. Might contain multiple single states and cached data accesses. More...
 
struct  MathImpl
 A template class for providing wrappers for essential math functions. More...
 
class  Parser
 Mathematical expressions parser. More...
 
class  ParserBase
 Mathematical expressions parser (base parser engine). More...
 
class  ParserByteCode
 Bytecode implementation of the Math Parser. More...
 
class  ParserCallback
 Encapsulation of prototypes for a numerical parser function. More...
 
class  ParserError
 Error class of the parser. More...
 
class  ParserErrorMsg
 A class that handles the error messages. More...
 
class  ParserInt
 Mathematical expressions parser. More...
 
class  ParserStack
 Parser stack implementation. More...
 
class  ParserToken
 Encapsulation of the data for a single formula token. More...
 
class  ParserTokenReader
 Token reader for the ParserBase class. More...
 
struct  State
 Defines a single parser state, which contains all necessary information for evaluating a single expression. More...
 
struct  StateStacks
 This is a stack of all parser line state stacks. Can be used to gather a bunch of already parsed command lines together. More...
 
struct  SToken
 
struct  TypeInfo
 A class singling out integer types at compile time using template meta programming. More...
 
struct  TypeInfo< char >
 
struct  TypeInfo< int >
 
struct  TypeInfo< long >
 
struct  TypeInfo< short >
 
struct  TypeInfo< unsigned char >
 
struct  TypeInfo< unsigned int >
 
struct  TypeInfo< unsigned long >
 
struct  TypeInfo< unsigned short >
 
struct  VectorEvaluation
 This structure contains the necessary data to resolve all preevaluated vectors. More...
 

Typedefs

typedef std::map< std::string, std::vector< value_type > > vectormap_type
 
typedef std::map< string_type, ParserCallbackfunmap_type
 Container for Callback objects. More...
 
typedef MUP_BASETYPE value_type
 The numeric datatype used by the parser. More...
 
typedef std::string string_type
 The stringtype used by the parser. More...
 
typedef string_type::value_type char_type
 The character type used by the parser. More...
 
typedef std::basic_stringstream< char_type, std::char_traits< char_type >, std::allocator< char_type > > stringstream_type
 Typedef for easily using stringstream that respect the parser stringtype. More...
 
typedef std::map< string_type, value_type * > varmap_type
 Type used for storing variables. More...
 
typedef std::map< string_type, value_typevalmap_type
 Type used for storing constants. More...
 
typedef std::map< string_type, std::size_t > strmap_type
 Type for assigning a string name to an index in the internal string table. More...
 
typedef std::vector< value_typevalbuf_type
 Type used for storing an array of values. More...
 
typedef value_type(* generic_fun_type) ()
 Callback type used for functions without arguments. More...
 
typedef value_type(* fun_type0) ()
 Callback type used for functions without arguments. More...
 
typedef value_type(* fun_type1) (const value_type &)
 Callback type used for functions with a single arguments. More...
 
typedef value_type(* fun_type2) (const value_type &, const value_type &)
 Callback type used for functions with two arguments. More...
 
typedef value_type(* fun_type3) (const value_type &, const value_type &, const value_type &)
 Callback type used for functions with three arguments. More...
 
typedef value_type(* fun_type4) (const value_type &, const value_type &, const value_type &, const value_type &)
 Callback type used for functions with four arguments. More...
 
typedef value_type(* fun_type5) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* fun_type6) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* fun_type7) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* fun_type8) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* fun_type9) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* fun_type10) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* bulkfun_type0) (int, int)
 Callback type used for functions without arguments. More...
 
typedef value_type(* bulkfun_type1) (int, int, value_type)
 Callback type used for functions with a single arguments. More...
 
typedef value_type(* bulkfun_type2) (int, int, value_type, value_type)
 Callback type used for functions with two arguments. More...
 
typedef value_type(* bulkfun_type3) (int, int, value_type, value_type, value_type)
 Callback type used for functions with three arguments. More...
 
typedef value_type(* bulkfun_type4) (int, int, value_type, value_type, value_type, value_type)
 Callback type used for functions with four arguments. More...
 
typedef value_type(* bulkfun_type5) (int, int, value_type, value_type, value_type, value_type, value_type)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* bulkfun_type6) (int, int, value_type, value_type, value_type, value_type, value_type, value_type)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* bulkfun_type7) (int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* bulkfun_type8) (int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* bulkfun_type9) (int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* bulkfun_type10) (int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type)
 Callback type used for functions with five arguments. More...
 
typedef value_type(* multfun_type) (const value_type *, int)
 Callback type used for functions with a variable argument list. More...
 
typedef value_type(* strfun_type1) (const char_type *)
 Callback type used for functions taking a string as an argument. More...
 
typedef value_type(* strfun_type2) (const char_type *, value_type)
 Callback type used for functions taking a string and a value as arguments. More...
 
typedef value_type(* strfun_type3) (const char_type *, value_type, value_type)
 Callback type used for functions taking a string and two values as arguments. More...
 
typedef int(* identfun_type) (const char_type *sExpr, int *nPos, value_type *fVal)
 Callback used for functions that identify values in a string. More...
 
typedef value_type *(* facfun_type) (const char_type *, void *)
 Callback used for variable creation factory functions. More...
 

Enumerations

enum  ECmdCode {
  cmLE , cmGE , cmNEQ , cmEQ ,
  cmLT , cmGT , cmADD , cmSUB ,
  cmMUL , cmDIV , cmPOW , cmLAND ,
  cmLOR , cmASSIGN , cmBO , cmBC ,
  cmIF , cmELSE , cmENDIF , cmARG_SEP ,
  cmVAL , cmVAR , cmVARPOW2 , cmVARPOW3 ,
  cmVARPOW4 , cmVARPOWN , cmVARMUL , cmVAR_END ,
  cmFUNC , cmFUNC_STR , cmFUNC_BULK , cmSTRING ,
  cmOPRT_BIN , cmOPRT_POSTFIX , cmOPRT_INFIX , cmEND ,
  cmUNKNOWN
}
 Bytecode values. More...
 
enum  ETypeCode { tpSTR = 0 , tpDBL = 1 , tpVOID = 2 }
 Types internally used by the parser. More...
 
enum  EParserVersionInfo { pviBRIEF , pviFULL }
 
enum  EOprtAssociativity { oaLEFT = 0 , oaRIGHT = 1 , oaNONE = 2 }
 Parser operator precedence values. More...
 
enum  EOprtPrecedence {
  prLOR = 1 , prLAND = 2 , prLOGIC = 3 , prCMP = 4 ,
  prADD_SUB = 5 , prMUL_DIV = 6 , prPOW = 7 , prINFIX = 6 ,
  prPOSTFIX = 6
}
 Parser operator precedence values. More...
 
enum  EErrorCodes {
  ecUNEXPECTED_OPERATOR = 0 , ecUNASSIGNABLE_TOKEN = 1 , ecUNEXPECTED_EOF = 2 , ecUNEXPECTED_ARG_SEP = 3 ,
  ecUNEXPECTED_ARG = 4 , ecUNEXPECTED_VAL = 5 , ecUNEXPECTED_VAR = 6 , ecUNEXPECTED_PARENS = 7 ,
  ecUNEXPECTED_STR = 8 , ecSTRING_EXPECTED = 9 , ecVAL_EXPECTED = 10 , ecMISSING_PARENS = 11 ,
  ecUNEXPECTED_FUN = 12 , ecUNTERMINATED_STRING = 13 , ecTOO_MANY_PARAMS = 14 , ecTOO_FEW_PARAMS = 15 ,
  ecOPRT_TYPE_CONFLICT = 16 , ecSTR_RESULT = 17 , ecINVALID_NAME = 18 , ecINVALID_BINOP_IDENT = 19 ,
  ecINVALID_INFIX_IDENT = 20 , ecINVALID_POSTFIX_IDENT = 21 , ecBUILTIN_OVERLOAD = 22 , ecINVALID_FUN_PTR = 23 ,
  ecINVALID_VAR_PTR = 24 , ecEMPTY_EXPRESSION = 25 , ecNAME_CONFLICT = 26 , ecOPT_PRI = 27 ,
  ecDOMAIN_ERROR = 28 , ecDIV_BY_ZERO = 29 , ecGENERIC = 30 , ecLOCALE = 31 ,
  ecUNEXPECTED_CONDITIONAL = 32 , ecMISSING_ELSE_CLAUSE = 33 , ecMISPLACED_COLON = 34 , ecINTERNAL_ERROR = 35 ,
  ecCOUNT , ecUNDEFINED = -1
}
 Error codes. More...
 

Functions

std::vector< double > real (const std::vector< value_type > &vVec)
 
std::vector< double > imag (const std::vector< value_type > &vVec)
 
value_type rint (value_type v)
 
std::vector< value_typeparser_logtoidx (const value_type *v, int n)
 Adaption of the logtoidx() function for 1D data arrays. More...
 
std::vector< value_typeparser_idxtolog (const value_type *v, int n)
 Adaption of the idxtolog() function for 1D data arrays. More...
 
value_type operator* (const value_type &__x, const value_type &__y)
 Custom implementation for the complex multiplication operator with a scalar optimization. More...
 
value_type operator/ (const value_type &__x, const value_type &__y)
 Custom implementation for the complex division operator with a scalar optimization. More...
 
static bool stepIsStillPossible (const mu::value_type &current, const mu::value_type &last, const mu::value_type &d)
 Determines, whether the passed step is still in valid range and therefore can be done to expand the vector. More...
 
static std::string printVector (const valbuf_type &buffer, int nElems)
 Simple helper function to print the buffer's contents. More...
 
static bool isDelim (char c)
 
std::ostream & console ()
 Encapsulate cout. More...
 
std::istream & console_in ()
 Encapsulate cin. More...
 
bool isinf (const value_type &v)
 
bool isnan (const value_type &v)
 
bool isreal (value_type *v, int nElem)
 

Detailed Description

Namespace for mathematical applications.

Typedef Documentation

◆ bulkfun_type0

typedef value_type(* mu::bulkfun_type0) (int, int)

Callback type used for functions without arguments.

Definition at line 323 of file muParserDef.h.

◆ bulkfun_type1

typedef value_type(* mu::bulkfun_type1) (int, int, value_type)

Callback type used for functions with a single arguments.

Definition at line 326 of file muParserDef.h.

◆ bulkfun_type10

Callback type used for functions with five arguments.

Definition at line 353 of file muParserDef.h.

◆ bulkfun_type2

typedef value_type(* mu::bulkfun_type2) (int, int, value_type, value_type)

Callback type used for functions with two arguments.

Definition at line 329 of file muParserDef.h.

◆ bulkfun_type3

typedef value_type(* mu::bulkfun_type3) (int, int, value_type, value_type, value_type)

Callback type used for functions with three arguments.

Definition at line 332 of file muParserDef.h.

◆ bulkfun_type4

typedef value_type(* mu::bulkfun_type4) (int, int, value_type, value_type, value_type, value_type)

Callback type used for functions with four arguments.

Definition at line 335 of file muParserDef.h.

◆ bulkfun_type5

typedef value_type(* mu::bulkfun_type5) (int, int, value_type, value_type, value_type, value_type, value_type)

Callback type used for functions with five arguments.

Definition at line 338 of file muParserDef.h.

◆ bulkfun_type6

typedef value_type(* mu::bulkfun_type6) (int, int, value_type, value_type, value_type, value_type, value_type, value_type)

Callback type used for functions with five arguments.

Definition at line 341 of file muParserDef.h.

◆ bulkfun_type7

typedef value_type(* mu::bulkfun_type7) (int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type)

Callback type used for functions with five arguments.

Definition at line 344 of file muParserDef.h.

◆ bulkfun_type8

Callback type used for functions with five arguments.

Definition at line 347 of file muParserDef.h.

◆ bulkfun_type9

Callback type used for functions with five arguments.

Definition at line 350 of file muParserDef.h.

◆ char_type

typedef string_type::value_type mu::char_type

The character type used by the parser.

Depends on wether UNICODE is used or not.

Definition at line 263 of file muParserDef.h.

◆ facfun_type

typedef value_type *(* mu::facfun_type) (const char_type *, void *)

Callback used for variable creation factory functions.

Definition at line 371 of file muParserDef.h.

◆ fun_type0

typedef value_type(* mu::fun_type0) ()

Callback type used for functions without arguments.

Definition at line 290 of file muParserDef.h.

◆ fun_type1

typedef value_type(* mu::fun_type1) (const value_type &)

Callback type used for functions with a single arguments.

Definition at line 293 of file muParserDef.h.

◆ fun_type10

typedef value_type(* mu::fun_type10) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)

Callback type used for functions with five arguments.

Definition at line 320 of file muParserDef.h.

◆ fun_type2

typedef value_type(* mu::fun_type2) (const value_type &, const value_type &)

Callback type used for functions with two arguments.

Definition at line 296 of file muParserDef.h.

◆ fun_type3

typedef value_type(* mu::fun_type3) (const value_type &, const value_type &, const value_type &)

Callback type used for functions with three arguments.

Definition at line 299 of file muParserDef.h.

◆ fun_type4

typedef value_type(* mu::fun_type4) (const value_type &, const value_type &, const value_type &, const value_type &)

Callback type used for functions with four arguments.

Definition at line 302 of file muParserDef.h.

◆ fun_type5

typedef value_type(* mu::fun_type5) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)

Callback type used for functions with five arguments.

Definition at line 305 of file muParserDef.h.

◆ fun_type6

typedef value_type(* mu::fun_type6) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)

Callback type used for functions with five arguments.

Definition at line 308 of file muParserDef.h.

◆ fun_type7

typedef value_type(* mu::fun_type7) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)

Callback type used for functions with five arguments.

Definition at line 311 of file muParserDef.h.

◆ fun_type8

typedef value_type(* mu::fun_type8) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)

Callback type used for functions with five arguments.

Definition at line 314 of file muParserDef.h.

◆ fun_type9

typedef value_type(* mu::fun_type9) (const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)

Callback type used for functions with five arguments.

Definition at line 317 of file muParserDef.h.

◆ funmap_type

Container for Callback objects.

Definition at line 113 of file muParserCallback.h.

◆ generic_fun_type

typedef value_type(* mu::generic_fun_type) ()

Callback type used for functions without arguments.

Definition at line 287 of file muParserDef.h.

◆ identfun_type

typedef int(* mu::identfun_type) (const char_type *sExpr, int *nPos, value_type *fVal)

Callback used for functions that identify values in a string.

Definition at line 368 of file muParserDef.h.

◆ multfun_type

typedef value_type(* mu::multfun_type) (const value_type *, int)

Callback type used for functions with a variable argument list.

Definition at line 356 of file muParserDef.h.

◆ strfun_type1

typedef value_type(* mu::strfun_type1) (const char_type *)

Callback type used for functions taking a string as an argument.

Definition at line 359 of file muParserDef.h.

◆ strfun_type2

typedef value_type(* mu::strfun_type2) (const char_type *, value_type)

Callback type used for functions taking a string and a value as arguments.

Definition at line 362 of file muParserDef.h.

◆ strfun_type3

typedef value_type(* mu::strfun_type3) (const char_type *, value_type, value_type)

Callback type used for functions taking a string and two values as arguments.

Definition at line 365 of file muParserDef.h.

◆ string_type

typedef std::string mu::string_type

The stringtype used by the parser.

Depends on wether UNICODE is used or not.

Definition at line 257 of file muParserDef.h.

◆ stringstream_type

typedef std::basic_stringstream<char_type, std::char_traits<char_type>, std::allocator<char_type> > mu::stringstream_type

Typedef for easily using stringstream that respect the parser stringtype.

Definition at line 268 of file muParserDef.h.

◆ strmap_type

typedef std::map<string_type, std::size_t> mu::strmap_type

Type for assigning a string name to an index in the internal string table.

Definition at line 279 of file muParserDef.h.

◆ valbuf_type

typedef std::vector<value_type> mu::valbuf_type

Type used for storing an array of values.

Definition at line 282 of file muParserDef.h.

◆ valmap_type

Type used for storing constants.

Definition at line 276 of file muParserDef.h.

◆ value_type

The numeric datatype used by the parser.

Normally this is a floating point type either single or double precision.

Definition at line 251 of file muParserDef.h.

◆ varmap_type

typedef std::map<string_type, value_type*> mu::varmap_type

Type used for storing variables.

Definition at line 273 of file muParserDef.h.

◆ vectormap_type

typedef std::map<std::string,std::vector<value_type> > mu::vectormap_type

Definition at line 54 of file muParserBase.h.

Enumeration Type Documentation

◆ ECmdCode

Bytecode values.

Attention
The order of the operator entries must match the order in ParserBase::c_DefaultOprt!
Enumerator
cmLE 

Operator item: less or equal.

cmGE 

Operator item: greater or equal.

cmNEQ 

Operator item: not equal.

cmEQ 

Operator item: equals.

cmLT 

Operator item: less than.

cmGT 

Operator item: greater than.

cmADD 

Operator item: add.

cmSUB 

Operator item: subtract.

cmMUL 

Operator item: multiply.

cmDIV 

Operator item: division.

cmPOW 

Operator item: y to the power of ...

cmLAND 
cmLOR 
cmASSIGN 

Operator item: Assignment operator.

cmBO 

Operator item: opening bracket.

cmBC 

Operator item: closing bracket.

cmIF 

For use in the ternary if-then-else operator.

cmELSE 

For use in the ternary if-then-else operator.

cmENDIF 

For use in the ternary if-then-else operator.

cmARG_SEP 

function argument separator

cmVAL 

value item

cmVAR 

variable item

cmVARPOW2 
cmVARPOW3 
cmVARPOW4 
cmVARPOWN 
cmVARMUL 
cmVAR_END 

Only for identifying the end of the variable block.

cmFUNC 

Code for a generic function item.

cmFUNC_STR 

Code for a function with a string parameter.

cmFUNC_BULK 

Special callbacks for Bulk mode with an additional parameter for the bulk index.

cmSTRING 

Code for a string token.

cmOPRT_BIN 

user defined binary operator

cmOPRT_POSTFIX 

code for postfix operators

cmOPRT_INFIX 

code for infix operators

cmEND 

end of formula

cmUNKNOWN 

uninitialized item

Definition at line 152 of file muParserDef.h.

◆ EErrorCodes

Error codes.

Enumerator
ecUNEXPECTED_OPERATOR 

Unexpected binary operator found.

ecUNASSIGNABLE_TOKEN 

Token cant be identified.

ecUNEXPECTED_EOF 

Unexpected end of formula. (Example: "2+sin(")

ecUNEXPECTED_ARG_SEP 

An unexpected comma has been found. (Example: "1,23")

ecUNEXPECTED_ARG 

An unexpected argument has been found.

ecUNEXPECTED_VAL 

An unexpected value token has been found.

ecUNEXPECTED_VAR 

An unexpected variable token has been found.

ecUNEXPECTED_PARENS 

Unexpected Parenthesis, opening or closing.

ecUNEXPECTED_STR 

A string has been found at an inapropriate position.

ecSTRING_EXPECTED 

A string function has been called with a different type of argument.

ecVAL_EXPECTED 

A numerical function has been called with a non value type of argument.

ecMISSING_PARENS 

Missing parens. (Example: "3*sin(3")

ecUNEXPECTED_FUN 

Unexpected function found. (Example: "sin(8)cos(9)")

ecUNTERMINATED_STRING 

unterminated string constant. (Example: "3*valueof("hello)")

ecTOO_MANY_PARAMS 

Too many function parameters.

ecTOO_FEW_PARAMS 

Too few function parameters. (Example: "ite(1<2,2)")

ecOPRT_TYPE_CONFLICT 

binary operators may only be applied to value items of the same type

ecSTR_RESULT 

result is a string

ecINVALID_NAME 

Invalid function, variable or constant name.

ecINVALID_BINOP_IDENT 

Invalid binary operator identifier.

ecINVALID_INFIX_IDENT 

Invalid function, variable or constant name.

ecINVALID_POSTFIX_IDENT 

Invalid function, variable or constant name.

ecBUILTIN_OVERLOAD 

Trying to overload builtin operator.

ecINVALID_FUN_PTR 

Invalid callback function pointer.

ecINVALID_VAR_PTR 

Invalid variable pointer.

ecEMPTY_EXPRESSION 

The Expression is empty.

ecNAME_CONFLICT 

Name conflict.

ecOPT_PRI 

Invalid operator priority.

ecDOMAIN_ERROR 

catch division by zero, sqrt(-1), log(0) (currently unused)

ecDIV_BY_ZERO 

Division by zero (currently unused)

ecGENERIC 

Generic error.

ecLOCALE 

Conflict with current locale.

ecUNEXPECTED_CONDITIONAL 
ecMISSING_ELSE_CLAUSE 
ecMISPLACED_COLON 
ecINTERNAL_ERROR 

Internal error of any kind.

ecCOUNT 

This is no error code, It just stores just the total number of error codes.

ecUNDEFINED 

Undefined message, placeholder to detect unassigned error messages.

Definition at line 49 of file muParserError.h.

◆ EOprtAssociativity

Parser operator precedence values.

Enumerator
oaLEFT 
oaRIGHT 
oaNONE 

Definition at line 219 of file muParserDef.h.

◆ EOprtPrecedence

Parser operator precedence values.

Enumerator
prLOR 
prLAND 
prLOGIC 

logic operators

prCMP 

comparsion operators

prADD_SUB 

addition

prMUL_DIV 

multiplication/division

prPOW 

power operator priority (highest)

prINFIX 

Signs have a higher priority than ADD_SUB, but lower than power operator.

prPOSTFIX 

Postfix operator priority (currently unused)

Definition at line 228 of file muParserDef.h.

◆ EParserVersionInfo

Enumerator
pviBRIEF 
pviFULL 

Definition at line 211 of file muParserDef.h.

◆ ETypeCode

Types internally used by the parser.

Enumerator
tpSTR 

String type (Function arguments and constants only, no string variables)

tpDBL 

Floating point variables.

tpVOID 

Undefined type.

Definition at line 203 of file muParserDef.h.

Function Documentation

◆ console()

◆ console_in()

std::istream & mu::console_in ( )
inline

Encapsulate cin.

Used for supporting UNICODE more easily.

Definition at line 140 of file muParserDef.h.

◆ imag()

std::vector< double > mu::imag ( const std::vector< value_type > &  vVec)

◆ isDelim()

static bool mu::isDelim ( char  c)
static

Definition at line 3690 of file muParserBase.cpp.

Referenced by mu::ParserBase::checkDelimiter().

◆ isinf()

bool mu::isinf ( const value_type v)
inline

Definition at line 374 of file muParserDef.h.

References isinf().

Referenced by Matrix::containsInvalidValues(), Plot::defaultRanges(), differentiate(), evalPoints(), evaluateFittingParams(), findExtrema(), findZeroes(), Fitcontroller::fitctrl(), Fitcontroller::fitfunction(), Fitcontroller::fitfunctionrestricted(), Fitcontroller::fitjacobian(), Fitcontroller::fitjacobianrestricted(), Plot::fitPlotRanges(), getIndices(), handleCasualIndices(), integrate(), integrate2d(), CellValueShader::interpolateColor(), isinf(), isValidValue(), make_stringmatrix(), matrixCmp(), parseCmdArg(), parser_Angstroem(), parser_AssociatedLaguerrePolynomial(), parser_AssociatedLegendrePolynomial(), parser_AstroUnit(), parser_Barn(), parser_beta(), parser_BetheWeizsaecker(), parser_BinAND(), parser_Binom(), parser_BinOR(), parser_Calorie(), parser_Celsius(), parser_clausen(), parser_compare(), parser_cot(), parser_Curie(), parser_digamma(), parser_dilogarithm(), parser_doubleFaculty(), parser_ElectronVolt(), parser_EllipticD(), parser_EllipticE(), parser_EllipticF(), parser_EllipticP(), parser_erf(), parser_erfc(), parser_Faculty(), parser_Fahrenheit(), parser_Fermi(), parser_Foot(), parser_gamma(), parser_Gauss(), parser_Giga(), parser_gRandom(), parser_Heaviside(), parser_HermitePolynomial(), parser_imSphericalHarmonics(), parser_Inch(), parser_is_string(), parser_Kilo(), parser_kmh(), parser_Knoten(), parser_LaguerrePolynomial(), parser_LegendrePolynomial(), parser_Lightyear(), parser_liter(), parser_log_b(), parser_Mega(), parser_Micro(), parser_Mile(), parser_Milli(), parser_Mod(), parser_mol(), parser_mph(), parser_Nano(), parser_Not(), parser_Num(), parser_Parsec(), parser_phi(), parser_Poise(), parser_polygamma(), parser_PSI(), parser_Random(), parser_round(), parser_SinusCardinalis(), parser_SphericalBessel(), parser_SphericalHarmonics(), parser_SphericalNeumann(), parser_theta(), parser_toDegree(), parser_toRadian(), parser_Torr(), parser_XOR(), parser_Yard(), parser_Zernike(), parser_zeta(), qSortDouble(), Fitcontroller::removeNANVals(), PlotData::setParams(), Odesolver::solve(), taylor(), toString(), VectorIndex::VectorIndex(), PlotAsset::writeAxis(), and PlotAsset::writeData().

Here is the call graph for this function:

◆ isnan()

bool mu::isnan ( const value_type v)
inline

Definition at line 379 of file muParserDef.h.

Referenced by NumeRe::Cluster::and_func(), Memory::and_func(), NumeRe::GaussianFilter::apply(), NumeRe::SavitzkyGolayFilter::apply(), NumeRe::SavitzkyGolayDiffFilter::apply(), applyNiceAxis(), mu::MathImpl< T >::ATan(), NumeRe::Cluster::avg(), GridNumeReTable::avg(), bilinearInterpolation(), boneDetection(), TableViewer::calculateAvg(), TableViewer::calculateMax(), calculateMedian(), TableViewer::calculateMin(), TableViewer::calculateSum(), GridNumeReTable::CanGetValueAs(), cmd_show(), Memory::cmp(), NumeRe::Cluster::cmp(), Interval::combine(), StatsLogic::combine(), compareDouble(), Matrix::containsInvalidValues(), ValueColumn::convert(), DateTimeColumn::convert(), Plot::CoordSettings(), Plot::countValidElements(), Plot::create3dPlot(), Plot::defaultRanges(), differentiate(), evalPoints(), evaluateFittingParams(), evaluateParameterValues(), fastFourierTransform(), findExtrema(), findExtremaInMultiResult(), findZeroes(), findZeroesInData(), findZeroesInMultiResult(), Fitcontroller::fitctrl(), Fitcontroller::fitfunction(), Fitcontroller::fitfunctionrestricted(), Fitcontroller::fitjacobian(), Fitcontroller::fitjacobianrestricted(), Plot::fitPlotRanges(), Memory::getBins(), getDataForFit(), NumeReDebugger::getGlobals(), getIndices(), NumeRe::ClusterDoubleItem::getInternalString(), NumeReDebugger::getNumVars(), Memory::getOneWayAnova(), PlotData::getParams(), Memory::getRank(), NumeRe::ClusterDoubleItem::getString(), NumeReKernel::getStringTable(), DateTimeColumn::getValueAsInternalString(), DateTimeColumn::getValueAsString(), NumeReKernel::getVariableList(), handleCasualIndices(), handleIndexVectors(), hasSecAxisBox(), FlowCtrl::if_fork(), integrate(), integrate2d(), integrationstep_simpson(), integrationstep_trapezoidal(), CellValueShader::interpolateColor(), interpolateToGrid(), is_nan(), ValueColumn::isValid(), DateTimeColumn::isValid(), Memory::isValidElement(), isValidValue(), NumeRe::Cluster::isValue(), matrixCmp(), matrixCutoff(), matrixMovAvg(), matrixMovMax(), matrixMovMed(), matrixMovMin(), matrixMovNorm(), matrixMovNum(), matrixMovPrd(), matrixMovStd(), matrixMovSum(), matrixSize(), NumeRe::Cluster::max(), Memory::max(), GridNumeReTable::max(), Memory::maxpos(), NumeRe::Cluster::med(), Memory::med(), NumeRe::Cluster::min(), Memory::min(), GridNumeReTable::min(), Memory::minpos(), nanAvg(), NumeRe::Cluster::norm(), NumeRe::Cluster::num(), Memory::num(), StatsLogic::operator()(), NumeRe::Cluster::or_func(), parseCmdArg(), parser_and(), parser_Angstroem(), parser_AssociatedLaguerrePolynomial(), parser_AssociatedLegendrePolynomial(), parser_AstroUnit(), parser_Barn(), parser_beta(), parser_BetheWeizsaecker(), parser_BinAND(), parser_Binom(), parser_BinOR(), parser_Calorie(), parser_Celsius(), parser_clausen(), parser_compare(), parser_cot(), parser_Curie(), parser_digamma(), parser_dilogarithm(), parser_doubleFaculty(), parser_ElectronVolt(), parser_EllipticD(), parser_EllipticE(), parser_EllipticF(), parser_EllipticP(), parser_erf(), parser_erfc(), parser_Faculty(), parser_Fahrenheit(), parser_Fermi(), parser_Foot(), parser_gamma(), parser_Gauss(), parser_Giga(), parser_gRandom(), parser_Heaviside(), parser_HermitePolynomial(), parser_idxtolog(), parser_imSphericalHarmonics(), parser_Inch(), parser_is_string(), parser_Kilo(), parser_kmh(), parser_Knoten(), parser_LaguerrePolynomial(), parser_LegendrePolynomial(), parser_Lightyear(), parser_liter(), parser_log_b(), parser_Max(), parser_Mega(), parser_Micro(), parser_Mile(), parser_Milli(), parser_Min(), parser_Mod(), parser_mol(), parser_mph(), parser_Nano(), parser_Norm(), parser_Not(), parser_Num(), parser_or(), parser_Parsec(), parser_phi(), parser_Poise(), parser_polygamma(), parser_product(), parser_PSI(), parser_Random(), parser_round(), parser_SinusCardinalis(), parser_SphericalBessel(), parser_SphericalHarmonics(), parser_SphericalNeumann(), parser_Std(), parser_Sum(), parser_theta(), parser_toDegree(), parser_toRadian(), parser_Torr(), parser_XOR(), parser_xor(), parser_Yard(), parser_Zernike(), parser_zeta(), Plot::passRangesToGraph(), Memory::pct(), NumeRe::Cluster::pct(), NumeRe::Cluster::prd(), prepareIntervalsForHist(), qSortDouble(), Memory::readMemInterpolated(), Fitcontroller::removeNANVals(), Resampler::resample_x(), NumeRe::RetouchRegion::retouch(), Memory::retouch1D(), Memory::retouch2D(), rotateTable(), PlotData::setAddAxis(), PlotData::setParams(), ValueColumn::setValue(), DateTimeColumn::setValue(), LogicalColumn::setValue(), StringColumn::setValue(), CategoricalColumn::setValue(), Memory::smooth(), Odesolver::solve(), NumeRe::Cluster::std(), NumeRe::Cluster::sum(), GridNumeReTable::sum(), taylor(), toString(), NumeRe::RetouchRegion::validize(), VectorIndex::VectorIndex(), FlowCtrl::while_loop(), Audio::WavFile::write(), Memory::writeData(), and NumeRe::Cluster::xor_func().

◆ isreal()

bool mu::isreal ( value_type v,
int  nElem 
)
inline

Definition at line 384 of file muParserDef.h.

References imag().

Referenced by NumeRe::StringParser::storeStringToDataObjects(), and Memory::writeData().

Here is the call graph for this function:

◆ operator*()

value_type mu::operator* ( const value_type __x,
const value_type __y 
)
inline

Custom implementation for the complex multiplication operator with a scalar optimization.

Parameters
__xconst value_type&
__yconst value_type&
Returns
value_type

Definition at line 168 of file muParserBase.cpp.

◆ operator/()

value_type mu::operator/ ( const value_type __x,
const value_type __y 
)
inline

Custom implementation for the complex division operator with a scalar optimization.

Parameters
__xconst value_type&
__yconst value_type&
Returns
value_type

Definition at line 190 of file muParserBase.cpp.

◆ parser_idxtolog()

std::vector< value_type > mu::parser_idxtolog ( const value_type v,
int  n 
)

Adaption of the idxtolog() function for 1D data arrays.

Parameters
vconst value_type*
nint
Returns
std::vector<value_type>

Definition at line 135 of file muParserBase.cpp.

References isnan(), parser_Max(), and real().

Referenced by mu::ParserBase::evaluateTemporaryVectors().

Here is the call graph for this function:

◆ parser_logtoidx()

std::vector< value_type > mu::parser_logtoidx ( const value_type v,
int  n 
)

Adaption of the logtoidx() function for 1D data arrays.

Parameters
vconst value_type*
nint
Returns
std::vector<value_type>

Definition at line 109 of file muParserBase.cpp.

Referenced by mu::ParserBase::evaluateTemporaryVectors().

◆ printVector()

static std::string mu::printVector ( const valbuf_type buffer,
int  nElems 
)
static

Simple helper function to print the buffer's contents.

Parameters
bufferconst valbuf_type&
nElemsint
Returns
std::string

Definition at line 2900 of file muParserBase.cpp.

References toString().

Referenced by mu::ParserBase::Eval().

Here is the call graph for this function:

◆ real()

◆ rint()

◆ stepIsStillPossible()

static bool mu::stepIsStillPossible ( const mu::value_type current,
const mu::value_type last,
const mu::value_type d 
)
static

Determines, whether the passed step is still in valid range and therefore can be done to expand the vector.

Parameters
currentconst mu::value_type&
lastconst mu::value_type&
dconst mu::value_type&
Returns
bool

Definition at line 860 of file muParserBase.cpp.

Referenced by mu::ParserBase::expandVector().