void Generate();
// Fermi smearing, beam divergence and crossing angle
- void FermiTwoGaussian(Float_t A, Float_t Z, Double_t *pp,
- Double_t *probintp, Double_t *probintn);
- void ExtractFermi(Int_t id, Double_t *pp, Double_t *probintp,
- Double_t *probintn, Double_t *pFermi);
- void BeamDivCross(Int_t icross, Float_t divergence, Float_t crossangle,
- Int_t crossplane, Double_t *pLab);
+ void FermiTwoGaussian(Float_t A);
+ void ExtractFermi(Int_t id, Double_t *ddp);
+ void BeamDivCross(Int_t icross, Double_t *pLab);
void AddAngle(Double_t theta1, Double_t phi1, Double_t theta2,
Double_t phi2, Double_t *angle);
void SetFermi(Int_t Fflag) {fFermiflag=Fflag;};
void SetDiv(Float_t bmdiv, Float_t bmcra, Int_t iflcr)
{fBeamDiv=bmdiv; fBeamCrossAngle=bmcra; fBeamCrossPlane=iflcr;};
- void SetDebug() {fDebugOpt = 1;};
+ void SetDebug(Int_t idebu) {fDebugOpt = idebu;};
// Getters
- Double_t GetFermi2p(Int_t key) {return fProbintp[key];}
- Double_t GetFermi2n(Int_t key) {return fProbintn[key];}
+ Double_t GetFermi2p(Int_t key) const {return fProbintp[key];}
+ Double_t GetFermi2n(Int_t key) const {return fProbintn[key];}
protected:
Int_t fIpart; // Particle to be generated
// (=1 -> horizontal, =2 -> vertical plane)
Double_t fProbintp[201]; // Protons momentum distribution due to Fermi
Double_t fProbintn[201]; // Neutrons momentum distribution due to Fermi
- Double_t fPp[201]; //
- Int_t fDebugOpt; // Option for debugging
+ Double_t fPp[201]; // Spectator momenta
+ Int_t fDebugOpt; // Option for debugging [0->No debug, 1->Screen
+ // prints, 2->ASCII data file]
+ private:
+ AliGenZDC(const AliGenZDC & gen);
+ AliGenZDC & operator=(const AliGenZDC & gen);
+
ClassDef(AliGenZDC,1) // Generator for AliZDC class
};