From cfccaf66d970a38d12ea3e1beca09b45142a6e9e Mon Sep 17 00:00:00 2001 From: morsch Date: Wed, 3 Oct 2012 07:57:05 +0000 Subject: [PATCH] Store number of diffractive collisions in header. C. Loizides --- THijing/AliGenHijing.cxx | 18 ++++++++++++++++++ THijing/AliGenHijing.h | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/THijing/AliGenHijing.cxx b/THijing/AliGenHijing.cxx index aa1a28f2134..df3ccea2fad 100644 --- a/THijing/AliGenHijing.cxx +++ b/THijing/AliGenHijing.cxx @@ -400,6 +400,7 @@ void AliGenHijing::Generate() } } } // event loop + MakeHeader(); SetHighWaterMark(nt); } @@ -593,6 +594,23 @@ void AliGenHijing::MakeHeader() // Event Vertex fHeader.SetPrimaryVertex(fVertex); fHeader.SetInteractionTime(fTime); + + Int_t nsd1 = 0,nsd2 = 0,ndd = 0; + Int_t nT = fHijing->GetNT(); + Int_t nP = fHijing->GetNP(); + for (Int_t i = 1; i <= nP; ++i) { + for (Int_t j = 1; j <= nT; ++j) { + Int_t tp = fHijing->GetNFP(i, 5); + Int_t tt = fHijing->GetNFT(j, 5); + if (tp == 2) + nsd1++; + if (tt == 2) + nsd2++; + if (tp == 2 && tt == 2) + ndd++; + } + } + fHeader.SetNDiffractive(nsd1, nsd2, ndd); AddHeader(&fHeader); fCollisionGeometry = &fHeader; } diff --git a/THijing/AliGenHijing.h b/THijing/AliGenHijing.h index 500b6a4b050..010ae416eb8 100644 --- a/THijing/AliGenHijing.h +++ b/THijing/AliGenHijing.h @@ -78,7 +78,7 @@ class AliGenHijing : public AliGenMC {etamin = fEtaMinJet; etamax = fEtaMaxJet;} virtual void GetJetPhiRange(Float_t& phimin, Float_t& phimax) const {phimin = fPhiMinJet*180./TMath::Pi(); phimax = fPhiMaxJet*180./TMath::Pi();} - + THijing *GetTHijing() const {return fHijing;} // Physics Routines virtual Bool_t ProvidesCollisionGeometry() const {return kTRUE;} -- 2.39.3