1 #ifndef ROOT_TMevSimPartTypeParams
2 #define ROOT_TMevSimPartTypeParams
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 //////////////////////////////////////////////////////////////////////////
10 // TMevSimPartTypeParams //
12 // This class is a helper class for TMevSim interface. It stores //
13 // (and writes out on demand) the properties of a single particle //
16 //////////////////////////////////////////////////////////////////////////
22 #include "MevSimCommon.h"
24 class TMevSimPartTypeParams : public TObject {
28 // Constructors and destructors
30 TMevSimPartTypeParams();
31 TMevSimPartTypeParams(Int_t agpid, Int_t amultmean, Int_t amultvc,
32 Float_t atempmean, Float_t atempstdev, Float_t asigmamean,
33 Float_t asigmastdev, Float_t aexpvelmean, Float_t aexpvelstdev);
34 virtual ~TMevSimPartTypeParams();
36 // Copy and assignment operators;
38 TMevSimPartTypeParams (const TMevSimPartTypeParams& pars); // copy constructor
39 TMevSimPartTypeParams& operator=(const TMevSimPartTypeParams& pars); // assignment operator
41 // Parameters of the particle type
43 virtual void SetGPid(Int_t gpid);
44 virtual Int_t GetGPid() const;
46 virtual void SetMultMean(Int_t multmean);
47 virtual Int_t GetMultMean() const;
49 virtual void SetMultVarianceControl(Int_t multvc);
50 virtual Int_t GetMultVarianceControl() const;
52 virtual void SetTempParams(Float_t tempmean, Float_t tempstdev);
53 virtual Float_t GetTempMean() const;
54 virtual Float_t GetTempStDev() const;
56 virtual void SetSigmaPrams(Float_t sigmamean, Float_t sigmastdev);
57 virtual Float_t GetSigmaMean() const;
58 virtual Float_t GetSigmaStDev() const;
60 virtual void SetExpVelParams(Float_t expvelmean, Float_t expvelstdev);
61 virtual Float_t GetExpVelMean() const;
62 virtual Float_t GetExpVelStDev() const;
64 virtual void SetVnMeanComponent(Int_t nComponent, Float_t mean1, Float_t mean2,
65 Float_t mean3, Float_t mean4);
66 virtual void SetVnStDevComponent(Int_t nComponent, Float_t stdev1, Float_t stdev2,
67 Float_t stdev3, Float_t stdev4);
69 virtual void SetVnMeanComponent (Int_t nComponent, Float_t mean[4]);
70 virtual void SetVnStDevComponent(Int_t nComponent, Float_t stdev[4]);
72 virtual Float_t GetVnMeanComponent(Int_t nComponent, Int_t nMean) const;
73 virtual Float_t GetVnStDevComponent(Int_t nComponent, Int_t nStDev) const;
79 Int_t fMultMean; //mean multiplicy control
80 Int_t fMultVarianceControl; //mean variance
81 Float_t fTempMean;//Temperature parameter mean (in GeV) (Gaussian distribution assumed)
82 Float_t fTempStDev;//Temperature parameter standard deviation (in GeV) (Gaussian distribution assumed)
83 Float_t fSigmaMean;// Rapidity distribution width (sigma) (Gaussian distribution assumed)
84 Float_t fSigmaStDev;// Rapidity distribution standard deviation (Gaussian distribution assumed)
85 Float_t fExpVelMean;// Expansion velocity ala Scott Pratt (in units of c) mean
86 Float_t fExpVelStDev;//Expansion velocity ala Scott Pratt (in units of c) standard deviation
87 Float_t fVnMean[NFLOWTERMS][4];// Anisotropic flow parameters for Fourier components NFLOWTERMS=1,6 mean
88 Float_t fVnStDev[NFLOWTERMS][4];//Anisotropic flow parameters for Fourier components NFLOWTERMS=1,6 standard deviation
90 // GPid : particle ID ala geant3
91 // MultMean, MultVarianceControl: mean multiplicy and variance control
92 // MultVarianceControl 0; for no variance in multiplicity
93 // MultVarianceControl 1; to allow Poisson distribution for particle multiplicities
94 // TempMean, TempStDev: Temperature parameter (in GeV)
95 // mean and standard deviation (Gaussian distribution assumed)
96 // SigmaMean, SigmaStDev: Rapidity distribution width (sigma)
97 // mean and standard deviation (Gaussian distribution assumed)
98 // ExpVelMean, ExpVelStDev: Expansion velocity ala Scott Pratt (in units of c)
99 // mean and standard deviation (Gaussian distribution assumed)
100 // VnMean VnStDev: Anisotropic flow parameters for Fourier components NFLOWTERMS=1,6
101 // mean and standard deviation
102 // include all 6 sets of parameters, set them to 0 if not used
105 ClassDef(TMevSimPartTypeParams,1) //Parameters of the type of particle for MevSim event generator