30 #ifndef DecayGenFrame_HH
31 #define DecayGenFrame_HH
36 namespace RestFrames {
38 class ResonanceGenFrame;
50 DecayGenFrame(
const std::string& sname,
const std::string& stitle);
61 virtual void SetMass(
double val);
93 virtual double GetProbMCMC(
double mass = -1.)
const;
97 double max = -1.)
const;
102 double m_CosDecayAngle;
103 double m_DeltaPhiDecayPlane;
105 std::vector<int> m_ChildIndexMCMC;
106 std::vector<double> m_ChildMassMCMC;
107 std::vector<double> m_ChildProbMCMC;
108 std::vector<double> m_InterMassFracMCMC;
110 virtual bool IsSoundBody()
const;
112 virtual void ResetGenFrame();
113 virtual bool GenerateFrame();
115 void GenerateTwoBodyRecursive(
const std::vector<double>& M_parent,
116 const std::vector<double>& M_child,
117 const TVector3& axis_par,
118 const TVector3& axis_perp,
119 std::vector<TLorentzVector>& P_child);
121 virtual bool InitializeGenAnalysis();
122 virtual bool IterateMCMC();
126 int DoubleMax(
const void *a,
const void *b);