StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
single_particle_gun.C
1 //usr/bin/env root4star -l -b -q $0'('$1', '$2')'; exit $?
2 #include "gen.C"
3 #include "TString.h"
4 
5 void single_particle_gun( Int_t nevents=5000, Int_t rngSeed=541522,
6  TString particle="mu-", Int_t nParticles=1,
7  Float_t _minPt=0.1, Float_t _maxPt=1.0,
8  Float_t _minEta=2.5, Float_t _maxEta=4.0,
9  Float_t _minPhi=0.0, Float_t _maxPhi=2.0*TMath::Pi()
10  )
11 {
12  nameParticle = particle;
13  numParticles = nParticles;
14  minPt = _minPt;
15  maxPt = _maxPt;
16  minEta = _minEta;
17  maxEta = _maxEta;
18  minPhi = _minPhi;
19  maxPhi = _maxPhi;
20 
21  TString safeName = particle;
22  safeName.ReplaceAll("+", "plus");
23  safeName.ReplaceAll("-", "minus");
24  fzdFilename = TString::Format("single_particle_gun_%s_%dEvents_%dPerEvent_Pt_%0.2fto%0.2f_Eta_%0.2fto%0.2f_Phi_%0.2fto%0.2f.fzd", safeName.Data(), nevents, numParticles, minPt, maxPt, minEta, maxEta, minPhi, maxPhi);
25  primaryName = TString::Format("single_particle_gun_%s_%dEvents_%dPerEvent_Pt_%0.2fto%0.2f_Eta_%0.2fto%0.2f_Phi_%0.2fto%0.2f.root", safeName.Data(), nevents, numParticles, minPt, maxPt, minEta, maxEta, minPhi, maxPhi);
26  cout << "Writing output to: " << fzdFilename << endl;
27  gen( nevents, rngSeed );
28 }