|
FlyoDoc_2011 Pisa 2011 by GmP --- 011
|
#include <partfase.h>
Public Member Functions | |
| virtual void | Get_PhaseSpace () |
| virtual void | Get_PhaseParm () |
| virtual void | Get_MatrixParm () |
| virtual int | Get_MatrixValue () |
| virtual void | DecParm () |
| virtual int | Svalues () |
| virtual double | Get_e1 () |
| virtual double | Get_e2 () |
| virtual double | Get_e0 () |
| virtual double | Get_S1 () |
| virtual double | Get_S2 () |
| virtual double | Get_S0 () |
| virtual int | Get_ss_done () |
Public Attributes | |
| double | mpadre |
| double | mpadreq |
| double | mfrate |
| double | mfrateq |
| double | mchd1 |
| double | mchd2 |
| double | mchd3 |
| double | mchd4 |
| double | mchd5 |
| double | mchd1q |
| double | mchd2q |
| double | mchd3q |
| double | mchd4q |
| double | mchd5q |
| double | mres |
| double | mresq |
| double | eres |
| double | pstar1 |
| double | estar1 |
| double | cst |
| double | fi |
| double | mmin |
| double | mmax |
| double | mminq |
| double | mmaxq |
| double | dmq |
| double | mmin2 |
| double | mmax2 |
| double | mminq2 |
| double | mmaxq2 |
| double | dmq2 |
| double | mres2 |
| double | mresq2 |
| double | mmin3 |
| double | mmax3 |
| double | mminq3 |
| double | mmaxq3 |
| double | dmq3 |
| double | mres3 |
| double | mresq3 |
| double | e0 |
| double | e1 |
| double | e2 |
| double | s0 |
| double | s1 |
| double | s2 |
| double | Pt |
| double | gam |
| double | eta |
| double | pstar |
| double | w |
| double | wn |
| double | wfase_max |
| int | ss_done |
| int | iterfs |
| qvet | P1 |
| qvet | P2 |
| qvet | P3 |
| Particella * | p1 |
| Particella * | p2 |
| Particella * | p3 |
| Particella * | p4 |
| Particella * | p5 |
| Particella * | pr1 |
| Particella * | pr2 |
| Particella * | pr3 |
| PartFase * | res_next |
Three bodies decay following the phase space... via the dummy res :Res
Definition at line 26 of file partfase.h.
| void PartFase::DecParm | ( | ) | [virtual] |
procedura per il decadimento in tre particelle esempio K ->p1+p2+p3
Reimplemented from Particella.
Definition at line 60 of file partfase.cpp.
{
// K -> mfrate mres
// -> mchd1 mchd2
// solo spazio fasi.....
if ( p1==0 ) // inizialization... only first time
{
Get_PhaseParm(); // initialize links and phase parms
Get_MatrixParm(); // Matrix parms if needed
}
// -------------------------------
// qui sempre...
// get the fase_space point: e0,e1,e2,mres,mresq,cst
int itermtr=0;
while ( itermtr++<200 )
{
// nota: normalmente in Get_PhaseSpace ci sono 1...6 iterazioni!
Get_PhaseSpace(); // Attenzione! qui ora hai dipsonibili e0,e1,e2, mres,mresq,cst
// if the matrix prob is ok break to iter !!
if ( Get_MatrixValue() ) break; // get matrix value if needed ... here does nothing.
}
if ( itermtr>100 )
Gout<<"\n Ev "<< evento_.Gen.Event
<<" Matrix warning: too many iters... chek! "<<itermtr<<" "<< SelRea->Get_Titolo();
//-----------------------------------------------------
// define the mass and the quadrimomentum (qvet) of the decay particle.(mres)...
Set_Massa ( mres );
P.Riposo ( mres ); //Definizione di P a riposo nel cm di mres
// calcolo la direzione di decadimento dei figli.
// uso i puntatori definiti in Get_PhaseParm() per non sbagliare le particelle...
fi = DuePiGreco * Pran();
p2->cstar=cst;
p2->fistar=fi;
p3->cstar=-cst;
p3->fistar=fi+PiGreco;
}