Belle II Software development
EvtBGL2 Class Reference

The class provides the form factors for orbitally excited semileptonic decays. More...

#include <EvtBGL2.h>

Inheritance diagram for EvtBGL2:

Public Member Functions

 EvtBGL2 ()
 Default constructor.
 
virtual ~EvtBGL2 ()
 virtual destructor
 
std::string getName ()
 Returns name of module.
 
EvtDecayBase * clone ()
 Clones module.
 
void decay (EvtParticle *p)
 Creates a decay.
 
void initProbMax ()
 Sets maximal probab.
 
void init ()
 Initializes module.
 

Private Attributes

EvtSemiLeptonicFF * m_bgl2ffmodel = nullptr
 Pointers needed for form factors.
 
EvtSemiLeptonicAmp * m_calcamp = nullptr
 Pointers needed to calculate amplitude.
 

Detailed Description

The class provides the form factors for orbitally excited semileptonic decays.

Definition at line 19 of file EvtBGL2.h.

Constructor & Destructor Documentation

◆ EvtBGL2()

EvtBGL2 ( )

Default constructor.

Definition at line 24 of file EvtBGL2.cc.

24 :
25 m_bgl2ffmodel(nullptr)
26 , m_calcamp(nullptr)
27{}
EvtSemiLeptonicFF * m_bgl2ffmodel
Pointers needed for form factors.
Definition: EvtBGL2.h:47
EvtSemiLeptonicAmp * m_calcamp
Pointers needed to calculate amplitude.
Definition: EvtBGL2.h:51

◆ ~EvtBGL2()

~EvtBGL2 ( )
virtual

virtual destructor

Definition at line 29 of file EvtBGL2.cc.

30{
31 delete m_bgl2ffmodel;
32 m_bgl2ffmodel = nullptr;
33 delete m_calcamp;
34 m_calcamp = nullptr;
35}

Member Function Documentation

◆ clone()

EvtDecayBase * clone ( )

Clones module.

Definition at line 46 of file EvtBGL2.cc.

47{
48
49 return new EvtBGL2;
50
51}
EvtBGL2()
Default constructor.
Definition: EvtBGL2.cc:24

◆ decay()

void decay ( EvtParticle *  p)

Creates a decay.

Definition at line 54 of file EvtBGL2.cc.

55{
56
57 p->initializePhaseSpace(getNDaug(), getDaugs());
58 m_calcamp->CalcAmp(p, _amp2, m_bgl2ffmodel);
59
60}

◆ getName()

std::string getName ( )

Returns name of module.

Definition at line 37 of file EvtBGL2.cc.

38{
39
40 return "BGL2";
41
42}

◆ init()

void init ( )

Initializes module.

Definition at line 97 of file EvtBGL2.cc.

98{
99
100 checkNDaug(3);
101
102 //We expect the parent to be a scalar
103 //and the daughters to be X lepton neutrino
104 checkSpinParent(EvtSpinType::SCALAR);
105
106 checkSpinDaughter(1, EvtSpinType::DIRAC);
107 checkSpinDaughter(2, EvtSpinType::NEUTRINO);
108
109 EvtSpinType::spintype d1type = EvtPDL::getSpinType(getDaug(0));
110 if (d1type == EvtSpinType::SCALAR) {
111 if (getNArg() == 8) {
112 m_bgl2ffmodel = new EvtBGL2FF(getArg(0), getArg(1), getArg(2), getArg(3), getArg(4), getArg(5), getArg(6), getArg(7));
113 m_calcamp = new EvtSemiLeptonicScalarAmp;
114 } else {
115 EvtGenReport(EVTGEN_ERROR, "EvtGen") << "BGL2 (N=3) model for scalar meson daughters needs 8 arguments. Sorry." << std::endl;
116
117 ::abort();
118 }
119 } else {
120 EvtGenReport(EVTGEN_ERROR, "EvtGen") << "BGL2 model handles only scalar meson daughters. Use the EvtBGL class for vector mesons." <<
121 std::endl;
122 ::abort();
123 }
124
125}
The class provides the form factors for semileptonic D and D* decays with full mass dependence.
Definition: EvtBGL2FF.h:17

◆ initProbMax()

void initProbMax ( )

Sets maximal probab.

Definition at line 62 of file EvtBGL2.cc.

63{
64
65 EvtId parnum, mesnum, lnum, nunum;
66
67 parnum = getParentId();
68 mesnum = getDaug(0);
69 lnum = getDaug(1);
70 nunum = getDaug(2);
71
72 double mymaxprob = m_calcamp->CalcMaxProb(parnum, mesnum,
73 lnum, nunum, m_bgl2ffmodel);
74
75 // Leptons
76 static EvtId EM = EvtPDL::getId("e-");
77 static EvtId EP = EvtPDL::getId("e+");
78 static EvtId MUM = EvtPDL::getId("mu-");
79 static EvtId MUP = EvtPDL::getId("mu+");
80 static EvtId TAUM = EvtPDL::getId("tau-");
81 static EvtId TAUP = EvtPDL::getId("tau+");
82
83 if (lnum == EP || lnum == EM || lnum == MUP || lnum == MUM) {
84 setProbMax(mymaxprob);
85 return;
86 }
87 if (lnum == TAUP || lnum == TAUM) {
88 setProbMax(6500);
89 return;
90 }
91
92
93
94}

Member Data Documentation

◆ m_bgl2ffmodel

EvtSemiLeptonicFF* m_bgl2ffmodel = nullptr
private

Pointers needed for form factors.

Definition at line 47 of file EvtBGL2.h.

◆ m_calcamp

EvtSemiLeptonicAmp* m_calcamp = nullptr
private

Pointers needed to calculate amplitude.

Definition at line 51 of file EvtBGL2.h.


The documentation for this class was generated from the following files: