32 namespace RestFrames {
39 const std::string& stitle) :
55 ppLabGenFrame::~ppLabGenFrame() {}
114 bool ppLabGenFrame::InitializeGenAnalysis(){
116 UnSoundBody(RF_FUNCTION);
117 return SetMind(
false);
120 double sqrtS = 2.*sqrt(m_Ep1*m_Ep2);
126 m_Log <<
"Unable to initialize event generation. ";
127 m_Log <<
"sqrt(S) of " << sqrtS <<
" ";
128 m_Log <<
"is less than minimum child mass of " << Mmin;
130 return SetMind(
false);
135 if(!LabGenFrame::InitializeGenAnalysis())
136 return SetMind(
false);
138 return SetMind(
true);
141 bool ppLabGenFrame::IterateMCMC(){
143 double deltaLogXOld = m_deltaLogX;
146 m_deltaLogX = deltaLogX;
151 m_deltaLogX = deltaLogXOld;
153 LabGenFrame::IterateMCMC();
155 double C = m_ChildMassMCMC*m_ChildMassMCMC/4./m_Ep1/m_Ep2;
157 double expo = -m_deltaLogX*log(C);
158 double Xp1 = sqrt(C*exp(expo));
159 double Xp2 = sqrt(C*exp(-expo));
164 return SetMind(
true);
171 double C = mass*mass/(4.*m_Ep1*m_Ep2);
172 double expo = -m_deltaLogX*log(C);
174 double Xp1 = sqrt(C*exp(expo));
175 double Xp2 = sqrt(C*exp(-expo));
179 prob *= pPDF_q(Xp1)*pPDF_qbar(Xp2)+pPDF_q(Xp2)*pPDF_qbar(Xp1);
181 prob *= pPDF_g(Xp1)*pPDF_g(Xp2);
183 prob *= pPDF_q(Xp1)*pPDF_g(Xp2)+pPDF_q(Xp2)*pPDF_g(Xp1);
185 prob *= pPDF_q(Xp1)*pPDF_q(Xp2);
190 double ppLabGenFrame::pPDF_q(
double x)
const {
191 if(x <= 0. || x >= 1.)
193 return fabs((1/x)*pow(x,m_PDF_eta_1)*pow(1-x,m_PDF_eta_2)*
194 (1.+m_PDF_eps_u*sqrt(x)+m_PDF_g_u*x));
197 double ppLabGenFrame::pPDF_qbar(
double x)
const {
198 if(x <= 0. || x >= 1.)
200 return fabs((1/x)*pow(x,m_PDF_del_S)*pow(1-x,m_PDF_eta_S)*
201 (1.+m_PDF_eps_S*sqrt(x)+m_PDF_g_S*x));
204 double ppLabGenFrame::pPDF_g(
double x)
const {
205 if(x <= 0. || x >= 1.)
207 return fabs((1/x)*(m_PDF_A_g*pow(x,m_PDF_del_g)*pow(1-x,m_PDF_eta_g)*
208 (1.+m_PDF_eps_g*sqrt(x)+m_PDF_g_g*x)+
209 m_PDF_A_g1*pow(x,m_PDF_del_g1)*pow(1-x,m_PDF_eta_g1)));
212 double ppLabGenFrame::m_PDF_eta_1 = 0.27871;
213 double ppLabGenFrame::m_PDF_eta_2 = 3.3627;
214 double ppLabGenFrame::m_PDF_eps_u = 4.4343;
215 double ppLabGenFrame::m_PDF_g_u = 38.599;
216 double ppLabGenFrame::m_PDF_del_S = -0.11912;
217 double ppLabGenFrame::m_PDF_eta_S = 9.4189;
218 double ppLabGenFrame::m_PDF_eps_S = -2.6287;
219 double ppLabGenFrame::m_PDF_g_S = 18.065;
220 double ppLabGenFrame::m_PDF_A_g = 3.4055;
221 double ppLabGenFrame::m_PDF_del_g = -0.12178;
222 double ppLabGenFrame::m_PDF_eta_g = 2.9278;
223 double ppLabGenFrame::m_PDF_eps_g = -2.3210;
224 double ppLabGenFrame::m_PDF_g_g = 1.9233;
225 double ppLabGenFrame::m_PDF_A_g1 = -1.6189;
226 double ppLabGenFrame::m_PDF_del_g1 = -0.23999;
227 double ppLabGenFrame::m_PDF_eta_g1 = 24.792;