9#include "EvtGenBase/EvtReport.hh"
10#include "EvtGenBase/EvtId.hh"
11#include "EvtGenBase/EvtPDL.hh"
15#include "generators/evtgen/models/EvtHQET3FF.h"
42 double t,
double mass,
double* fp,
double* f0)
46 double mb = EvtPDL::getMeanMass(parent);
47 double w = ((mb * mb) + (mass * mass) - t) / (2.0 * mb * mass);
54 const double z = (sqrt(w + 1) - sqrt(2.)) / (sqrt(w + 1) + sqrt(2.));
55 double v1 =
v1_1 * (1. - 8.*
rho2 * z + (51.*
rho2 - 10.) * z * z - (252.*
rho2 - 84.) * z * z * z);
57 *fp = 0.5 * (mass + mb) / sqrt(mass * mb) * v1;
59 double s1 = (1 +
d1_1 * (-0.019 + 0.041 * (w - 1) - 0.015 * pow(w - 1, 2.))) * v1;
61 *f0 = sqrt(mass * mb) / (mass + mb) * (w + 1) * s1;
67 double t,
double mass,
double* a1f,
68 double* a2f,
double* vf,
double* a0f)
72 double mb = EvtPDL::getMeanMass(parent);
73 double w = ((mb * mb) + (mass * mass) - t) / (2.0 * mb * mass);
78 double rstar = (2.0 * sqrt(mb * mass)) / (mb + mass);
82 const double z = (sqrt(w + 1) - sqrt(2.)) / (sqrt(w + 1) + sqrt(2.));
83 double ha1 =
ha1_1 * (1. - 8.*
rho2 * z + (53.*
rho2 - 15.) * z * z - (231.*
rho2 - 91.) * z * z * z);
84 double r0 =
r0_1 - 0.11 * (w - 1) + 0.01 * (w - 1) * (w - 1);
85 double r1 =
r1_1 - 0.12 * (w - 1) + 0.05 * (w - 1) * (w - 1);
86 double r2 =
r2_1 + 0.11 * (w - 1) - 0.06 * (w - 1) * (w - 1);
88 *a1f = (1.0 - (t / ((mb + mass) * (mb + mass)))) * ha1;
89 *a1f = (*a1f) / rstar;
90 *a2f = (r2 / rstar) * ha1;
91 *vf = (r1 / rstar) * ha1;
92 *a0f = (r0 / rstar) * ha1;
98 double*,
double*,
double*)
101 EvtGenReport(EVTGEN_ERROR,
"EvtGen") <<
"Not implemented :gettensorff in EvtHQET3FF.\n";
109 double*,
double*,
double*)
112 EvtGenReport(EVTGEN_ERROR,
"EvtGen") <<
"Not implemented :getbaryonff in EvtHQET3FF.\n";
118 double*,
double*,
double*,
double*)
121 EvtGenReport(EVTGEN_ERROR,
"EvtGen") <<
"Not implemented :getdiracff in EvtHQET3FF.\n";
127 double*,
double*,
double*,
double*,
double*,
double*)
130 EvtGenReport(EVTGEN_ERROR,
"EvtGen") <<
"Not implemented :getraritaff in EvtHQET3FF.\n";
double r1_1
Normalization of R1(w=1)
double rho2
CLN slope of leading FF.
EvtHQET3FF(double hqetha1_1, double hqetrho2, double hqetr0_1, double hqetr1_1, double hqetr2_1)
Default constructor.
void getdiracff(EvtId, EvtId, double, double, double *, double *, double *, double *, double *, double *)
Returns dirac ffs.
void gettensorff(EvtId, EvtId, double, double, double *, double *, double *, double *)
Returns tensor ffs.
double r0_1
Normalization of R0(w=1)
void getraritaff(EvtId, EvtId, double, double, double *, double *, double *, double *, double *, double *, double *, double *)
Returns tarita ffs.
double d1_1
Normalization of scalar FF.
double r2_1
Normalization of R2(w=1)
void getvectorff(EvtId parent, EvtId daught, double t, double mass, double *a1f, double *a2f, double *vf, double *a0f)
Returns vector ffs.
void getscalarff(EvtId parent, EvtId daught, double t, double mass, double *fp, double *f0)
Returns scalar ffs.
double ha1_1
Normalization of leading FF.
double v1_1
Normalization of leading scalar FF.
void getbaryonff(EvtId, EvtId, double, double, double *, double *, double *, double *)
Returns baryon ffs.