(number of trials) done in AliGenHijingEventHeader.
/*
$Log$
+Revision 1.31 2001/11/06 12:30:34 morsch
+Add Boost() method to boost all particles to LHC lab frame. Needed for asymmetric collision systems.
+
Revision 1.30 2001/10/21 18:35:56 hristov
Several pointers were set to zero in the default constructors to avoid memory management problems
SetTarget();
SetProjectile();
SetBoostLHC();
+ SetJetEtaRange();
+
fKeep = 0;
fQuench = 1;
fShadowing = 1;
// --------------------------------------------------------------------------
fHijing->GenerateEvent();
fTrials++;
+ if (fTrigger != kNoTrigger) {
+ if (!CheckTrigger()) continue;
+ }
+
fHijing->ImportParticles(particles,"All");
if (fLHC) Boost(particles);
+
Int_t np = particles->GetEntriesFast();
printf("\n **************************************************%d\n",np);
Int_t nc = 0;
fHijing->GetHINT1(38),
fHijing->GetHINT1(39));
((AliGenHijingEventHeader*) header)->SetJets(jet1, jet2, jet3, jet4);
+ ((AliGenHijingEventHeader*) header)->SetTrials(fTrials);
// Event Vertex
header->SetPrimaryVertex(fEventVertex);
gAlice->SetGenEventHeader(header);
}
+Bool_t AliGenHijing::CheckTrigger()
+{
+// Check the kinematic trigger condition
+//
+ TLorentzVector* jet1 = new TLorentzVector(fHijing->GetHINT1(26),
+ fHijing->GetHINT1(27),
+ fHijing->GetHINT1(28),
+ fHijing->GetHINT1(29));
+
+ TLorentzVector* jet2 = new TLorentzVector(fHijing->GetHINT1(36),
+ fHijing->GetHINT1(37),
+ fHijing->GetHINT1(38),
+ fHijing->GetHINT1(39));
+ Double_t eta1 = jet1->Eta();
+ Double_t eta2 = jet2->Eta();
+ Bool_t triggered = kFALSE;
+
+ if ((eta1 < fEtaMaxJet && eta1 > fEtaMinJet) ||
+ (eta2 < fEtaMaxJet && eta2 > fEtaMinJet))
+ {
+ triggered = kTRUE;
+ }
+ return triggered;
+}
AliGenHijing& AliGenHijing::operator=(const AliGenHijing& rhs)
{
virtual void SetRadiation(Int_t flag=3) {fRadiation = flag;}
virtual void SetSpectators(Int_t spects=1) {fSpectators = spects;}
virtual void SetPtMinJet(Float_t ptmin) {fPtMinJet = ptmin;}
+ virtual void SetJetEtaRange(Float_t etamin = -20., Float_t etamax = 20.)
+ {fEtaMinJet = etamin; fEtaMaxJet = etamax;}
virtual void SetBoostLHC(Int_t flag=0) {fLHC = flag;}
virtual void EvaluateCrossSections();
virtual void Boost(TClonesArray* particles);
virtual TGraph* CrossSection() {return fDsigmaDb;}
- virtual TGraph* BinaryCollisions() {return fDnDb;}
+ virtual TGraph* BinaryCollisions() {return fDnDb;}
+ virtual Bool_t CheckTrigger();
+
protected:
Bool_t SelectFlavor(Int_t pid);
void MakeHeader();
TGraph* fDsigmaDb; // dSigma/db for the system
TGraph* fDnDb; // dNBinaryCollisions/db
Float_t fPtMinJet; // Minimum Pt of triggered Jet
+ Float_t fEtaMinJet; // Minimum eta of triggered Jet
+ Float_t fEtaMaxJet; // Maximum eta of triggered Jet
Int_t fRadiation; // Flag to switch on/off initial and final state radiation
// ZDC proposal (by Chiara) to store num. of SPECTATORS protons and neutrons
Int_t NNw() {return fNNwColl;}
Int_t NwN() {return fNwNColl;}
Int_t NwNw() {return fNwNwColl;}
+ Int_t Trials() {return fTrials;}
+
+
// Setters
void SetTotalEnergy(Float_t energy) {fTotalEnergy=energy;}
void SetHardScatters(Int_t n) {fNHardScatters=n;}
void GetJets(TLorentzVector& jet1, TLorentzVector& jet2,
TLorentzVector& jet3, TLorentzVector& jet4)
{jet1 = fJet1; jet2 = fJet2; jet3 = fJetFsr1; jet4 = fJetFsr2;}
+ void SetTrials(Int_t trials) {fTrials = trials;}
+
protected:
Float_t fTotalEnergy; // Total energy of produced particles
Int_t fNHardScatters; // Number of hard scatterings
Int_t fNwNwColl; // Number of Nwounded-Nwounded collisions
Int_t fSpecn; // Number of spectators neutrons
Int_t fSpecp; // Number of spectators protons
+ Int_t fTrials; // Number of trials to fulfill trigger condition
+
TLorentzVector fJet1; // 4-Momentum-Vector of first triggered jet
TLorentzVector fJet2; // 4-Momentum-Vector of second triggered jet
TLorentzVector fJetFsr1; // 4-Momentum-Vector of first triggered jet
TLorentzVector fJetFsr2; // 4-Momentum-Vector of second triggered jet
- ClassDef(AliGenHijingEventHeader,3) // Event header for hijing event
+ ClassDef(AliGenHijingEventHeader,4) // Event header for hijing event
};
#endif