/*
$Log$
+Revision 1.5 2001/02/24 11:41:59 morsch
+SetGun allows specify completely the particle kinematics and position in one go. (FCA)
+
+Revision 1.4 2000/12/21 16:24:06 morsch
+Coding convention clean-up
+
+Revision 1.3 2000/11/30 07:12:50 alibrary
+Introducing new Rndm and QA classes
+
+Revision 1.2 2000/10/02 15:17:54 morsch
+Unused includes removed.
+
+Revision 1.1 2000/06/09 20:24:00 morsch
+Same class as previously in AliSimpleGen.cxx
+All coding rule violations except RS3 corrected (AM)
+
*/
-///////////////////////////////////////////////////////////////////
-// //
-// Generate the final state of the interaction as the input //
-// to the MonteCarlo //
-//
+
+
+// Simple particle gun.
+// Momentum, phi and theta of the partice as well as the particle type can be set.
+// andreas.morsch@cern.ch
//Begin_Html
/*
<img src="picts/AliGeneratorClass.gif">
#include "AliGenFixed.h"
#include "AliRun.h"
-#include "AliConst.h"
#include "AliPDG.h"
-#include "TF1.h"
ClassImp(AliGenFixed)
// Default constructor
//
fIpart = 0;
+ fExplicit = kFALSE;
}
//_____________________________________________________________________________
// Generate one trigger
//
Float_t polar[3]= {0,0,0};
- Float_t p[3] = {fPMin*TMath::Cos(fPhiMin)*TMath::Sin(fThetaMin),
- fPMin*TMath::Sin(fPhiMin)*TMath::Sin(fThetaMin),
- fPMin*TMath::Cos(fThetaMin)};
+ if(!fExplicit) {
+ fP[0] = fPMin*TMath::Cos(fPhiMin)*TMath::Sin(fThetaMin);
+ fP[1] = fPMin*TMath::Sin(fPhiMin)*TMath::Sin(fThetaMin);
+ fP[2] = fPMin*TMath::Cos(fThetaMin);
+ }
Int_t i, nt;
//
- for(i=0;i<fNpart;i++) {
- gAlice->SetTrack(fTrackIt,-1,fIpart,p,fOrigin.GetArray(),polar,0,"Primary",nt);
- }
+ for(i=0;i<fNpart;i++)
+ SetTrack(fTrackIt,-1,fIpart,fP,fOrigin.GetArray(),polar,0,kPPrimary,nt);
+
}
//_____________________________________________________________________________