add simple F-mu-F to the standard theory functions.

This commit is contained in:
2025-06-05 10:41:12 +02:00
parent 7a923d2f01
commit ea776016b4
2 changed files with 66 additions and 8 deletions

View File

@ -73,9 +73,10 @@
#define THEORY_STATIC_TF_NK 27
#define THEORY_DYNAMIC_ZF_NK 28
#define THEORY_DYNAMIC_TF_NK 29
#define THEORY_MU_MINUS_EXP 30
#define THEORY_POLYNOM 31
#define THEORY_USER_FCN 32
#define THEORY_F_MU_F 30
#define THEORY_MU_MINUS_EXP 31
#define THEORY_POLYNOM 32
#define THEORY_USER_FCN 33
// function parameter tags, i.e. how many parameters has a specific function
// if there is a comment with a (tshift), the number of parameters is increased by one
@ -109,10 +110,11 @@
#define THEORY_PARAM_STATIC_TF_NK 4 // phase, frequency, damping D0, R_b=DGbG/D0 (tshift)
#define THEORY_PARAM_DYNAMIC_ZF_NK 3 // damping D0, R_b=DGbG/D0, nu_c (tshift)
#define THEORY_PARAM_DYNAMIC_TF_NK 5 // phase, frequency, damping D0, R_b=DGbG/D0, nu_c (tshift)
#define THEORY_PARAM_F_MU_F 1 // frequency (tshift)
#define THEORY_PARAM_MU_MINUS_EXP 6 // N0, tau, A, damping, phase, frequency (tshift)
// number of available user functions
#define THEORY_MAX 33
#define THEORY_MAX 34
// maximal number of parameters. Needed in the contents of LF
#define THEORY_MAX_PARAM 10
@ -234,6 +236,9 @@ static PTheoDataBase fgTheoDataBase[THEORY_MAX] = {
{THEORY_DYNAMIC_TF_NK, THEORY_PARAM_DYNAMIC_TF_NK, false,
"dynamicNKTF", "dnktf", "(phase frequency damping_D0 R_b nu_c)", "(phase frequency damping_D0 R_b nu_c tshift)"},
{THEORY_F_MU_F, THEORY_PARAM_F_MU_F, false,
"F_mu_F", "fmuf", "(frequency)", "(frequency tshift)"},
{THEORY_MU_MINUS_EXP, THEORY_PARAM_MU_MINUS_EXP, false,
"muMinusExpTF", "mmsetf", "(N0 tau A lambda phase nu)", "(N0 tau A lambda phase nu tshift)"},
@ -295,6 +300,7 @@ class PTheory
virtual Double_t StaticNKTF(Double_t t, const PDoubleVector& paramValues, const PDoubleVector& funcValues) const;
virtual Double_t DynamicNKZF(Double_t t, const PDoubleVector& paramValues, const PDoubleVector& funcValues) const;
virtual Double_t DynamicNKTF(Double_t t, const PDoubleVector& paramValues, const PDoubleVector& funcValues) const;
virtual Double_t FmuF(Double_t t, const PDoubleVector& paramValues, const PDoubleVector& funcValues) const;
virtual Double_t MuMinusExpTF(Double_t t, const PDoubleVector& paramValues, const PDoubleVector& funcValues) const;
virtual Double_t Polynom(Double_t t, const PDoubleVector& paramValues, const PDoubleVector& funcValues) const;
virtual Double_t UserFcn(Double_t t, const PDoubleVector& paramValues, const PDoubleVector& funcValues) const;