From 89291556aca0af48bce95343e2af75b59a7f920f Mon Sep 17 00:00:00 2001 From: hristov Date: Tue, 20 May 2008 10:28:24 +0000 Subject: [PATCH] Adding the centroid data and access methods (Chiara) --- STEER/AliESDZDC.cxx | 40 +++++++++++++++++++++++------------- STEER/AliESDZDC.h | 29 ++++++++++++++++++-------- ZDC/AliZDCQADataMakerRec.cxx | 2 +- 3 files changed, 47 insertions(+), 24 deletions(-) diff --git a/STEER/AliESDZDC.cxx b/STEER/AliESDZDC.cxx index 3d7cd625988..63c51c4ea0e 100644 --- a/STEER/AliESDZDC.cxx +++ b/STEER/AliESDZDC.cxx @@ -27,7 +27,7 @@ ClassImp(AliESDZDC) -float fCParCentr(const int n) {return 1.8936-0.7126/(n + 0.7179);} +Float_t funCParCentr(const Int_t n) {return 1.8936-0.7126/(n + 0.7179);} //______________________________________________________________________________ AliESDZDC::AliESDZDC() : @@ -40,12 +40,15 @@ AliESDZDC::AliESDZDC() : fZDCEMEnergy1(0), fZDCParticipants(0) { - for(int i=0; i<5; i++){ + for(Int_t i=0; i<5; i++){ fZN1TowerEnergy[i] = fZN2TowerEnergy[i] = 0.; fZP1TowerEnergy[i] = fZP2TowerEnergy[i] = 0.; fZN1TowerEnergyLR[i] = fZN2TowerEnergyLR[i] = 0.; fZP1TowerEnergyLR[i] = fZP2TowerEnergyLR[i] = 0.; } + for(Int_t i=0; i<2; i++){ + fZNACentrCoord[i] = fZNCCentrCoord[i] = 0.; + } } AliESDZDC::AliESDZDC(const AliESDZDC& zdc) : @@ -59,7 +62,7 @@ AliESDZDC::AliESDZDC(const AliESDZDC& zdc) : fZDCParticipants(zdc.fZDCParticipants) { // copy constructor - for(int i=0; i<5; i++){ + for(Int_t i=0; i<5; i++){ fZN1TowerEnergy[i] = zdc.fZN1TowerEnergy[i]; fZN2TowerEnergy[i] = zdc.fZN2TowerEnergy[i]; fZP1TowerEnergy[i] = zdc.fZP1TowerEnergy[i]; @@ -69,6 +72,10 @@ AliESDZDC::AliESDZDC(const AliESDZDC& zdc) : fZP1TowerEnergyLR[i] = zdc.fZP1TowerEnergyLR[i]; fZP2TowerEnergyLR[i] = zdc.fZP2TowerEnergyLR[i]; } + for(Int_t i=0; i<2; i++){ + fZNACentrCoord[i] = zdc.fZNACentrCoord[i]; + fZNCCentrCoord[i] = zdc.fZNCCentrCoord[i]; + } } AliESDZDC& AliESDZDC::operator=(const AliESDZDC&zdc) @@ -93,6 +100,10 @@ AliESDZDC& AliESDZDC::operator=(const AliESDZDC&zdc) fZP1TowerEnergyLR[i] = zdc.fZP1TowerEnergyLR[i]; fZP2TowerEnergyLR[i] = zdc.fZP2TowerEnergyLR[i]; } + for(Int_t i=0; i<2; i++){ + fZNACentrCoord[i] = zdc.fZNACentrCoord[i]; + fZNCCentrCoord[i] = zdc.fZNCCentrCoord[i]; + } } return *this; } @@ -122,12 +133,15 @@ void AliESDZDC::Reset() fZDCParticipants=0; fZDCEMEnergy=0; fZDCEMEnergy1=0; - for(int i=0; i<5; i++){ + for(Int_t i=0; i<5; i++){ fZN1TowerEnergy[i] = fZN2TowerEnergy[i] = 0.; fZP1TowerEnergy[i] = fZP2TowerEnergy[i] = 0.; fZN1TowerEnergyLR[i] = fZN2TowerEnergyLR[i] = 0.; fZP1TowerEnergyLR[i] = fZP2TowerEnergyLR[i] = 0.; } + for(Int_t i=0; i<2; i++){ + fZNACentrCoord[i] = fZNCCentrCoord[i] = 0.; + } } //______________________________________________________________________________ @@ -140,10 +154,9 @@ void AliESDZDC::Print(const Option_t *) const } //______________________________________________________________________________ -const Float_t * AliESDZDC::GetZNCCentroid(int NspecnC) const +Double32_t * AliESDZDC::GetZNCCentroid(Int_t NspecnC) { // Provide coordinates of centroid over ZN (side C) front face - Float_t CentrCoord[2]; Float_t x[4] = {-1.75, 1.75, -1.75, 1.75}; Float_t y[4] = {-1.75, -1.72, 1.75, 1.75}; Float_t NumX=0., NumY=0., Den=0.; @@ -155,17 +168,16 @@ const Float_t * AliESDZDC::GetZNCCentroid(int NspecnC) const Den += w; } if(Den!=0){ - CentrCoord[0] = fCParCentr(NspecnC)*NumX/Den; - CentrCoord[1] = fCParCentr(NspecnC)*NumY/Den; + fZNCCentrCoord[0] = funCParCentr(NspecnC)*NumX/Den; + fZNCCentrCoord[1] = funCParCentr(NspecnC)*NumY/Den; } - return CentrCoord; + return fZNCCentrCoord; } //______________________________________________________________________________ -const Float_t * AliESDZDC::GetZNACentroid(int NspecnA) const +Double32_t * AliESDZDC::GetZNACentroid(Int_t NspecnA) { // Provide coordinates of centroid over ZN (side A) front face - Float_t CentrCoord[2]; Float_t x[4] = {-1.75, 1.75, -1.75, 1.75}; Float_t y[4] = {-1.75, -1.72, 1.75, 1.75}; Float_t NumX=0., NumY=0., Den=0.; @@ -178,8 +190,8 @@ const Float_t * AliESDZDC::GetZNACentroid(int NspecnA) const } // if(Den!=0){ - CentrCoord[0] = fCParCentr(NspecnA)*NumX/Den; - CentrCoord[1] = fCParCentr(NspecnA)*NumY/Den; + fZNACentrCoord[0] = funCParCentr(NspecnA)*NumX/Den; + fZNACentrCoord[1] = funCParCentr(NspecnA)*NumY/Den; } - return CentrCoord; + return fZNACentrCoord; } diff --git a/STEER/AliESDZDC.h b/STEER/AliESDZDC.h index b52d21d806e..ecf754e48f1 100644 --- a/STEER/AliESDZDC.h +++ b/STEER/AliESDZDC.h @@ -27,7 +27,8 @@ public: Double_t GetZDCN2Energy() const {return fZDCN2Energy;} Double_t GetZDCP2Energy() const {return fZDCP2Energy;} Double_t GetZDCEMEnergy(Int_t i) const - {if(i==0){return fZDCEMEnergy;}else if(i==1){return fZDCEMEnergy1;}return 0;} + {if(i==0){return fZDCEMEnergy;} else if(i==1){return fZDCEMEnergy1;} + return 0;} Short_t GetZDCParticipants() const {return fZDCParticipants;} const Double_t * GetZN1TowerEnergy() const {return fZN1TowerEnergy;} const Double_t * GetZN2TowerEnergy() const {return fZN2TowerEnergy;} @@ -38,13 +39,16 @@ public: const Double_t * GetZP1TowerEnergyLR() const {return fZP1TowerEnergyLR;} const Double_t * GetZP2TowerEnergyLR() const {return fZP2TowerEnergyLR;} // - const Float_t * GetZNCCentroid(int NspecnC) const; - const Float_t * GetZNACentroid(int NspecnA) const; + Double32_t * GetZNCCentroid(int NspecnC); + Double32_t * GetZNACentroid(int NspecnA); + // + void SetZDC(Double_t n1Energy, Double_t p1Energy, + Double_t emEnergy0, Double_t emEnergy1, + Double_t n2Energy, Double_t p2Energy, Short_t participants) + {fZDCN1Energy=n1Energy; fZDCP1Energy=p1Energy; + fZDCEMEnergy=emEnergy0; fZDCEMEnergy1=emEnergy1; + fZDCN2Energy=n2Energy; fZDCP2Energy=p2Energy; fZDCParticipants=participants;} // - void SetZDC(Double_t n1Energy, Double_t p1Energy, Double_t emEnergy0, Double_t emEnergy1, - Double_t n2Energy, Double_t p2Energy, Short_t participants) - {fZDCN1Energy=n1Energy; fZDCP1Energy=p1Energy; fZDCEMEnergy=emEnergy0; fZDCEMEnergy1=emEnergy1; - fZDCN2Energy=n2Energy; fZDCP2Energy=p2Energy; fZDCParticipants=participants;} void SetZN1TowerEnergy(Float_t tow1[5]) {for(Int_t i=0; i<5; i++) fZN1TowerEnergy[i] = tow1[i];} void SetZN2TowerEnergy(Float_t tow2[5]) @@ -61,6 +65,10 @@ public: {for(Int_t i=0; i<5; i++) fZP1TowerEnergyLR[i] = tow1[i];} void SetZP2TowerEnergyLR(Float_t tow2[5]) {for(Int_t i=0; i<5; i++) fZP2TowerEnergyLR[i] = tow2[i];} + void SetZNACentroid(Float_t centrCoord[2]) + {for(Int_t i=0; i<2; i++) fZNACentrCoord[i] = centrCoord[i];} + void SetZNCCentroid(Float_t centrCoord[2]) + {for(Int_t i=0; i<2; i++) fZNCCentrCoord[i] = centrCoord[i];} void Reset(); void Print(const Option_t *opt=0) const; @@ -81,8 +89,11 @@ private: Double32_t fZN2TowerEnergyLR[5];// reco E in 5 ZN2 sectors - low gain chain Double32_t fZP1TowerEnergyLR[5];// reco E in 5 ZP1 sectors - low gain chain Double32_t fZP2TowerEnergyLR[5];// reco E in 5 ZP2 sectors - low gain chain - Short_t fZDCParticipants; // number of participants estimated by the ZDC - ClassDef(AliESDZDC,7) + Short_t fZDCParticipants;// number of participants estimated by the ZDC + Double32_t fZNACentrCoord[2];// Coordinates of the centroid over ZNC + Double32_t fZNCCentrCoord[2];// Coordinates of the centroid over ZNA + // + ClassDef(AliESDZDC,8) }; #endif diff --git a/ZDC/AliZDCQADataMakerRec.cxx b/ZDC/AliZDCQADataMakerRec.cxx index d8a3d297602..c382175e440 100644 --- a/ZDC/AliZDCQADataMakerRec.cxx +++ b/ZDC/AliZDCQADataMakerRec.cxx @@ -280,7 +280,7 @@ void AliZDCQADataMakerRec::MakeESDs(AliESDEvent * esd) // AliESDZDC * zdcESD = esd->GetESDZDC(); // - const Float_t * Centr_ZNC, * Centr_ZNA; + Double32_t * Centr_ZNC, * Centr_ZNA; Int_t NSpecnC = (Int_t) (esd->GetZDCN1Energy()/2.7); if(NSpecnC!=0){ Centr_ZNC = zdcESD->GetZNCCentroid(NSpecnC); -- 2.43.0