library: libPhysics
#include "TGenPhaseSpace.h"

TGenPhaseSpace


class description - source file - inheritance tree (.pdf)

class TGenPhaseSpace : public TObject

Inheritance Chart:
TObject
<-
TGenPhaseSpace
    private:
Double_t PDK(Double_t a, Double_t b, Double_t c) public:
TGenPhaseSpace() TGenPhaseSpace(const TGenPhaseSpace& gen) virtual ~TGenPhaseSpace() static TClass* Class() Double_t Generate() TLorentzVector* GetDecay(Int_t n) Int_t GetNt() const Double_t GetWtMax() const virtual TClass* IsA() const TGenPhaseSpace& operator=(const TGenPhaseSpace&) Bool_t SetDecay(TLorentzVector& P, Int_t nt, Double_t* mass, Option_t* opt = "") virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

    private:
Int_t fNt number of decay particles Double_t fMass[18] masses of particles Double_t fBeta[3] betas of decaying particle Double_t fTeCmTm total energy in the C.M. minus the total mass Double_t fWtMax maximum weigth TLorentzVector fDecPro[18] kinematics of the generated particles

Class Description

  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 $ROOTSYS/tutorials/PhaseSpace.C

Double_t PDK(Double_t a, Double_t b, Double_t c)

TGenPhaseSpace(const TGenPhaseSpace &gen) : TObject(gen)

Double_t Generate()
  Generate a random final state.
  The function returns the weigth of the current event.
  The TLorentzVector of each decay product can be get using GetDecay(n).
  The maximum weigth can be get using GetWtMax().


TLorentzVector* GetDecay(Int_t n)

Bool_t SetDecay(TLorentzVector &P, Int_t nt, Double_t *mass, Option_t *opt)
 input:
 TLorentzVector &P:    decay particle
 Int_t nt:             number of decay products
 Double_t *mass:       array of decay product masses
 Option_t *opt:        default -> constant cross section
                       "Fermi" -> Fermi energy dependece
 return value:
 kTRUE:      the decay is permitted by kinematics
 kFALSE:     the decay is forbidden by kinematics




Inline Functions


                   void ~TGenPhaseSpace()
         TGenPhaseSpace TGenPhaseSpace(const TGenPhaseSpace& gen)
                  Int_t GetNt() const
               Double_t GetWtMax() const
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
                   void StreamerNVirtual(TBuffer& b)
        TGenPhaseSpace& operator=(const TGenPhaseSpace&)


Author: Rene Brun, Valerio Filippini 06/09/2000
Last update: root/physics:$Name: $:$Id: TGenPhaseSpace.cxx,v 1.10 2005/09/04 09:51:19 brun Exp $


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.