From 45df8471a452b615747ffa0a1c67a92526883daf Mon Sep 17 00:00:00 2001 From: morsch Date: Thu, 1 Jul 2004 07:10:53 +0000 Subject: [PATCH] Add quenching information to header. --- PYTHIA6/AliGenPythiaEventHeader.cxx | 70 ++++++++++++++++++++++++++++- PYTHIA6/AliGenPythiaEventHeader.h | 38 ++++++++++------ 2 files changed, 93 insertions(+), 15 deletions(-) diff --git a/PYTHIA6/AliGenPythiaEventHeader.cxx b/PYTHIA6/AliGenPythiaEventHeader.cxx index 27e140d17d1..8ad8a6515d4 100644 --- a/PYTHIA6/AliGenPythiaEventHeader.cxx +++ b/PYTHIA6/AliGenPythiaEventHeader.cxx @@ -23,13 +23,22 @@ ClassImp(AliGenPythiaEventHeader); AliGenPythiaEventHeader::AliGenPythiaEventHeader() { // Default Constructor - fNJets = 0; + fNJets = 0; + fNUQJets = 0; + for (Int_t i = 0; i < 4; i++) fZquench[i] = 0.; + fXJet = -1.; + fYJet = -1.; } AliGenPythiaEventHeader::AliGenPythiaEventHeader(const char* name):AliGenEventHeader(name) { // Constructor - fNJets = 0; + fNJets = 0; + fNUQJets = 0; + for (Int_t i = 0; i < 4; i++) fZquench[i] = 0.; + fXJet = -1.; + fYJet = -1.; + } void AliGenPythiaEventHeader::AddJet(Float_t px, Float_t py, Float_t pz, Float_t e) @@ -48,6 +57,38 @@ void AliGenPythiaEventHeader::AddJet(Float_t px, Float_t py, Float_t pz, Float_t } } +void AliGenPythiaEventHeader::AddUQJet(Float_t px, Float_t py, Float_t pz, Float_t e) +{ +// +// Add a jet +// + if (fNUQJets < 10) { + fUQJets[0][fNUQJets] = px; + fUQJets[1][fNUQJets] = py; + fUQJets[2][fNUQJets] = pz; + fUQJets[3][fNUQJets] = e; + fNUQJets++; + } else { + printf("\nWarning: More than 10 jets triggered !!\n"); + } +} + +void AliGenPythiaEventHeader::SetZQuench(Double_t z[4]) +{ + // + // Set quenching fraction + // + for (Int_t i = 0; i < 4; i++) fZquench[i] = z[i]; +} + +void AliGenPythiaEventHeader::GetZQuench(Double_t z[4]) +{ + // + // Get quenching fraction + // + for (Int_t i = 0; i < 4; i++) z[i] = fZquench[i]; +} + void AliGenPythiaEventHeader::TriggerJet(Int_t i, Float_t p[4]) { // @@ -62,3 +103,28 @@ void AliGenPythiaEventHeader::TriggerJet(Int_t i, Float_t p[4]) p[3] = fJets[3][i]; } } + +void AliGenPythiaEventHeader::UQJet(Int_t i, Float_t p[4]) +{ +// +// Give back jet #i +// + if (i >= fNUQJets) { + printf("\nWarning: Unquenched Jets, index out of Range!!\n"); + } else { + p[0] = fUQJets[0][i]; + p[1] = fUQJets[1][i]; + p[2] = fUQJets[2][i]; + p[3] = fUQJets[3][i]; + } +} + +void AliGenPythiaEventHeader::SetXYJet(Double_t x, Double_t y) +{ + +// +// Add jet production point +// + fXJet = x; + fYJet = y; +} diff --git a/PYTHIA6/AliGenPythiaEventHeader.h b/PYTHIA6/AliGenPythiaEventHeader.h index c181d017c9e..4bb49a66784 100644 --- a/PYTHIA6/AliGenPythiaEventHeader.h +++ b/PYTHIA6/AliGenPythiaEventHeader.h @@ -16,22 +16,34 @@ class AliGenPythiaEventHeader : public AliGenEventHeader AliGenPythiaEventHeader(const char* name); virtual ~AliGenPythiaEventHeader() {} // Getters - Int_t ProcessType() {return fProcessType;} + Int_t ProcessType() {return fProcessType;} // Setters - void SetProcessType(Int_t type) {fProcessType = type;} - Int_t Trials() {return fTrials;} - void SetTrials(Int_t trials) {fTrials = trials;} - void AddJet(Float_t px, Float_t py, Float_t pz, Float_t e); - Int_t NTriggerJets() {return fNJets;} - void TriggerJet(Int_t i, Float_t p[4]); + void SetProcessType(Int_t type) {fProcessType = type;} + Int_t Trials() {return fTrials;} + void SetTrials(Int_t trials) {fTrials = trials;} + void AddJet(Float_t px, Float_t py, Float_t pz, Float_t e); + void AddUQJet(Float_t px, Float_t py, Float_t pz, Float_t e); + Int_t NTriggerJets() {return fNJets;} + Int_t NUQTriggerJets() {return fNUQJets;} + void TriggerJet(Int_t i, Float_t p[4]); + void UQJet(Int_t i, Float_t p[4]); + Double_t GetXJet() {return fXJet;} + Double_t GetYJet() {return fYJet;} + void SetXYJet(Double_t x, Double_t y); + void SetZQuench(Double_t z[4]); + void GetZQuench(Double_t z[4]); - protected: - Int_t fProcessType; // PYTHIA process id for this event - Int_t fTrials; // Number of trials to fulfill trigger condition - Int_t fNJets; // Number of triggered jets - Float_t fJets[4][10]; // Trigger jets - ClassDef(AliGenPythiaEventHeader,2) // Event header for Pythia event + Int_t fProcessType; // PYTHIA process id for this event + Int_t fTrials; // Number of trials to fulfill trigger condition + Int_t fNJets; // Number of triggered jets + Int_t fNUQJets; // Number of unquenched + Double_t fXJet; // Jet production point (x) + Double_t fYJet; // Jet production point (y) + Float_t fJets[4][10]; // Trigger jets + Float_t fUQJets[4][10]; // Unquenched trigger jets + Double_t fZquench[4]; // Quenching fraction + ClassDef(AliGenPythiaEventHeader,3) // Event header for Pythia event }; -- 2.39.3