17 #ifndef EVT_DALITZ_PLOT_HH
18 #define EVT_DALITZ_PLOT_HH
21 #include "EvtGenBase/EvtCyclic3.hh"
22 #include "EvtGenBase/EvtTwoBodyVertex.hh"
23 #include "EvtGenBase/EvtDecayMode.hh"
29 EvtDalitzPlot(
double mA,
double mB,
double mC,
double bigM,
double ldel = 0.,
double rdel = 0.);
41 double qAbsMin(EvtCyclic3::Pair i)
const;
42 double qAbsMax(EvtCyclic3::Pair i)
const;
43 double mAbsMin(EvtCyclic3::Pair i)
const;
44 double mAbsMax(EvtCyclic3::Pair i)
const;
49 double qResAbsMin(EvtCyclic3::Pair i)
const;
50 double qResAbsMax(EvtCyclic3::Pair i)
const;
51 double qHelAbsMin(EvtCyclic3::Pair i)
const;
52 double qHelAbsMax(EvtCyclic3::Pair i)
const;
53 inline double qSumMin()
const {
return sum() + _ldel; }
54 inline double qSumMax()
const {
return sum() + _rdel; }
55 inline bool fuzzy()
const {
return (_rdel - _ldel != 0.); }
62 double getArea(
int N = 1000, EvtCyclic3::Pair i = EvtCyclic3::AB, EvtCyclic3::Pair j = EvtCyclic3::BC)
const;
66 double qMin(EvtCyclic3::Pair i, EvtCyclic3::Pair j,
double q)
const;
67 double qMax(EvtCyclic3::Pair i, EvtCyclic3::Pair j,
double q)
const;
72 double cosTh(EvtCyclic3::Pair i1,
double q1, EvtCyclic3::Pair i2,
double q2)
const;
73 double e(EvtCyclic3::Index i, EvtCyclic3::Pair j,
double q)
const;
74 double p(EvtCyclic3::Index i, EvtCyclic3::Pair j,
double q)
const;
76 double q(EvtCyclic3::Pair i1,
double cosTh, EvtCyclic3::Pair i2,
double q2)
const;
80 double jacobian(EvtCyclic3::Pair i,
double q)
const;
92 inline double bigM()
const {
return _bigM; }
93 inline double mA()
const {
return _mA; }
94 inline double mB()
const {
return _mB; }
95 inline double mC()
const {
return _mC; }
96 double m(EvtCyclic3::Index i)
const;
101 void sanityCheck()
const;