]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/EvtGenModels/EvtD0gammaDalitz.hh
ATO-78 - Technical changes to compare different calibrations
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenModels / EvtD0gammaDalitz.hh
CommitLineData
0ca57c2f 1//--------------------------------------------------------------------------
2//
3// Module: EvtGen/EvtD0gammaDalitz.hh
4//
5// Modification history:
6//
7// JGT February 13, 2012 Module created
8//
9//------------------------------------------------------------------------
10
11#ifndef __EVTD0GAMMADALITZ_HH__
12#define __EVTD0GAMMADALITZ_HH__
13
14#include <vector>
15
16#include "EvtGenBase/EvtDecayAmp.hh"
17#include "EvtGenBase/EvtFlatte.hh"
18
19#include "EvtGenBase/EvtSpinType.hh"
20#include "EvtGenBase/EvtDalitzReso.hh"
21#include "EvtGenBase/EvtCyclic3.hh"
22
23class EvtParticle;
24
25class EvtD0gammaDalitz : public EvtDecayAmp
26{
27private:
28 int _d1;
29 int _d2;
30 int _d3;
31 int _flag;
32
33 bool _isKsPiPi;
34
35 // Useful constants.
36 static const EvtSpinType::spintype& _SCALAR;
37 static const EvtSpinType::spintype& _VECTOR;
38 static const EvtSpinType::spintype& _TENSOR;
39
40 static const EvtDalitzReso::CouplingType& _EtaPic;
41 static const EvtDalitzReso::CouplingType& _PicPicKK;
42
43 static const EvtDalitzReso::NumType& _RBW;
44 static const EvtDalitzReso::NumType& _GS;
45 static const EvtDalitzReso::NumType& _KMAT;
46
47 static const EvtCyclic3::Pair& _AB;
48 static const EvtCyclic3::Pair& _AC;
49 static const EvtCyclic3::Pair& _BC;
50
51 // Values to be read or computed based on values in the evt.pdl file.
52 // IDs of the relevant particles.
53 EvtId _BP;
54 EvtId _BM;
55 EvtId _B0;
56 EvtId _B0B;
57 EvtId _D0;
58 EvtId _D0B;
59 EvtId _KM;
60 EvtId _KP;
61 EvtId _K0;
62 EvtId _K0B;
63 EvtId _KL;
64 EvtId _KS;
65 EvtId _PIM;
66 EvtId _PIP;
67
68 // Flavor of the B mother.
69 EvtId _bFlavor;
70
71 // Masses of the relevant particles.
72 double _mD0;
73 double _mKs;
74 double _mPi;
75 double _mK;
76
77 void readPDGValues();
78 void reportInvalidAndExit() const;
79
80 EvtComplex dalitzKsPiPi( const EvtDalitzPoint& point ) const;
81 EvtComplex dalitzKsKK ( const EvtDalitzPoint& point ) const;
82
83public:
84 EvtD0gammaDalitz();
85 virtual ~EvtD0gammaDalitz();
86
87 std::string getName();
88 EvtDecayBase* clone();
89
90 void init();
91 void initProbMax();
92
93 void decay( EvtParticle* p );
94};
95
96#endif