ROOT 6.13/01 Reference Guide |
Utility class to generate n-body event, with constant cross-section (default) or with Fermi energy dependence (opt="Fermi").
The event is generated in the center-of-mass frame, but the decay products are finally boosted using the betas of the original particle.
The code is based on the GENBOD function (W515 from CERNLIB) using the Raubold and Lynch method F. James, Monte Carlo Phase Space, CERN 68-15 (1968)
see example of use in PhaseSpace.C
Note that Momentum, Energy units are Gev/C, GeV
Definition at line 15 of file TGenPhaseSpace.h.
Public Member Functions | |
TGenPhaseSpace () | |
TGenPhaseSpace (const TGenPhaseSpace &gen) | |
Copy constructor. More... | |
virtual | ~TGenPhaseSpace () |
Double_t | Generate () |
Generate a random final state. More... | |
TLorentzVector * | GetDecay (Int_t n) |
Return Lorentz vector corresponding to decay n. More... | |
Int_t | GetNt () const |
Double_t | GetWtMax () const |
TGenPhaseSpace & | operator= (const TGenPhaseSpace &gen) |
Assignment operator. More... | |
Bool_t | SetDecay (TLorentzVector &P, Int_t nt, const Double_t *mass, Option_t *opt="") |
Input: More... | |
Private Member Functions | |
Double_t | PDK (Double_t a, Double_t b, Double_t c) |
The PDK function. More... | |
Private Attributes | |
Double_t | fBeta [3] |
TLorentzVector | fDecPro [18] |
Double_t | fMass [18] |
Int_t | fNt |
Double_t | fTeCmTm |
Double_t | fWtMax |
#include <TGenPhaseSpace.h>
|
inline |
Definition at line 27 of file TGenPhaseSpace.h.
TGenPhaseSpace::TGenPhaseSpace | ( | const TGenPhaseSpace & | gen | ) |
Copy constructor.
Definition at line 57 of file TGenPhaseSpace.cxx.
|
inlinevirtual |
Definition at line 29 of file TGenPhaseSpace.h.
Double_t TGenPhaseSpace::Generate | ( | ) |
Generate a random final state.
The function returns the weight of the current event. The TLorentzVector of each decay product can be obtained using GetDecay(n).
Note that Momentum, Energy units are Gev/C, GeV
Definition at line 98 of file TGenPhaseSpace.cxx.
TLorentzVector * TGenPhaseSpace::GetDecay | ( | Int_t | n | ) |
Return Lorentz vector corresponding to decay n.
Definition at line 173 of file TGenPhaseSpace.cxx.
|
inline |
Definition at line 36 of file TGenPhaseSpace.h.
|
inline |
Definition at line 37 of file TGenPhaseSpace.h.
TGenPhaseSpace & TGenPhaseSpace::operator= | ( | const TGenPhaseSpace & | gen | ) |
Assignment operator.
Definition at line 75 of file TGenPhaseSpace.cxx.
|
private |
The PDK function.
Definition at line 34 of file TGenPhaseSpace.cxx.
Bool_t TGenPhaseSpace::SetDecay | ( | TLorentzVector & | P, |
Int_t | nt, | ||
const Double_t * | mass, | ||
Option_t * | opt = "" |
||
) |
Input:
Definition at line 192 of file TGenPhaseSpace.cxx.
|
private |
Definition at line 19 of file TGenPhaseSpace.h.
|
private |
Definition at line 22 of file TGenPhaseSpace.h.
|
private |
Definition at line 18 of file TGenPhaseSpace.h.
|
private |
Definition at line 17 of file TGenPhaseSpace.h.
|
private |
Definition at line 20 of file TGenPhaseSpace.h.
|
private |
Definition at line 21 of file TGenPhaseSpace.h.