143 std::map<TString,TFormulaVariable>
fVars;
144 std::map<TString,Int_t,TFormulaParamOrder>
fParams;
170#ifdef R__HAS_STD_EXPERIMENTAL_SIMD
171 ROOT::Double_v DoEvalVec(
const ROOT::Double_v *
x,
const Double_t *p =
nullptr)
const;
187 TFormula(
const char *
name,
const char * formula =
"",
bool addToGlobList =
true,
bool vectorize =
false);
188 TFormula(
const char *
name,
const char * formula,
int ndim,
int npar,
bool addToGlobList =
true);
198 template <
typename... Args>
203 return EvalPar(
static_cast<double const *
>(
nullptr), params);
245#ifdef R__HAS_STD_EXPERIMENTAL_SIMD
246 ROOT::Double_v
EvalPar(
const ROOT::Double_v *
x,
const Double_t *params =
nullptr)
const
248 return EvalParVec(
x, params);
250 ROOT::Double_v EvalParVec(
const ROOT::Double_v *
x,
const Double_t *params =
nullptr)
const;
256 assert(
fClingName.Length() &&
"TFormula is not initialized yet!");
282 template <
typename... Args>
285 template <
typename... Args>
300template <
typename... Args>
304 for (
double val : {arg1,
static_cast<Double_t>(args)...}) {
312template <
typename... Args>
316 for (
auto name : {
static_cast<std::string const&
>(args)...}) {
325template <
typename... Args>
328 if (
sizeof...(args) > 4) {
329 Error(
"Eval",
"Eval() only support setting up to 4 variables");
331 double xxx[] = {
static_cast<Double_t>(args)...};
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
int Int_t
Signed integer 4 bytes (int).
bool Bool_t
Boolean (0=false, 1=true) (bool).
double Double_t
Double 8 bytes.
const char Option_t
Option string (const char).
#define ClassDefOverride(name, id)
Method or function calling interface.
Mother of all ROOT objects.
Bool_t TestBit(UInt_t f) const
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
void(* Generic_t)(void *, int, void **, void *)