evtgen is hosted by Hepforge, IPPP Durham
EvtGen  2.0.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
EvtISGW2FF.hh
Go to the documentation of this file.
1 
2 /***********************************************************************
3 * Copyright 1998-2020 CERN for the benefit of the EvtGen authors *
4 * *
5 * This file is part of EvtGen. *
6 * *
7 * EvtGen is free software: you can redistribute it and/or modify *
8 * it under the terms of the GNU General Public License as published by *
9 * the Free Software Foundation, either version 3 of the License, or *
10 * (at your option) any later version. *
11 * *
12 * EvtGen is distributed in the hope that it will be useful, *
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15 * GNU General Public License for more details. *
16 * *
17 * You should have received a copy of the GNU General Public License *
18 * along with EvtGen. If not, see <https://www.gnu.org/licenses/>. *
19 ***********************************************************************/
20 
21 #ifndef EVTISGW2FF_HH
22 #define EVTISGW2FF_HH
23 
25 
26 class EvtId;
27 
28 // Description:Form factor routines specific to EvtISGW2
29 
30 class EvtISGW2FF : public EvtSemiLeptonicFF {
31  public:
32  void getscalarff( EvtId parent, EvtId daught, double t, double mass,
33  double* fpf, double* f0f ) override;
34  void getvectorff( EvtId parent, EvtId daught, double t, double mass,
35  double* a1f, double* a2f, double* vf,
36  double* a0f ) override;
37  void gettensorff( EvtId parent, EvtId daught, double t, double mass,
38  double* hf, double* kf, double* bpf, double* bmf ) override;
39 
40  void getbaryonff( EvtId, EvtId, double, double, double*, double*, double*,
41  double* ) override;
42 
43  void getdiracff( EvtId, EvtId, double, double, double*, double*, double*,
44  double*, double*, double* ) override;
45 
46  void getraritaff( EvtId, EvtId, double, double, double*, double*, double*,
47  double*, double*, double*, double*, double* ) override;
48 
49  private:
50  // getscalarff, getvectorff, and gettensorff call the
51  // correct isgw2 form factor routine which computes
52  // form factors according to the ISGW2 paper.
53 
54  void EvtISGW2FF3S1( EvtId parent, EvtId daught, double t, double mass,
55  double* ff, double* gf, double* apf, double* amf );
56  void EvtISGW2FF23S1( EvtId parent, EvtId daught, double t, double mass,
57  double* fpf, double* gpf, double* app, double* apm );
58  void EvtISGW2FF3P1( EvtId parent, EvtId daught, double t, double mass,
59  double* lf, double* qf, double* cpf, double* cmf );
60  void EvtISGW2FF3P0( EvtId parent, EvtId daught, double t, double mass,
61  double* upf, double* umf );
62  void EvtISGW2FF1S0( EvtId parent, EvtId daught, double t, double mass,
63  double* fpf, double* fmf );
64  void EvtISGW2FF21S0( EvtId parent, EvtId daught, double t, double mass,
65  double* fppf, double* fpmf );
66  void EvtISGW2FF3P2( EvtId parent, EvtId daught, double t, double mass,
67  double* h, double* k, double* bp, double* bm );
68  void EvtISGW2FF1P1( EvtId parent, EvtId daught, double t, double mass,
69  double* rf, double* vf, double* spf, double* smf );
70 
71  double EvtGetas( double mass );
72  double EvtGetas( double mass, double mass1 );
73  double EvtGetGammaji( double z );
74 };
75 
76 #endif
double EvtGetas(double mass)
void EvtISGW2FF1P1(EvtId parent, EvtId daught, double t, double mass, double *rf, double *vf, double *spf, double *smf)
Definition: EvtISGW2FF.cpp:956
void EvtISGW2FF3P1(EvtId parent, EvtId daught, double t, double mass, double *lf, double *qf, double *cpf, double *cmf)
void gettensorff(EvtId parent, EvtId daught, double t, double mass, double *hf, double *kf, double *bpf, double *bmf) override
Definition: EvtISGW2FF.cpp:122
void EvtISGW2FF3S1(EvtId parent, EvtId daught, double t, double mass, double *ff, double *gf, double *apf, double *amf)
Definition: EvtISGW2FF.cpp:453
void getraritaff(EvtId, EvtId, double, double, double *, double *, double *, double *, double *, double *, double *, double *) override
void getbaryonff(EvtId, EvtId, double, double, double *, double *, double *, double *) override
void EvtISGW2FF1S0(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *fmf)
Definition: EvtISGW2FF.cpp:250
void EvtISGW2FF23S1(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *gpf, double *app, double *apm)
Definition: EvtISGW2FF.cpp:813
void getdiracff(EvtId, EvtId, double, double, double *, double *, double *, double *, double *, double *) override
void getvectorff(EvtId parent, EvtId daught, double t, double mass, double *a1f, double *a2f, double *vf, double *a0f) override
Definition: EvtISGW2FF.cpp:131
Definition: EvtId.hh:27
double EvtGetGammaji(double z)
void EvtISGW2FF3P0(EvtId parent, EvtId daught, double t, double mass, double *upf, double *umf)
void EvtISGW2FF3P2(EvtId parent, EvtId daught, double t, double mass, double *h, double *k, double *bp, double *bm)
void EvtISGW2FF21S0(EvtId parent, EvtId daught, double t, double mass, double *fppf, double *fpmf)
Definition: EvtISGW2FF.cpp:693
void getscalarff(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *f0f) override
Definition: EvtISGW2FF.cpp:35