/*
$Log$
+Revision 1.4 2003/04/01 20:39:00 morsch
+Pycell configurable.
+
Revision 1.3 2003/03/31 15:47:16 morsch
Unhandled cases added.
fName = "Pythia";
fTitle= "Particle Generator using PYTHIA";
fXsection = 0.;
- fNucA1=0;
- fNucA2=0;
SetProcess();
SetStrucFunc();
SetForceDecay();
fPythia->SetCKIN(7,fYHardMin);
fPythia->SetCKIN(8,fYHardMax);
- if (fNucA1 > 0 && fNucA2 > 0) fPythia->SetNuclei(fNucA1, fNucA2);
+ if (fAProjectile > 0 && fATarget > 0) fPythia->SetNuclei(fAProjectile, fATarget);
// Fragmentation?
if (fFragmentation) {
fPythia->SetMSTP(111,1);
fPythia->ImportParticles(fParticles,"All");
+ if (fZTarget != 0 && fAProjectile != 0)
+ {
+ Double_t dy = - 0.5 * TMath::Log(Double_t(fZProjectile) * Double_t(fATarget) /
+ (Double_t(fZTarget) * Double_t(fAProjectile)));
+ Boost(dy);
+ }
//
//
//
void AliGenPythia::SetNuclei(Int_t a1, Int_t a2)
{
// Treat protons as inside nuclei with mass numbers a1 and a2
- fNucA1 = a1;
- fNucA2 = a2;
+ fAProjectile = a1;
+ fATarget = a2;
}
{ptmin = fPtHardMin; ptmax = fPtHardMax = ptmax;}
virtual Float_t GetEnergyCMS() {return fEnergyCMS;}
virtual void GetNuclei(Int_t& a1, Int_t& a2)
- {a1 = fNucA1; a2 = fNucA2;}
+ {a1 = fAProjectile; a2 = fATarget;}
virtual void GetJetEtRange(Float_t& etamin, Float_t& etamax)
{etamin = fEtaMinJet; etamax = fEtaMaxJet;}
virtual void GetJetPhiRange(Float_t& phimin, Float_t& phimax)
Int_t GenerateMB();
void MakeHeader();
- TClonesArray* fParticles; //Particle List
Process_t fProcess; //Process type
StrucFunc_t fStrucFunc; //Structure Function
Float_t fPtHardMax; //higher pT-hard cut
Float_t fYHardMin; //lower y-hard cut
Float_t fYHardMax; //higher y-hard cut
- Int_t fNucA1; //mass number nucleus side 1
- Int_t fNucA2; //mass number nucleus side 2
Int_t fGinit; //initial state gluon radiation
Int_t fGfinal; //final state gluon radiation
Float_t fPtKick; //Transverse momentum kick