/*
$Log$
+Revision 1.6 2001/07/27 17:09:35 morsch
+Use local SetTrack, KeepTrack and SetHighWaterMark methods
+to delegate either to local stack or to stack owned by AliRun.
+(Piotr Skowronski, A.M.)
+
Revision 1.5 2000/12/21 16:24:06 morsch
Coding convention clean-up
//
// Standard constructor
//
- fName="Box";
- fTitle="Box particle generator";
+ fName = "Box";
+ fTitle = "Box particle generator";
// Generate Proton by default
fIpart=kProton;
}
/*
$Log$
+Revision 1.13 2001/10/21 18:35:56 hristov
+Several pointers were set to zero in the default constructors to avoid memory management problems
+
Revision 1.12 2001/06/18 13:07:30 morsch
Forward kinematic ranges to entries only if not set by user.
:AliGenerator()
{
// Constructor
+ fName = "Cocktail";
+ fTitle= "Particle Generator using cocktail of generators";
fEntries = new TList;
flnk1 = 0;
flnk2 = 0;
/*
$Log$
+Revision 1.7 2001/07/27 17:09:35 morsch
+Use local SetTrack, KeepTrack and SetHighWaterMark methods
+to delegate either to local stack or to stack owned by AliRun.
+(Piotr Skowronski, A.M.)
+
Revision 1.6 2000/12/21 16:24:06 morsch
Coding convention clean-up
:AliGenScan(npart)
{
// Constructor
+ fName = "Double Scan";
+ fTitle= "Particle Generator for two correlated particles on a grid";
}
//____________________________________________________________
/*
$Log$
+Revision 1.18 2001/11/12 14:31:00 morsch
+Memory leaks fixed. (M. Bondila)
+
Revision 1.17 2001/11/09 09:12:58 morsch
Generalization by using AliGenReader object to read particles from file.
:AliGenerator(-1)
{
// Constructor
- fName="ExtFile";
- fTitle="Primaries from ext. File";
//
// Read all particles
fNpart =- 1;
/*
$Log$
+Revision 1.36 2002/01/31 20:17:55 morsch
+Allow for triggered jets with simplified topology: Exact pT, back-to-back
+
Revision 1.35 2001/12/13 07:56:25 hristov
Set pointers to zero in the default constructor
:AliGenMC()
{
// Constructor
- fHijing = 0;
- fDsigmaDb = 0;
- fDnDb = 0;
+ fHijing = 0;
+ fDsigmaDb = 0;
+ fDnDb = 0;
}
AliGenHijing::AliGenHijing(Int_t npart)
{
// Default PbPb collisions at 5. 5 TeV
//
+ fName = "Hijing";
+ fTitle= "Particle Generator using HIJING";
+
SetEnergyCMS();
SetImpactParameterRange();
SetTarget();
/*
$Log$
+Revision 1.35 2002/01/21 10:02:40 morsch
+ty is Double_t
+Abort if too high rapidity causes numerical paroblem. User has to specify
+meaningful y-range.
+
Revision 1.34 2001/11/27 13:13:07 morsch
Maximum lifetime for long-lived particles to be put on the stack is parameter.
It can be set via SetMaximumLifetime(..).
// Set random number generator
sRandom = fRandom;
fDecayer = 0;
+
+
}
AliGenParam::AliGenParam(Int_t npart, AliGenLib * Library, Int_t param, char* tname):AliGenMC(npart)
{
// Constructor using number of particles parameterisation id and library
+ fName = "Param";
+ fTitle= "Particle Generator using pT and y parameterisation";
fPtParaFunc = Library->GetPt(param, tname);
fYParaFunc = Library->GetY (param, tname);
AliGenParam::AliGenParam(Int_t npart, Int_t param, char* tname):AliGenMC(npart)
{
// Constructor using parameterisation id and number of particles
-//
+//
+ fName = "Param";
+ fTitle= "Particle Generator using pT and y parameterisation";
+
AliGenLib* pLibrary = new AliGenMUONlib();
fPtParaFunc = pLibrary->GetPt(param, tname);
{
// Constructor
// Gines Martinez 1/10/99
+ fName = "Param";
+ fTitle= "Particle Generator using pT and y parameterisation";
+
fPtParaFunc = PtPara;
fYParaFunc = YPara;
fIpParaFunc = IpPara;
static TClonesArray *particles;
//
if(!particles) particles = new TClonesArray("TParticle",1000);
-
+
static TDatabasePDG *pDataBase = new TDatabasePDG();
if(!pDataBase) pDataBase = new TDatabasePDG();
//
fChildWeight=(fDecayer->GetPartialBranchingRatio(iPart))*fParentWeight;
TParticlePDG *particle = pDataBase->GetParticle(iPart);
Float_t am = particle->Mass();
-
+
Rndm(random,2);
//
// phi
0, kPDecay, nt, wgtch);
pParent[i] = nt;
KeepTrack(nt);
- }
- }
+ } // Selected
+ } // Particle loop
} // Decays by Lujet
-
+ particles->Clear();
if (pFlag) delete[] pFlag;
if (pParent) delete[] pParent;
if (pSelected) delete[] pSelected;
- if (trackIt) delete[] trackIt;
+ if (trackIt) delete[] trackIt;
} // kinematic selection
else // nodecay option, so parent will be tracked by GEANT (pions, kaons, eta, omegas, baryons)
{
/*
$Log$
+Revision 1.48 2001/12/20 11:44:28 morsch
+Add kinematic bias for direct gamma production.
+
Revision 1.47 2001/12/19 14:45:00 morsch
Store number of trials in header.
// semimuonic decay
// structure function GRVHO
//
+ fName = "Pythia";
+ fTitle= "Particle Generator using PYTHIA";
fXsection = 0.;
fNucA1=0;
fNucA2=0;
fParentSelect[1] = 421;
fParentSelect[2] = 431;
fParentSelect[3] = 4122;
- fFlavorSelect = 4;
+ fFlavorSelect = 4;
break;
case kPyBeauty:
fParentSelect[0]= 511;
/*
$Log$
+Revision 1.9 2001/07/27 17:09:36 morsch
+Use local SetTrack, KeepTrack and SetHighWaterMark methods
+to delegate either to local stack or to stack owned by AliRun.
+(Piotr Skowronski, A.M.)
+
Revision 1.8 2000/12/06 15:11:38 morsch
Correct double declared data members.
:AliGenerator(npart)
{
// Constructor
+ fName = "Scan";
+ fTitle = "Generator for particles on a grid";
+
+
fXCmin=0;
fXCmax=0;
fNx=1;