9 #include "FairPrimaryGenerator.h" 
   12 #include "TParticlePDG.h" 
   13 #include "TDatabasePDG.h" 
   18   fPDGType(0),fMult(0),fEvent(0), fPDGMass(0),
 
   20   fX1(0),fY1(0),fX2(0),fY2(0),
 
   21   fEtaRangeIsSet(0),fYRangeIsSet(0),fThetaRangeIsSet(0),
 
   22   fCosThetaIsSet(0),fPtRangeIsSet(0),fPRangeIsSet(0),
 
   23   fPointVtxIsSet(0),fBoxVtxIsSet(0),fDebug(0), fDoit(kTRUE), fFirstRun(kTRUE)
 
   35   fPDGType(pdgid),fMult(mult), fEvent(0),fPDGMass(0),
 
   37   fX1(0),fY1(0),fX2(0),fY2(0),
 
   38   fEtaRangeIsSet(0),fYRangeIsSet(0),fThetaRangeIsSet(0),
 
   39   fCosThetaIsSet(0),fPtRangeIsSet(0),fPRangeIsSet(0),
 
   40   fPointVtxIsSet(0),fBoxVtxIsSet(0),fDebug(1), fDoit(kTRUE), fFirstRun(kTRUE)
 
   58     Fatal(
"Init()",
"PndFixStepParticleGun: phi range is too wide: %f<phi<%f",
 
   61     Fatal(
"Init()",
"PndFixStepParticleGun: Cannot set P and Pt ranges simultaneously");
 
   63     Fatal(
"Init()",
"PndFixStepParticleGun: Cannot set P and Y ranges simultaneously");
 
   67     Fatal(
"Init()",
"PndFixStepParticleGun: Cannot set Y, Theta or Eta ranges simultaneously");
 
   69     Fatal(
"Init()",
"PndFixStepParticleGun: Cannot set point and box vertices simultaneously");
 
   72   TDatabasePDG* pdgBase = TDatabasePDG::Instance();
 
   74   if (! particle) Fatal(
"PndFixStepParticleGun",
"PDG code %d not defined.",
fPDGType);
 
  111   if (
IsEndOfRanges(outerVal, midVal, innerVal) == 
true) 
return kTRUE;
 
  132       theta = 2*TMath::ATan(TMath::Exp(-
eta));
 
  137       pz = mt * TMath::SinH(y);
 
  158       printf(
"FlatGen: kf=%d, p=(%.2f, %.2f, %.2f) GeV, x=(%.1f, %.1f, %.1f) cm, Theta=%.1f phi=%.1f\n",
 
  197                 std::cout << 
"End of range reached at EventNr: " << 
fEvent << std::endl;
 
friend F32vec4 acos(const F32vec4 &a)
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
void SetStep(Double32_t val)
void SetPhiRange(Double32_t phimin=0, Double32_t phimax=360, Double32_t phistep=1)
static T Sqrt(const T &x)
bool IsEndOfRanges(PndRangeValues *val1, PndRangeValues *val2, PndRangeValues *val3)
FairPrimaryGenerator * primGen
TString pt(TString pts, TString exts="px py pz")
virtual Bool_t ReadEvent(FairPrimaryGenerator *primGen)
void SetStop(Double32_t val)
void SetStart(Double32_t val)
void CalcActValues(PndRangeValues *val1, PndRangeValues *val2, PndRangeValues *val3)