From 90dbf5fb2b3b943ac8b441443b53a86cc3db5c54 Mon Sep 17 00:00:00 2001 From: hristov Date: Tue, 28 Aug 2007 13:12:19 +0000 Subject: [PATCH] AliAlignObjAngles becomes AliAlignObjParams (Raffaele) --- EMCAL/MakeEMCALFullMisAlignment.C | 8 +- EMCAL/MakeEMCALResMisAlignment.C | 8 +- EMCAL/MakeEMCALZeroMisAlignment.C | 8 +- .../macros/AlignmentDB/AliEMCALSetAlignment.C | 32 ++++---- FMD/AliFMDAlignFaker.cxx | 8 +- FMD/AliFMDInput.cxx | 4 +- FMD/scripts/ApplyAlignment.C | 2 +- FMD/scripts/PrintAlignment.C | 2 +- ITS/MakeITSFullMisAlignment.C | 10 +-- ITS/MakeITSResMisAlignment.C | 10 +-- ITS/MakeITSZeroMisAlignment.C | 8 +- MUON/Doxymodules_STEER.h | 2 +- PHOS/AliPHOSSurvey.cxx | 15 ++-- PHOS/AliPHOSSurvey.h | 11 ++- PHOS/MakePHOSFullMisAlignment.C | 38 +++++----- PHOS/MakePHOSResMisAlignment.C | 36 ++++----- PHOS/MakePHOSZeroMisAlignment.C | 34 ++++----- PHOS/macros/AlignmentDB/AliPHOSSetAlignment.C | 60 +++++++-------- PMD/AliPMDAlObjRnd.C | 12 +-- PMD/MakePMDFullMisAlignment.C | 12 +-- PMD/MakePMDResMisAlignment.C | 12 +-- PMD/MakePMDZeroMisAlignment.C | 6 +- STEER/AliAlignObj.cxx | 73 ++++++++++++++++++- STEER/AliAlignObj.h | 10 ++- ...ignObjAngles.cxx => AliAlignObjParams.cxx} | 28 +++---- ...liAlignObjAngles.h => AliAlignObjParams.h} | 18 ++--- STEER/AliAlignmentTracks.cxx | 6 +- STEER/AliGeomManager.cxx | 4 +- STEER/AliTrackResiduals.cxx | 4 +- STEER/AliTrackResiduals.h | 2 +- STEER/STEERLinkDef.h | 2 +- STEER/libSTEER.pkg | 2 +- T0/MakeT0FullMisAlignment.C | 6 +- T0/MakeT0ResMisAlignment.C | 6 +- T0/MakeT0ZeroMisAlignment.C | 6 +- TOF/AliTOFAlignment.cxx | 9 ++- TOF/MakeTOFFullMisAlignment.C | 14 ++-- TOF/MakeTOFResMisAlignment.C | 6 +- TOF/MakeTOFZeroMisAlignment.C | 6 +- TPC/AliTPCParam.cxx | 4 +- TPC/Cal/AliTPCCreateDummyCDB.C | 8 +- TPC/MakeTPCFullMisAlignment.C | 6 +- TPC/MakeTPCResMisAlignment.C | 6 +- TPC/MakeTPCZeroMisAlignment.C | 6 +- TRD/AliTRDalignment.cxx | 16 ++-- TRD/AliTRDgeometry.cxx | 4 +- TRD/MakeTRDFullMisAlignment.C | 10 +-- TRD/MakeTRDResMisAlignment.C | 6 +- TRD/MakeTRDZeroMisAlignment.C | 6 +- VZERO/MakeVZEROFullMisAlignment.C | 8 +- VZERO/MakeVZEROResMisAlignment.C | 8 +- VZERO/MakeVZEROZeroMisAlignment.C | 8 +- ZDC/AliZDCPreprocessor.cxx | 14 ++-- ZDC/MakeZDCFullMisAlignment.C | 8 +- ZDC/MakeZDCResMisAlignment.C | 8 +- ZDC/MakeZDCZeroMisAlignment.C | 8 +- 56 files changed, 379 insertions(+), 295 deletions(-) rename STEER/{AliAlignObjAngles.cxx => AliAlignObjParams.cxx} (88%) rename STEER/{AliAlignObjAngles.h => AliAlignObjParams.h} (80%) diff --git a/EMCAL/MakeEMCALFullMisAlignment.C b/EMCAL/MakeEMCALFullMisAlignment.C index ee4a92fb1f1..404f094790a 100644 --- a/EMCAL/MakeEMCALFullMisAlignment.C +++ b/EMCAL/MakeEMCALFullMisAlignment.C @@ -1,7 +1,7 @@ void MakeEMCALFullMisAlignment(){ // Create TClonesArray of full misalignment objects for EMCAL // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; if(!AliGeomManager::GetGeometry()){ @@ -10,7 +10,7 @@ void MakeEMCALFullMisAlignment(){ AliCDBManager::Instance()->SetRun(0); AliGeomManager::LoadGeometry(); } - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx, dy, dz, dpsi, dtheta, dphi; TRandom *rnd = new TRandom(4321); @@ -39,7 +39,7 @@ void MakeEMCALFullMisAlignment(){ pathstr=basepath; pathstr+=(i+1); cout<Gaus(0.,sigmarot); pathstr=hbasepath; pathstr+=(i+1); - new(alobj[j++]) AliAlignObjAngles(pathstr, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[j++]) AliAlignObjParams(pathstr, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); } const char* macroname = "MakeEMCALFullMisAlignment.C"; diff --git a/EMCAL/MakeEMCALResMisAlignment.C b/EMCAL/MakeEMCALResMisAlignment.C index 721e6010f1d..7812ab72ff8 100644 --- a/EMCAL/MakeEMCALResMisAlignment.C +++ b/EMCAL/MakeEMCALResMisAlignment.C @@ -1,7 +1,7 @@ void MakeEMCALResMisAlignment(){ // Create TClonesArray of residual misalignment objects for EMCAL // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; if(!AliGeomManager::GetGeometry()){ @@ -10,7 +10,7 @@ void MakeEMCALResMisAlignment(){ AliCDBManager::Instance()->SetRun(0); AliGeomManager::LoadGeometry(); } - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx, dy, dz, dpsi, dtheta, dphi; @@ -41,7 +41,7 @@ void MakeEMCALResMisAlignment(){ dphi = rnd->Gaus(0.,sigmarot); pathstr=basepath; pathstr+=(i+1); - new(alobj[j++]) AliAlignObjAngles(pathstr, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); + new(alobj[j++]) AliAlignObjParams(pathstr, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); } for(i=0; i<2; i++){ @@ -53,7 +53,7 @@ void MakeEMCALResMisAlignment(){ dphi = rnd->Gaus(0.,sigmarot); pathstr=hbasepath; pathstr+=(i+1); - new(alobj[j++]) AliAlignObjAngles(pathstr, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[j++]) AliAlignObjParams(pathstr, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); } const char* macroname = "MakeEMCALResMisAlignment.C"; diff --git a/EMCAL/MakeEMCALZeroMisAlignment.C b/EMCAL/MakeEMCALZeroMisAlignment.C index 41ed85d2710..8b739617d69 100644 --- a/EMCAL/MakeEMCALZeroMisAlignment.C +++ b/EMCAL/MakeEMCALZeroMisAlignment.C @@ -1,7 +1,7 @@ void MakeEMCALZeroMisAlignment(){ // Create TClonesArray of zero misalignment objects for EMCAL // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; if(!AliGeomManager::GetGeometry()){ @@ -10,7 +10,7 @@ void MakeEMCALZeroMisAlignment(){ AliCDBManager::Instance()->SetRun(0); AliGeomManager::LoadGeometry(); } - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0., dy=0., dz=0., dpsi=0., dtheta=0., dphi=0.; @@ -28,13 +28,13 @@ void MakeEMCALZeroMisAlignment(){ for(i=0; i<10; i++){ pathstr=fbasepath; pathstr+=(i+1); - new(alobj[j++]) AliAlignObjAngles(pathstr, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[j++]) AliAlignObjParams(pathstr, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); } for(i=0; i<2; i++){ pathstr=hbasepath; pathstr+=(i+1); - new(alobj[j++]) AliAlignObjAngles(pathstr, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[j++]) AliAlignObjParams(pathstr, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); } const char* macroname = "MakeEMCALZeroMisAlignment.C"; diff --git a/EMCAL/macros/AlignmentDB/AliEMCALSetAlignment.C b/EMCAL/macros/AlignmentDB/AliEMCALSetAlignment.C index 5a981b56760..18de533be5c 100755 --- a/EMCAL/macros/AlignmentDB/AliEMCALSetAlignment.C +++ b/EMCAL/macros/AlignmentDB/AliEMCALSetAlignment.C @@ -12,7 +12,7 @@ #include "TRandom.h" #include "TClonesArray.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliCDBMetaData.h" #include "AliCDBId.h" #include "AliCDBEntry.h" @@ -57,10 +57,10 @@ void IdealAlignment() // ************************* 1st step *************** // Create TClonesArray of alignment objects for EMCAL - TClonesArray *array = new TClonesArray("AliAlignObjAngles",12); + TClonesArray *array = new TClonesArray("AliAlignObjParams",12); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0., dy=0., dz=0., dpsi=0., dtheta=0., dphi=0.; // null shifts and rotations @@ -75,14 +75,14 @@ void IdealAlignment() for (Int_t iModule = 0; iModule < nModules; iModule++) { TString newPath = basePath; newPath += iModule+1; - new(alobj[iModule]) AliAlignObjAngles(newPath.Data(), + new(alobj[iModule]) AliAlignObjParams(newPath.Data(), dvoluid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); } //half SMs - new(alobj[10]) AliAlignObjAngles("EMCAL/HalfSupermodule1", + new(alobj[10]) AliAlignObjParams("EMCAL/HalfSupermodule1", dvoluid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[11]) AliAlignObjAngles("EMCAL/HalfSupermodule2", + new(alobj[11]) AliAlignObjParams("EMCAL/HalfSupermodule2", dvoluid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); @@ -108,10 +108,10 @@ void ResidualAlignment() // ************************* 1st step *************** // Create TClonesArray of alignment objects for EMCAL - TClonesArray *array = new TClonesArray("AliAlignObjAngles",12); + TClonesArray *array = new TClonesArray("AliAlignObjParams",12); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; UShort_t iIndex=0; AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; @@ -128,18 +128,18 @@ void ResidualAlignment() dpsi = pRnd->Gaus(0,sigmaRot); dtheta = pRnd->Gaus(0,sigmaRot); dphi = pRnd->Gaus(0,sigmaRot); TString newPath = basePath; newPath += iSM + 1; - new(alobj[iSM]) AliAlignObjAngles(newPath.Data(), + new(alobj[iSM]) AliAlignObjParams(newPath.Data(), dvoluid, dx,dy,dz,dpsi,dtheta,dphi, kTRUE); } dx = pRnd->Gaus(0,sigmaTrans); dy = pRnd->Gaus(0,sigmaTrans); dz = pRnd->Gaus(0,sigmaTrans); dpsi = pRnd->Gaus(0,sigmaRot); dtheta = pRnd->Gaus(0,sigmaRot); dphi = pRnd->Gaus(0,sigmaRot); - new(alobj[10]) AliAlignObjAngles("EMCAL/HalfSupermodule1", + new(alobj[10]) AliAlignObjParams("EMCAL/HalfSupermodule1", dvoluid, dx,dy,dz,dpsi,dtheta,dphi, kTRUE); dx = pRnd->Gaus(0,sigmaTrans); dy = pRnd->Gaus(0,sigmaTrans); dz = pRnd->Gaus(0,sigmaTrans); dpsi = pRnd->Gaus(0,sigmaRot); dtheta = pRnd->Gaus(0,sigmaRot); dphi = pRnd->Gaus(0,sigmaRot); - new(alobj[11]) AliAlignObjAngles("EMCAL/HalfSupermodule2", + new(alobj[11]) AliAlignObjParams("EMCAL/HalfSupermodule2", dvoluid, dx,dy,dz,dpsi,dtheta,dphi, kTRUE); // ************************* 2nd step *************** @@ -163,10 +163,10 @@ void FullMisalignment() // ************************* 1st step *************** // Create TClonesArray of alignment objects for EMCAL - TClonesArray *array = new TClonesArray("AliAlignObjAngles",12); + TClonesArray *array = new TClonesArray("AliAlignObjParams",12); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; UShort_t iIndex=0; AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; @@ -184,18 +184,18 @@ void FullMisalignment() dpsi = pRnd->Gaus(0,sigmaRot); dtheta = pRnd->Gaus(0,sigmaRot); dphi = pRnd->Gaus(0,sigmaRot); TString newPath = basePath; newPath += iSM + 1; - new(alobj[iSM]) AliAlignObjAngles(newPath.Data(), + new(alobj[iSM]) AliAlignObjParams(newPath.Data(), dvoluid, dx,dy,dz,dpsi,dtheta,dphi, kTRUE); } dx = pRnd->Gaus(0,sigmaTrans); dy = pRnd->Gaus(0,sigmaTrans); dz = pRnd->Gaus(0,sigmaTrans); dpsi = pRnd->Gaus(0,sigmaRot); dtheta = pRnd->Gaus(0,sigmaRot); dphi = pRnd->Gaus(0,sigmaRot); - new(alobj[10]) AliAlignObjAngles("EMCAL/HalfSupermodule1", + new(alobj[10]) AliAlignObjParams("EMCAL/HalfSupermodule1", dvoluid, dx,dy,dz,dpsi,dtheta,dphi, kTRUE); dx = pRnd->Gaus(0,sigmaTrans); dy = pRnd->Gaus(0,sigmaTrans); dz = pRnd->Gaus(0,sigmaTrans); dpsi = pRnd->Gaus(0,sigmaRot); dtheta = pRnd->Gaus(0,sigmaRot); dphi = pRnd->Gaus(0,sigmaRot); - new(alobj[11]) AliAlignObjAngles("EMCAL/HalfSupermodule2", + new(alobj[11]) AliAlignObjParams("EMCAL/HalfSupermodule2", dvoluid, dx,dy,dz,dpsi,dtheta,dphi, kTRUE); // ************************* 2nd step *************** diff --git a/FMD/AliFMDAlignFaker.cxx b/FMD/AliFMDAlignFaker.cxx index 9f2c971f399..7942d65e970 100644 --- a/FMD/AliFMDAlignFaker.cxx +++ b/FMD/AliFMDAlignFaker.cxx @@ -44,7 +44,7 @@ #include // ALICDBSTORAGE_H #include // ALICDBMANAGER_H // #include -#include +#include // #include #include // #include @@ -161,7 +161,7 @@ AliFMDAlignFaker::Exec(Option_t*) return; } // Make container of transforms - if (!fArray) fArray = new TClonesArray("AliAlignObjAngles"); + if (!fArray) fArray = new TClonesArray("AliAlignObjParams"); fArray->Clear(); // Make an iterator @@ -253,8 +253,8 @@ AliFMDAlignFaker::MakeAlign(const TString& path, Int_t id, path.Data(), id, transX, transY, transZ, rotX, rotY, rotZ)); Int_t nAlign = fArray->GetEntries(); id = 0; - AliAlignObjAngles* obj = - new ((*fArray)[nAlign]) AliAlignObjAngles(path.Data(), + AliAlignObjParams* obj = + new ((*fArray)[nAlign]) AliAlignObjParams(path.Data(), id,0,0,0,0,0,0,kTRUE); if (!obj) { AliError(Form("Failed to create alignment object for %s", path.Data())); diff --git a/FMD/AliFMDInput.cxx b/FMD/AliFMDInput.cxx index a3a97a521e4..c1848948483 100644 --- a/FMD/AliFMDInput.cxx +++ b/FMD/AliFMDInput.cxx @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include // ROOT_TTree #include // ROOT_TChain #include // ROOT_TParticle @@ -234,7 +234,7 @@ AliFMDInput::Init() else { Int_t nAlign = array->GetEntries(); for (Int_t i = 0; i < nAlign; i++) { - AliAlignObjAngles* a = static_cast(array->At(i)); + AliAlignObjParams* a = static_cast(array->At(i)); if (!a->ApplyToGeometry()) { AliWarning(Form("Failed to apply alignment to %s", a->GetSymName())); diff --git a/FMD/scripts/ApplyAlignment.C b/FMD/scripts/ApplyAlignment.C index c18463b8d5e..98969dce381 100644 --- a/FMD/scripts/ApplyAlignment.C +++ b/FMD/scripts/ApplyAlignment.C @@ -26,7 +26,7 @@ ApplyAlignment() else { Int_t nAlign = array->GetEntries(); for (Int_t i = 0; i < nAlign; i++) { - AliAlignObjAngles* a = static_cast(array->At(i)); + AliAlignObjParams* a = static_cast(array->At(i)); if (!a->ApplyToGeometry()) { Warning("ApplyAlignement", "Failed to apply alignment to %s", a->GetVolPath()); diff --git a/FMD/scripts/PrintAlignment.C b/FMD/scripts/PrintAlignment.C index bb897f23168..a207166bc43 100644 --- a/FMD/scripts/PrintAlignment.C +++ b/FMD/scripts/PrintAlignment.C @@ -27,7 +27,7 @@ PrintAlignment() } Int_t nAlign = array->GetEntries(); for (Int_t i = 0; i < nAlign; i++) { - AliAlignObjAngles* a = static_cast(array->At(i)); + AliAlignObjParams* a = static_cast(array->At(i)); Double_t ang[3]; Double_t trans[3]; a->GetAngles(ang); diff --git a/ITS/MakeITSFullMisAlignment.C b/ITS/MakeITSFullMisAlignment.C index 742bdcf8dfe..7560cccd83f 100644 --- a/ITS/MakeITSFullMisAlignment.C +++ b/ITS/MakeITSFullMisAlignment.C @@ -1,7 +1,7 @@ void MakeITSFullMisAlignment(){ // Create TClonesArray of full misalignment objects for ITS // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",4000); + TClonesArray *array = new TClonesArray("AliAlignObjParams",4000); TClonesArray &alobj = *array; if(!AliGeomManager::GetGeometry()){ @@ -26,13 +26,13 @@ void MakeITSFullMisAlignment(){ TRandom *rnd = new TRandom(65416087); - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0., dy=0., dz=0., dpsi=0., dtheta=0., dphi=0.; Int_t j = 0; - new(alobj[j++]) AliAlignObjAngles("ITS", 0, dx, dy, globalZ, dpsi, dtheta, dphi, kTRUE); - AliAlignObjAngles* its_alobj = (AliAlignObjAngles*) array->UncheckedAt(0); + new(alobj[j++]) AliAlignObjParams("ITS", 0, dx, dy, globalZ, dpsi, dtheta, dphi, kTRUE); + AliAlignObjParams* its_alobj = (AliAlignObjParams*) array->UncheckedAt(0); its_alobj->ApplyToGeometry(); for ( Int_t l = AliGeomManager::kSPD1; l <= AliGeomManager::kSSD2; l++) { @@ -87,7 +87,7 @@ void MakeITSFullMisAlignment(){ UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iModule); const char *symname = AliGeomManager::SymName(volid); - new(alobj[j++]) AliAlignObjAngles(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); + new(alobj[j++]) AliAlignObjParams(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); } } diff --git a/ITS/MakeITSResMisAlignment.C b/ITS/MakeITSResMisAlignment.C index 60327e6a40b..e0c2532807b 100644 --- a/ITS/MakeITSResMisAlignment.C +++ b/ITS/MakeITSResMisAlignment.C @@ -1,7 +1,7 @@ void MakeITSResMisAlignment(){ // Create TClonesArray of residual misalignment objects for ITS // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",4000); + TClonesArray *array = new TClonesArray("AliAlignObjParams",4000); TClonesArray &alobj = *array; if(!AliGeomManager::GetGeometry()){ @@ -23,15 +23,15 @@ void MakeITSResMisAlignment(){ Double_t ssdZ = 0.010; TRandom *rnd = new TRandom(65416087); - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0., dy=0., dz=0., dpsi=0., dtheta=0., dphi=0.; AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; Int_t j = 0; - new(alobj[j++]) AliAlignObjAngles("ITS", 0, dx, dy, globalZ, dpsi, dtheta, dphi, kTRUE); - AliAlignObjAngles* its_alobj = (AliAlignObjAngles*) array->UncheckedAt(0); + new(alobj[j++]) AliAlignObjParams("ITS", 0, dx, dy, globalZ, dpsi, dtheta, dphi, kTRUE); + AliAlignObjParams* its_alobj = (AliAlignObjParams*) array->UncheckedAt(0); its_alobj->ApplyToGeometry(); @@ -88,7 +88,7 @@ void MakeITSResMisAlignment(){ UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iModule); const char *symname = AliGeomManager::SymName(volid); - new(alobj[j]) AliAlignObjAngles(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); + new(alobj[j]) AliAlignObjParams(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); j++; } diff --git a/ITS/MakeITSZeroMisAlignment.C b/ITS/MakeITSZeroMisAlignment.C index 0fa7324dcbb..bf7b66097ee 100644 --- a/ITS/MakeITSZeroMisAlignment.C +++ b/ITS/MakeITSZeroMisAlignment.C @@ -1,7 +1,7 @@ void MakeITSZeroMisAlignment(){ // Create TClonesArray of zero misalignment objects for ITS // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",4000); + TClonesArray *array = new TClonesArray("AliAlignObjParams",4000); TClonesArray &alobj = *array; if(!AliGeomManager::GetGeometry()){ @@ -12,14 +12,14 @@ void MakeITSZeroMisAlignment(){ } // needed for the constructors with local coordinates not to fail - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0., dy=0., dz=0., dpsi=0., dtheta=0., dphi=0., globalZ=0.; AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; Int_t j = 0; - new(alobj[j]) AliAlignObjAngles("ITS", 0, dx, dy, globalZ, dpsi, dtheta, dphi, kTRUE); + new(alobj[j]) AliAlignObjParams("ITS", 0, dx, dy, globalZ, dpsi, dtheta, dphi, kTRUE); j++; for ( Int_t l = AliGeomManager::kSPD1; l <= AliGeomManager::kSSD2; l++) { @@ -53,7 +53,7 @@ void MakeITSZeroMisAlignment(){ UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iModule); const char *symname = AliGeomManager::SymName(volid); - new(alobj[j]) AliAlignObjAngles(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[j]) AliAlignObjParams(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); j++; } diff --git a/MUON/Doxymodules_STEER.h b/MUON/Doxymodules_STEER.h index 3f741a06dea..d0281227e21 100644 --- a/MUON/Doxymodules_STEER.h +++ b/MUON/Doxymodules_STEER.h @@ -90,7 +90,7 @@ class AliGeomManager {}; class AliAlignObj {}; - class AliAlignObjAngles {}; + class AliAlignObjParams {}; class AliAlignObjMatrix {}; class AliTrackFitter {}; diff --git a/PHOS/AliPHOSSurvey.cxx b/PHOS/AliPHOSSurvey.cxx index a02b8138105..e944529c4d0 100644 --- a/PHOS/AliPHOSSurvey.cxx +++ b/PHOS/AliPHOSSurvey.cxx @@ -18,6 +18,9 @@ /* History of cvs commits: * * $Log$ + * Revision 1.5 2007/07/10 12:41:38 kharlov + * Added a new class AliPHOSSurvet1 which read survey data from EDMS files + * * Revision 1.4 2007/05/17 17:34:54 kharlov * Merging differences if v1.2 and 1.3 * @@ -30,7 +33,7 @@ */ // Objects of this class read txt file with survey (photogrammetry) data -// and convert the data into AliAlignObjAngles of alignable PHOS volumes. +// and convert the data into AliAlignObjParams of alignable PHOS volumes. // It can be used as a base class, you need to override GetStripTransformation. // AliPHOSSurvey inherits TObject only to use AliLog "functions". // Author: Timur Pocheptsov (JINR) @@ -45,7 +48,7 @@ #include "AliSurveyObj.h" #include "AliPHOSEMCAGeometry.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliPHOSGeometry.h" #include "AliPHOSSurvey.h" #include "AliLog.h" @@ -122,9 +125,9 @@ AliPHOSSurvey::~AliPHOSSurvey() } //____________________________________________________________________________ -void AliPHOSSurvey::CreateAliAlignObjAngles(TClonesArray &array) +void AliPHOSSurvey::CreateAliAlignObjParams(TClonesArray &array) { - //Create AliAlignObjAngles. + //Create AliAlignObjParams. const AliPHOSGeometry * phosGeom = AliPHOSGeometry::GetInstance("IHEP", "IHEP"); if (!phosGeom) { AliError("Cannot obtain AliPHOSGeometry instance."); @@ -148,7 +151,7 @@ void AliPHOSSurvey::CreateAliAlignObjAngles(TClonesArray &array) TString stripName(TString::Format("PHOS/Module%d/Strip_%d_%d", module, i, j)); AliPHOSStripDelta t(GetStripTransformation(stripNum++, module)); new(array[arrayInd]) - AliAlignObjAngles( + AliAlignObjParams( stripName.Data(), volid, t.fXShift, t.fYShift, t.fZShift, -t.fPsi, -t.fTheta, -t.fPhi, @@ -173,7 +176,7 @@ void AliPHOSSurvey::CreateNullObjects(TClonesArray &array, const AliPHOSGeometry for (Int_t i = 0; i < emcaGeom->GetNStripX(); ++i) for (Int_t j = 0; j < emcaGeom->GetNStripZ(); ++j) { TString stripName(TString::Format("PHOS/Module%d/Strip_%d_%d", module, i, j)); - new(array[arrayInd]) AliAlignObjAngles(stripName.Data(), volid, 0., 0., 0., 0., 0., 0., true); + new(array[arrayInd]) AliAlignObjParams(stripName.Data(), volid, 0., 0., 0., 0., 0., 0., true); ++arrayInd; } } diff --git a/PHOS/AliPHOSSurvey.h b/PHOS/AliPHOSSurvey.h index 88a1d7eaa96..f67260b46c0 100644 --- a/PHOS/AliPHOSSurvey.h +++ b/PHOS/AliPHOSSurvey.h @@ -9,6 +9,9 @@ /* History of cvs commits: * * $Log$ + * Revision 1.3 2007/07/10 12:41:38 kharlov + * Added a new class AliPHOSSurvet1 which read survey data from EDMS files + * * Revision 1.2 2007/05/17 17:13:32 kharlov * Coding convensions satisfied (T.Pocheptsov) * @@ -27,7 +30,7 @@ class AliPHOSGeometry; /* Objects of this class read txt file with survey (photogrammetry) data - and convert the data into AliAlignObjAngles of alignable PHOS volumes. + and convert the data into AliAlignObjParams of alignable PHOS volumes. It can be used as a base class, you need to override GetStripTransformation. AliPHOSSurvey inherits TObject only to use AliLog "functions". */ @@ -39,9 +42,9 @@ public: virtual ~AliPHOSSurvey(); - //Create AliAlignObjAngles for strips. - void CreateAliAlignObjAngles(TClonesArray &array); - //Create AliAlignObjAngles with null shifts and rotations. + //Create AliAlignObjParams for strips. + void CreateAliAlignObjParams(TClonesArray &array); + //Create AliAlignObjParams with null shifts and rotations. void CreateNullObjects(TClonesArray &alObj, const AliPHOSGeometry *geom)const; protected: diff --git a/PHOS/MakePHOSFullMisAlignment.C b/PHOS/MakePHOSFullMisAlignment.C index 88c8694880c..10081ca1576 100644 --- a/PHOS/MakePHOSFullMisAlignment.C +++ b/PHOS/MakePHOSFullMisAlignment.C @@ -8,7 +8,7 @@ void MakePHOSFullMisAlignment(){ } AliPHOSEMCAGeometry *emca = phosGeom->GetEMCAGeometry(); - TClonesArray *array = new TClonesArray("AliAlignObjAngles", 16 + phosGeom->GetNModules() * + TClonesArray *array = new TClonesArray("AliAlignObjParams", 16 + phosGeom->GetNModules() * emca->GetNStripX() * emca->GetNStripZ()); TClonesArray &alobj = *array; @@ -20,51 +20,51 @@ void MakePHOSFullMisAlignment(){ Int_t i=0 ; // Alignment for 5 PHOS modules - new(alobj[i++]) AliAlignObjAngles("PHOS/Module1", + new(alobj[i++]) AliAlignObjParams("PHOS/Module1", volid, -20., -10., 0., dpsi, dtheta, 5, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module2", + new(alobj[i++]) AliAlignObjParams("PHOS/Module2", volid, -10., 0., -10., dpsi, dtheta, 2, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module3", + new(alobj[i++]) AliAlignObjParams("PHOS/Module3", volid, 5., -10., 10., dpsi, dtheta, 0, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module4", + new(alobj[i++]) AliAlignObjParams("PHOS/Module4", volid, +10., -0., -10., dpsi, dtheta, 2, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module5", + new(alobj[i++]) AliAlignObjParams("PHOS/Module5", volid, +20., -10., 0., dpsi, dtheta, 5, kTRUE); Double_t dx=0., dy=0., dz=0. ; // Alignment of CPV modules - new(alobj[i++]) AliAlignObjAngles("PHOS/Module1/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module1/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module2/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module2/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module3/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module3/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module4/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module4/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module5/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module5/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); // Alignment for PHOS cradle - new(alobj[i++]) AliAlignObjAngles("PHOS/Cradle0", + new(alobj[i++]) AliAlignObjParams("PHOS/Cradle0", volid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Cradle1", + new(alobj[i++]) AliAlignObjParams("PHOS/Cradle1", volid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); // Alignment for cradle wheels - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel0", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel0", volid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel1", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel1", volid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel2", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel2", volid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel3", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel3", volid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); // AliPHOSSurvey geodesicData("phos_mod3_survey.txt"); -// geodesicData.CreateAliAlignObjAngles(alobj); +// geodesicData.CreateAliAlignObjParams(alobj); AliPHOSSurvey1 geodesicData("phos_mod3_survey_EDMS.txt", "T1_"); - geodesicData.CreateAliAlignObjAngles(alobj); + geodesicData.CreateAliAlignObjParams(alobj); // ************************* 2nd step *************** diff --git a/PHOS/MakePHOSResMisAlignment.C b/PHOS/MakePHOSResMisAlignment.C index 5bdd22b5100..c58eeccefbe 100644 --- a/PHOS/MakePHOSResMisAlignment.C +++ b/PHOS/MakePHOSResMisAlignment.C @@ -8,7 +8,7 @@ void MakePHOSResMisAlignment(){ } AliPHOSEMCAGeometry *emca = phosGeom->GetEMCAGeometry(); - TClonesArray *array = new TClonesArray("AliAlignObjAngles", 16 + phosGeom->GetNModules() * + TClonesArray *array = new TClonesArray("AliAlignObjParams", 16 + phosGeom->GetNModules() * emca->GetNStripX() * emca->GetNStripZ()); TClonesArray &alobj = *array; @@ -20,49 +20,49 @@ void MakePHOSResMisAlignment(){ Int_t i=0 ; // Alignment for 5 PHOS modules - new(alobj[i++]) AliAlignObjAngles("PHOS/Module1", + new(alobj[i++]) AliAlignObjParams("PHOS/Module1", volid, -0.20, -0.1, +0.0, dpsi, dtheta, 0.2, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module2", + new(alobj[i++]) AliAlignObjParams("PHOS/Module2", volid, -0.10, +0.0, -0.2, dpsi, dtheta, 0.2, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module3", + new(alobj[i++]) AliAlignObjParams("PHOS/Module3", volid, 0.05, -0.1, 0.2, dpsi, dtheta, 0.0, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module4", + new(alobj[i++]) AliAlignObjParams("PHOS/Module4", volid, +0.10, -0.0, -0.1, dpsi, dtheta, 0.1, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module5", + new(alobj[i++]) AliAlignObjParams("PHOS/Module5", volid, +0.20, -0.1, 0.1, dpsi, dtheta, 0.2, kTRUE); Double_t dx=0., dy=0., dz=0. ; // Alignment of CPV modules - new(alobj[i++]) AliAlignObjAngles("PHOS/Module1/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module1/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module2/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module2/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module3/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module3/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module4/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module4/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module5/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module5/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); // Alignment for PHOS cradle - new(alobj[i++]) AliAlignObjAngles("PHOS/Cradle0", + new(alobj[i++]) AliAlignObjParams("PHOS/Cradle0", volid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Cradle1", + new(alobj[i++]) AliAlignObjParams("PHOS/Cradle1", volid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); // Alignment for cradle wheels - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel0", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel0", volid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel1", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel1", volid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel2", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel2", volid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel3", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel3", volid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); AliPHOSSurvey geodesicData("phos_mod3_survey.txt"); - geodesicData.CreateAliAlignObjAngles(alobj); + geodesicData.CreateAliAlignObjParams(alobj); const char* macroname = "MakePHOSResMisAlignment.C"; if( gSystem->Getenv("TOCDB") != TString("kTRUE") ){ diff --git a/PHOS/MakePHOSZeroMisAlignment.C b/PHOS/MakePHOSZeroMisAlignment.C index 307f8380e2c..72032a068af 100644 --- a/PHOS/MakePHOSZeroMisAlignment.C +++ b/PHOS/MakePHOSZeroMisAlignment.C @@ -8,7 +8,7 @@ void MakePHOSZeroMisAlignment(){ } AliPHOSEMCAGeometry *emca = phosGeom->GetEMCAGeometry(); - TClonesArray *array = new TClonesArray("AliAlignObjAngles", 16 + phosGeom->GetNModules() * + TClonesArray *array = new TClonesArray("AliAlignObjParams", 16 + phosGeom->GetNModules() * emca->GetNStripX() * emca->GetNStripZ()); TClonesArray &alobj = *array; @@ -19,44 +19,44 @@ void MakePHOSZeroMisAlignment(){ Int_t i=0 ; // Alignment for 5 PHOS modules - new(alobj[i++]) AliAlignObjAngles("PHOS/Module1", + new(alobj[i++]) AliAlignObjParams("PHOS/Module1", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module2", + new(alobj[i++]) AliAlignObjParams("PHOS/Module2", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module3", + new(alobj[i++]) AliAlignObjParams("PHOS/Module3", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module4", + new(alobj[i++]) AliAlignObjParams("PHOS/Module4", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module5", + new(alobj[i++]) AliAlignObjParams("PHOS/Module5", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); // Alignment of CPV modules - new(alobj[i++]) AliAlignObjAngles("PHOS/Module1/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module1/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module2/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module2/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module3/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module3/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module4/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module4/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Module5/CPV", + new(alobj[i++]) AliAlignObjParams("PHOS/Module5/CPV", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); // Alignment for PHOS cradle - new(alobj[i++]) AliAlignObjAngles("PHOS/Cradle0", + new(alobj[i++]) AliAlignObjParams("PHOS/Cradle0", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Cradle1", + new(alobj[i++]) AliAlignObjParams("PHOS/Cradle1", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); // Alignment for cradle wheels - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel0", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel0", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel1", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel1", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel2", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel2", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[i++]) AliAlignObjAngles("PHOS/Wheel3", + new(alobj[i++]) AliAlignObjParams("PHOS/Wheel3", volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); AliPHOSSurvey geodesicData; diff --git a/PHOS/macros/AlignmentDB/AliPHOSSetAlignment.C b/PHOS/macros/AlignmentDB/AliPHOSSetAlignment.C index a63f2b5d590..3a0bcf8011b 100644 --- a/PHOS/macros/AlignmentDB/AliPHOSSetAlignment.C +++ b/PHOS/macros/AlignmentDB/AliPHOSSetAlignment.C @@ -12,7 +12,7 @@ #include "TRandom.h" #include "TClonesArray.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliCDBMetaData.h" #include "AliCDBId.h" #include "AliCDBEntry.h" @@ -57,10 +57,10 @@ void IdealAlignment() // ************************* 1st step *************** // Create TClonesArray of alignment objects for PHOS - TClonesArray *array = new TClonesArray("AliAlignObjAngles",11); + TClonesArray *array = new TClonesArray("AliAlignObjParams",11); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0., dy=0., dz=0., dpsi=0., dtheta=0., dphi=0.; // null shifts and rotations @@ -75,7 +75,7 @@ void IdealAlignment() for (Int_t iModule = 1; iModule<=nModules; iModule++) { TString newPath = basePath; newPath += iModule; - new(alobj[iModule-1]) AliAlignObjAngles(newPath.Data(), + new(alobj[iModule-1]) AliAlignObjParams(newPath.Data(), dvoluid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); } @@ -101,10 +101,10 @@ void ResidualAlignment() // ************************* 1st step *************** // Create TClonesArray of alignment objects for PHOS - TClonesArray *array = new TClonesArray("AliAlignObjAngles",11); + TClonesArray *array = new TClonesArray("AliAlignObjParams",11); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dpsi=0., dtheta=0., dphi=0.; Double_t displacement = 0.2; @@ -114,31 +114,31 @@ void ResidualAlignment() UShort_t dvoluid = AliGeomManager::LayerToVolUID(iLayer,iIndex); //dummy volume identity // Alignment for 5 PHOS modules - new(alobj[0]) AliAlignObjAngles("PHOS/Module1", + new(alobj[0]) AliAlignObjParams("PHOS/Module1", dvoluid, -0.20, -0.1, +0.0, dpsi, dtheta, 0.2, kTRUE); - new(alobj[1]) AliAlignObjAngles("PHOS/Module2", + new(alobj[1]) AliAlignObjParams("PHOS/Module2", dvoluid, -0.10, +0.0, -0.2, dpsi, dtheta, 0.2, kTRUE); - new(alobj[2]) AliAlignObjAngles("PHOS/Module3", + new(alobj[2]) AliAlignObjParams("PHOS/Module3", dvoluid, 0.05, -0.1, 0.2, dpsi, dtheta, 0.0, kTRUE); - new(alobj[3]) AliAlignObjAngles("PHOS/Module4", + new(alobj[3]) AliAlignObjParams("PHOS/Module4", dvoluid, +0.10, -0.0, -0.1, dpsi, dtheta, 0.1, kTRUE); - new(alobj[4]) AliAlignObjAngles("PHOS/Module5", + new(alobj[4]) AliAlignObjParams("PHOS/Module5", dvoluid, +0.20, -0.1, 0.1, dpsi, dtheta, 0.2, kTRUE); // Alignment for PHOS cradle - new(alobj[5]) AliAlignObjAngles("PHOS/Cradle0", + new(alobj[5]) AliAlignObjParams("PHOS/Cradle0", dvoluid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[6]) AliAlignObjAngles("PHOS/Cradle1", + new(alobj[6]) AliAlignObjParams("PHOS/Cradle1", dvoluid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); // Alignment for cradle wheels - new(alobj[7]) AliAlignObjAngles("PHOS/Wheel0", + new(alobj[7]) AliAlignObjParams("PHOS/Wheel0", dvoluid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[8]) AliAlignObjAngles("PHOS/Wheel1", + new(alobj[8]) AliAlignObjParams("PHOS/Wheel1", dvoluid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[9]) AliAlignObjAngles("PHOS/Wheel2", + new(alobj[9]) AliAlignObjParams("PHOS/Wheel2", dvoluid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[10]) AliAlignObjAngles("PHOS/Wheel3", + new(alobj[10]) AliAlignObjParams("PHOS/Wheel3", dvoluid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); // ************************* 2nd step *************** @@ -162,10 +162,10 @@ void FullMisalignment() // ************************* 1st step *************** // Create TClonesArray of alignment objects for PHOS - TClonesArray *array = new TClonesArray("AliAlignObjAngles",11); + TClonesArray *array = new TClonesArray("AliAlignObjParams",11); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dpsi=0., dtheta=0., dphi=0.; Double_t displacement = 10; @@ -175,31 +175,31 @@ void FullMisalignment() UShort_t dvoluid = AliGeomManager::LayerToVolUID(iLayer,iIndex); //dummy volume identity // Alignment for 5 PHOS modules - new(alobj[0]) AliAlignObjAngles("PHOS/Module1", + new(alobj[0]) AliAlignObjParams("PHOS/Module1", dvoluid, -20., -10., 0., dpsi, dtheta, 5, kTRUE); - new(alobj[1]) AliAlignObjAngles("PHOS/Module2", + new(alobj[1]) AliAlignObjParams("PHOS/Module2", dvoluid, -10., 0., -10., dpsi, dtheta, 2, kTRUE); - new(alobj[2]) AliAlignObjAngles("PHOS/Module3", + new(alobj[2]) AliAlignObjParams("PHOS/Module3", dvoluid, 5., -10., 10., dpsi, dtheta, 0, kTRUE); - new(alobj[3]) AliAlignObjAngles("PHOS/Module4", + new(alobj[3]) AliAlignObjParams("PHOS/Module4", dvoluid, +10., -0., -10., dpsi, dtheta, 2, kTRUE); - new(alobj[4]) AliAlignObjAngles("PHOS/Module5", + new(alobj[4]) AliAlignObjParams("PHOS/Module5", dvoluid, +20., -10., 0., dpsi, dtheta, 5, kTRUE); // Alignment for PHOS cradle - new(alobj[5]) AliAlignObjAngles("PHOS/Cradle0", + new(alobj[5]) AliAlignObjParams("PHOS/Cradle0", dvoluid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[6]) AliAlignObjAngles("PHOS/Cradle1", + new(alobj[6]) AliAlignObjParams("PHOS/Cradle1", dvoluid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); // Alignment for cradle wheels - new(alobj[7]) AliAlignObjAngles("PHOS/Wheel0", + new(alobj[7]) AliAlignObjParams("PHOS/Wheel0", dvoluid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[8]) AliAlignObjAngles("PHOS/Wheel1", + new(alobj[8]) AliAlignObjParams("PHOS/Wheel1", dvoluid, 0., 0., -displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[9]) AliAlignObjAngles("PHOS/Wheel2", + new(alobj[9]) AliAlignObjParams("PHOS/Wheel2", dvoluid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); - new(alobj[10]) AliAlignObjAngles("PHOS/Wheel3", + new(alobj[10]) AliAlignObjParams("PHOS/Wheel3", dvoluid, 0., 0., +displacement, dpsi, dtheta, dphi, kTRUE); // ************************* 2nd step *************** diff --git a/PMD/AliPMDAlObjRnd.C b/PMD/AliPMDAlObjRnd.C index b1a01f31c61..f8c244dd350 100644 --- a/PMD/AliPMDAlObjRnd.C +++ b/PMD/AliPMDAlObjRnd.C @@ -80,7 +80,7 @@ void AliPMDAlObjRnd(Float_t max_trans=1.0, Float_t max_rot=0.1) //Create a TClonesArray of Align Object to store displacement Angles - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10000); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10000); TClonesArray &alobj = *array; // Create a File to store the alignment data @@ -89,17 +89,17 @@ void AliPMDAlObjRnd(Float_t max_trans=1.0, Float_t max_rot=0.1) TFile f("PMD_rnd_alobj.root","RECREATE"); if(!f) {cerr<<"cannot open file for output\n";} - AliAlignObjAngles o; + AliAlignObjParams o; UShort_t iIndex=0; // AliGeomManager::ELayerID iLayer = AliGeomManager::kTOF; // UShort_t dvoluid = AliGeomManager::LayerToVolUID(iLayer,iIndex); //dummy volume identity - new(alobj[0]) AliAlignObjAngles(Sector1, iIndex, dx14, dy14, dz14, dpsi14, dtheta14, dphi14); - new(alobj[1]) AliAlignObjAngles(Sector2, iIndex, dx14, dy14, dz14, dpsi14, dtheta14, dphi14); - new(alobj[2]) AliAlignObjAngles(Sector3, iIndex, dx23, dy23, dz23, dpsi23, dtheta23, dphi23); - new(alobj[3]) AliAlignObjAngles(Sector4, iIndex, dx23, dy23, dz23, dpsi23, dtheta23, dphi23); + new(alobj[0]) AliAlignObjParams(Sector1, iIndex, dx14, dy14, dz14, dpsi14, dtheta14, dphi14); + new(alobj[1]) AliAlignObjParams(Sector2, iIndex, dx14, dy14, dz14, dpsi14, dtheta14, dphi14); + new(alobj[2]) AliAlignObjParams(Sector3, iIndex, dx23, dy23, dz23, dpsi23, dtheta23, dphi23); + new(alobj[3]) AliAlignObjParams(Sector4, iIndex, dx23, dy23, dz23, dpsi23, dtheta23, dphi23); // This part needs to be understood f.cd(); diff --git a/PMD/MakePMDFullMisAlignment.C b/PMD/MakePMDFullMisAlignment.C index cbea35def7b..b9ab263afb2 100644 --- a/PMD/MakePMDFullMisAlignment.C +++ b/PMD/MakePMDFullMisAlignment.C @@ -93,19 +93,19 @@ void MakePMDFullMisAlignment(){ //Create a TClonesArray of Align Object to store displacement Angles - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; - AliAlignObjAngles o; + AliAlignObjParams o; Int_t iIndex=0; //let all modules have index=0 in a layer with no LUT AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iIndex); - new(alobj[0]) AliAlignObjAngles(Sector1, volid, dx14, dy14, dz14, dpsi14, dtheta14, dphi14, kFALSE); - new(alobj[1]) AliAlignObjAngles(Sector2, volid, dx14, dy14, dz14, dpsi14, dtheta14, dphi14, kFALSE); - new(alobj[2]) AliAlignObjAngles(Sector3, volid, dx23, dy23, dz23, dpsi23, dtheta23, dphi23, kFALSE); - new(alobj[3]) AliAlignObjAngles(Sector4, volid, dx23, dy23, dz23, dpsi23, dtheta23, dphi23, kFALSE); + new(alobj[0]) AliAlignObjParams(Sector1, volid, dx14, dy14, dz14, dpsi14, dtheta14, dphi14, kFALSE); + new(alobj[1]) AliAlignObjParams(Sector2, volid, dx14, dy14, dz14, dpsi14, dtheta14, dphi14, kFALSE); + new(alobj[2]) AliAlignObjParams(Sector3, volid, dx23, dy23, dz23, dpsi23, dtheta23, dphi23, kFALSE); + new(alobj[3]) AliAlignObjParams(Sector4, volid, dx23, dy23, dz23, dpsi23, dtheta23, dphi23, kFALSE); const char* macroname = "MakePMDFullMisAlignment.C"; if( gSystem->Getenv("TOCDB") != TString("kTRUE") ){ diff --git a/PMD/MakePMDResMisAlignment.C b/PMD/MakePMDResMisAlignment.C index 63918985aad..e95c29d6c93 100644 --- a/PMD/MakePMDResMisAlignment.C +++ b/PMD/MakePMDResMisAlignment.C @@ -92,19 +92,19 @@ void MakePMDResMisAlignment(){ //Create a TClonesArray of Align Object to store displacement Angles - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; - AliAlignObjAngles o; + AliAlignObjParams o; Int_t iIndex=0; // let all modules have index=0 in a layer with no LUT AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iIndex); - new(alobj[0]) AliAlignObjAngles(Sector1, volid, dx14, dy14, dz14, dpsi14, dtheta14, dphi14, kFALSE); - new(alobj[1]) AliAlignObjAngles(Sector2, volid, dx14, dy14, dz14, dpsi14, dtheta14, dphi14, kFALSE); - new(alobj[2]) AliAlignObjAngles(Sector3, volid, dx23, dy23, dz23, dpsi23, dtheta23, dphi23, kFALSE); - new(alobj[3]) AliAlignObjAngles(Sector4, volid, dx23, dy23, dz23, dpsi23, dtheta23, dphi23, kFALSE); + new(alobj[0]) AliAlignObjParams(Sector1, volid, dx14, dy14, dz14, dpsi14, dtheta14, dphi14, kFALSE); + new(alobj[1]) AliAlignObjParams(Sector2, volid, dx14, dy14, dz14, dpsi14, dtheta14, dphi14, kFALSE); + new(alobj[2]) AliAlignObjParams(Sector3, volid, dx23, dy23, dz23, dpsi23, dtheta23, dphi23, kFALSE); + new(alobj[3]) AliAlignObjParams(Sector4, volid, dx23, dy23, dz23, dpsi23, dtheta23, dphi23, kFALSE); const char* macroname = "MakePMDResMisAlignment.C"; if( gSystem->Getenv("TOCDB") != TString("kTRUE") ){ diff --git a/PMD/MakePMDZeroMisAlignment.C b/PMD/MakePMDZeroMisAlignment.C index 7687b4961d9..9174eab87f2 100644 --- a/PMD/MakePMDZeroMisAlignment.C +++ b/PMD/MakePMDZeroMisAlignment.C @@ -43,10 +43,10 @@ void MakePMDZeroMisAlignment(){ // needed for the constructors with local coordinates not to fail //Create a TClonesArray of Align Object to store displacement Angles - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; - AliAlignObjAngles o; + AliAlignObjParams o; Int_t iIndex=0; // let all modules have index=0 in a layer with no LUT AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; @@ -56,7 +56,7 @@ void MakePMDZeroMisAlignment(){ for(i=1; i<=4; i++){ TString snSector(Form("PMD/Sector%d",i)); - new(alobj[j++]) AliAlignObjAngles(snSector.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[j++]) AliAlignObjParams(snSector.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); } const char* macroname = "MakePMDZeroMisAlignment.C"; diff --git a/STEER/AliAlignObj.cxx b/STEER/AliAlignObj.cxx index 228afbf0e1e..f805fb58ea6 100644 --- a/STEER/AliAlignObj.cxx +++ b/STEER/AliAlignObj.cxx @@ -19,7 +19,7 @@ // Implementation of the alignment object class, holding the alignment // constants for a single volume, through the abstract class AliAlignObj. // From it two derived concrete representation of alignment object class -// (AliAlignObjAngles, AliAlignObjMatrix) are derived in separate files. +// (AliAlignObjParams, AliAlignObjMatrix) are derived in separate files. //----------------------------------------------------------------- #include @@ -31,7 +31,7 @@ #include "AliAlignObj.h" #include "AliTrackPointArray.h" #include "AliLog.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" ClassImp(AliAlignObj) @@ -41,7 +41,8 @@ AliAlignObj::AliAlignObj(): fVolUID(0) { // default constructor - // InitSymNames(); + for(Int_t i=0; i<6; i++) fDiag[i]=-999.; + for(Int_t i=0; i<21; i++) fODia[i]=-999.; } //_____________________________________________________________________________ @@ -52,6 +53,19 @@ AliAlignObj::AliAlignObj(const char* symname, UShort_t voluid) : { // standard constructor // + for(Int_t i=0; i<6; i++) fDiag[i]=-999.; + for(Int_t i=0; i<21; i++) fODia[i]=-999.; +} + +//_____________________________________________________________________________ +AliAlignObj::AliAlignObj(const char* symname, UShort_t voluid, Double_t* cmat) : + TObject(), + fVolPath(symname), + fVolUID(voluid) +{ + // standard constructor + // + SetCorrMatrix(cmat); } //_____________________________________________________________________________ @@ -61,6 +75,8 @@ AliAlignObj::AliAlignObj(const AliAlignObj& theAlignObj) : fVolUID(theAlignObj.GetVolUID()) { //copy constructor + for(Int_t i=0; i<6; i++) fDiag[i]=theAlignObj.fDiag[i]; + for(Int_t i=0; i<21; i++) fODia[i]=theAlignObj.fODia[i]; } //_____________________________________________________________________________ @@ -70,6 +86,8 @@ AliAlignObj &AliAlignObj::operator =(const AliAlignObj& theAlignObj) if(this==&theAlignObj) return *this; fVolPath = theAlignObj.GetSymName(); fVolUID = theAlignObj.GetVolUID(); + for(Int_t i=0; i<6; i++) fDiag[i]=theAlignObj.fDiag[i]; + for(Int_t i=0; i<21; i++) fODia[i]=theAlignObj.fODia[i]; return *this; } @@ -85,6 +103,8 @@ AliAlignObj &AliAlignObj::operator*=(const AliAlignObj& theAlignObj) theAlignObj.GetMatrix(m2); m1.MultiplyLeft(&m2); SetMatrix(m1); + // temporary solution: consider parameters indipendent + for(Int_t i=0; i<6; i++) fDiag[i] = TMath::Sqrt((fDiag[i]*fDiag[i])+(theAlignObj.fDiag[i]*theAlignObj.fDiag[i])); return *this; } @@ -167,6 +187,53 @@ Int_t AliAlignObj::Compare(const TObject *obj) const return ((level > level2) ? 1 : -1); } +//______________________________________________________________________________ +void AliAlignObj::GetCovMatrix(Double_t *cmat) const +{ + // Fills the cmat argument with the coefficients of the external cov matrix (21 elements) + // calculating them from the correlation matrix data member + // + + for(Int_t i=0; i<6; ++i) { + // Off diagonal elements + for(Int_t j=0; j= 0. && fDiag[i] >= 0.) ? fODia[(i-1)*i/2+j]*fDiag[j]*fDiag[i]: -999.; + } + + // Diagonal elements + cmat[i*(i+1)/2+i] = (fDiag[i] >= 0.) ? fDiag[i]*fDiag[i] : -999.; + } +} + +//______________________________________________________________________________ +void AliAlignObj::SetCorrMatrix(Double_t *cmat) +{ + // Sets the correlation matrix data member from the coefficients of the external covariance + // matrix (21 elements passed as argument). + // + if(cmat) { + + // Diagonal elements first + for(Int_t i=0; i<6; ++i) { + fDiag[i] = (cmat[i*(i+1)/2+i] >= 0.) ? TMath::Sqrt(cmat[i*(i+1)/2+i]) : -999.; + } + + // ... then the ones off diagonal + for(Int_t i=0; i<6; ++i) + // Off diagonal elements + for(Int_t j=0; j 0. && fDiag[j] > 0.) ? cmat[i*(i+1)/2+j]/(fDiag[j]*fDiag[i]) : 0.; // check for division by zero (due to diagonal element of 0) and for fDiag != -999. (due to negative input diagonal element). + if (fODia[(i-1)*i/2+j]>1.) fODia[(i-1)*i/2+j] = 1.; // check upper boundary + if (fODia[(i-1)*i/2+j]<-1.) fODia[(i-1)*i/2+j] = -1.; // check lower boundary + } + } else { + for(Int_t i=0; i< 6; ++i) fDiag[i]=-999.; + for(Int_t i=0; i< 6*(6-1)/2; ++i) fODia[i]=0.; + } + + return; +} + //_____________________________________________________________________________ void AliAlignObj::AnglesToMatrix(const Double_t *angles, Double_t *rot) const { diff --git a/STEER/AliAlignObj.h b/STEER/AliAlignObj.h index ef2a9663085..61dc08dd90b 100644 --- a/STEER/AliAlignObj.h +++ b/STEER/AliAlignObj.h @@ -14,6 +14,8 @@ #include "TObject.h" #include "TString.h" #include "TGeoMatrix.h" +#include +#include #include "AliGeomManager.h" @@ -26,6 +28,7 @@ class AliAlignObj : public TObject { AliAlignObj(); AliAlignObj(const char* symname, UShort_t voluid); + AliAlignObj(const char* symname, UShort_t voluid, Double_t* cmat); AliAlignObj(const char* symname, AliGeomManager::ELayerID detId, Int_t modId); AliAlignObj(const AliAlignObj& theAlignObj); AliAlignObj& operator= (const AliAlignObj& theAlignObj); @@ -50,6 +53,7 @@ class AliAlignObj : public TObject { void SetSymName(const TString& symname) {fVolPath=symname;} void SetVolUID(UShort_t voluid) {fVolUID=voluid;} void SetVolUID(AliGeomManager::ELayerID layerId, Int_t modId); + void SetCorrMatrix(Double_t *cov); //Getters const char *GetSymName() const {return fVolPath.Data();} @@ -63,6 +67,7 @@ class AliAlignObj : public TObject { virtual Bool_t GetLocalPars(Double_t transl[], Double_t angles[]) const; virtual void GetMatrix(TGeoHMatrix& m) const=0; virtual Bool_t GetLocalMatrix(TGeoHMatrix& m) const; + void GetCovMatrix(Double_t *cov) const; Bool_t IsSortable() const {return kTRUE;} Int_t GetLevel() const; @@ -108,7 +113,10 @@ class AliAlignObj : public TObject { // the volume path inside TGeo geometry (for non-alignable volumes) UShort_t fVolUID; // Unique volume ID - ClassDef(AliAlignObj, 2) + Double32_t fDiag[6]; // diagonal elements of the correlation matrix for shifts and rotations (dx,dy,dz,dpsi,dtheta,dphi) + Double32_t fODia[15]; // [-1, 1,8] off-diagonal elements (in 8 bit precision) of the correlation matrix + + ClassDef(AliAlignObj, 3) }; #endif diff --git a/STEER/AliAlignObjAngles.cxx b/STEER/AliAlignObjParams.cxx similarity index 88% rename from STEER/AliAlignObjAngles.cxx rename to STEER/AliAlignObjParams.cxx index 32a89ac148c..80003c846b5 100644 --- a/STEER/AliAlignObjAngles.cxx +++ b/STEER/AliAlignObjParams.cxx @@ -16,16 +16,16 @@ //----------------------------------------------------------------- // Implementation of the alignment object class through // the concrete representation of alignment object class -// AliAlignObjAngles derived from the base class AliAlignObj +// AliAlignObjParams derived from the base class AliAlignObj //----------------------------------------------------------------- #include "AliAlignObj.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" -ClassImp(AliAlignObjAngles) +ClassImp(AliAlignObjParams) //_____________________________________________________________________________ -AliAlignObjAngles::AliAlignObjAngles() : AliAlignObj() +AliAlignObjParams::AliAlignObjParams() : AliAlignObj() { // default constructor // @@ -34,7 +34,7 @@ AliAlignObjAngles::AliAlignObjAngles() : AliAlignObj() } //_____________________________________________________________________________ -AliAlignObjAngles::AliAlignObjAngles(const char* symname, UShort_t volUId, Double_t x, Double_t y, Double_t z, Double_t psi, Double_t theta, Double_t phi, Bool_t global) throw (const Char_t *) : AliAlignObj(symname,volUId) +AliAlignObjParams::AliAlignObjParams(const char* symname, UShort_t volUId, Double_t x, Double_t y, Double_t z, Double_t psi, Double_t theta, Double_t phi, Bool_t global) throw (const Char_t *) : AliAlignObj(symname,volUId) { // standard constructor with 3 translation + 3 rotation parameters // If the user explicitly sets the global variable to kFALSE then the @@ -50,7 +50,7 @@ AliAlignObjAngles::AliAlignObjAngles(const char* symname, UShort_t volUId, Doubl } //_____________________________________________________________________________ -AliAlignObjAngles::AliAlignObjAngles(const char* symname, UShort_t volUId, TGeoMatrix& m, Bool_t global) throw (const Char_t *) : AliAlignObj(symname,volUId) +AliAlignObjParams::AliAlignObjParams(const char* symname, UShort_t volUId, TGeoMatrix& m, Bool_t global) throw (const Char_t *) : AliAlignObj(symname,volUId) { // standard constructor with TGeoMatrix // If the user explicitly sets the global variable to kFALSE then the @@ -67,7 +67,7 @@ AliAlignObjAngles::AliAlignObjAngles(const char* symname, UShort_t volUId, TGeoM } //_____________________________________________________________________________ -AliAlignObjAngles::AliAlignObjAngles(const AliAlignObj& theAlignObj) : +AliAlignObjParams::AliAlignObjParams(const AliAlignObj& theAlignObj) : AliAlignObj(theAlignObj) { // copy constructor @@ -81,7 +81,7 @@ AliAlignObjAngles::AliAlignObjAngles(const AliAlignObj& theAlignObj) : } //_____________________________________________________________________________ -AliAlignObjAngles &AliAlignObjAngles::operator =(const AliAlignObj& theAlignObj) +AliAlignObjParams &AliAlignObjParams::operator =(const AliAlignObj& theAlignObj) { // assignment operator // @@ -99,14 +99,14 @@ AliAlignObjAngles &AliAlignObjAngles::operator =(const AliAlignObj& theAlignObj) } //_____________________________________________________________________________ -AliAlignObjAngles::~AliAlignObjAngles() +AliAlignObjParams::~AliAlignObjParams() { // default destructor // } //_____________________________________________________________________________ -void AliAlignObjAngles::SetTranslation(const TGeoMatrix& m) +void AliAlignObjParams::SetTranslation(const TGeoMatrix& m) { // set the translation parameters extracting them from the matrix // passed as argument @@ -120,7 +120,7 @@ void AliAlignObjAngles::SetTranslation(const TGeoMatrix& m) } //_____________________________________________________________________________ -Bool_t AliAlignObjAngles::SetRotation(const TGeoMatrix& m) +Bool_t AliAlignObjParams::SetRotation(const TGeoMatrix& m) { // set the rotation parameters extracting them from the matrix // passed as argument @@ -135,7 +135,7 @@ Bool_t AliAlignObjAngles::SetRotation(const TGeoMatrix& m) } //_____________________________________________________________________________ -void AliAlignObjAngles::GetMatrix(TGeoHMatrix& m) const +void AliAlignObjParams::GetMatrix(TGeoHMatrix& m) const { // get the transformation matrix from the data memebers parameters m.SetTranslation(&fTranslation[0]); @@ -145,12 +145,12 @@ void AliAlignObjAngles::GetMatrix(TGeoHMatrix& m) const } //_____________________________________________________________________________ -AliAlignObj& AliAlignObjAngles::Inverse() const +AliAlignObj& AliAlignObjParams::Inverse() const { // Return a temporary "inverse" of the alignment object, that is return // an object with inverted transformation matrix. // - static AliAlignObjAngles a; + static AliAlignObjParams a; a = *this; TGeoHMatrix m; diff --git a/STEER/AliAlignObjAngles.h b/STEER/AliAlignObjParams.h similarity index 80% rename from STEER/AliAlignObjAngles.h rename to STEER/AliAlignObjParams.h index 2ee080aa416..16a2f27c037 100644 --- a/STEER/AliAlignObjAngles.h +++ b/STEER/AliAlignObjParams.h @@ -2,7 +2,7 @@ #define ALIALIGNOBJANGLES_H /***************************************************************************** - * AliAlignObjAngles: derived alignment class storing alignment information * + * AliAlignObjParams: derived alignment class storing alignment information * * for a single volume in form of three doubles for the translation * * and three doubles for the rotation expressed with the euler angles * * in the xyz-convention (http://mathworld.wolfram.com/EulerAngles.html), * @@ -16,14 +16,14 @@ #include "AliAlignObj.h" -class AliAlignObjAngles : public AliAlignObj{ +class AliAlignObjParams : public AliAlignObj{ public: - AliAlignObjAngles(); - AliAlignObjAngles(const char* symname, UShort_t volUId, Double_t x, Double_t y, Double_t z, Double_t psi, Double_t theta, Double_t phi, Bool_t global) throw (const Char_t *); - AliAlignObjAngles(const char* symname, UShort_t volUId, TGeoMatrix& m, Bool_t global) throw (const Char_t *); - AliAlignObjAngles(const AliAlignObj& theAlignObj); - AliAlignObjAngles& operator= (const AliAlignObj& theAlignObj); - virtual ~AliAlignObjAngles(); + AliAlignObjParams(); + AliAlignObjParams(const char* symname, UShort_t volUId, Double_t x, Double_t y, Double_t z, Double_t psi, Double_t theta, Double_t phi, Bool_t global) throw (const Char_t *); + AliAlignObjParams(const char* symname, UShort_t volUId, TGeoMatrix& m, Bool_t global) throw (const Char_t *); + AliAlignObjParams(const AliAlignObj& theAlignObj); + AliAlignObjParams& operator= (const AliAlignObj& theAlignObj); + virtual ~AliAlignObjParams(); //Setters virtual void SetTranslation(Double_t x, Double_t y, Double_t z){ @@ -47,7 +47,7 @@ class AliAlignObjAngles : public AliAlignObj{ Double_t fTranslation[3]; // Translation vector Double_t fRotation[3]; // Roll-pitch-yaw angles - ClassDef(AliAlignObjAngles, 1) + ClassDef(AliAlignObjParams, 1) }; #endif diff --git a/STEER/AliAlignmentTracks.cxx b/STEER/AliAlignmentTracks.cxx index 877fa756bf4..a61c3dc6dff 100644 --- a/STEER/AliAlignmentTracks.cxx +++ b/STEER/AliAlignmentTracks.cxx @@ -27,7 +27,7 @@ #include "AliAlignmentTracks.h" #include "AliTrackPointArray.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliTrackFitterRieman.h" #include "AliTrackResidualsChi2.h" #include "AliESD.h" @@ -368,7 +368,7 @@ void AliAlignmentTracks::BuildIndex() // Dummy object is created in order // to initialize the volume paths - AliAlignObjAngles alobj; + AliAlignObjParams alobj; fPointsFile = TFile::Open(fPointsFilename); if (!fPointsFile || !fPointsFile->IsOpen()) { @@ -499,7 +499,7 @@ void AliAlignmentTracks::InitAlignObjs() fAlignObjs[iLayer] = new AliAlignObj*[AliGeomManager::LayerSize(iLayer + AliGeomManager::kFirstLayer)]; for (Int_t iModule = 0; iModule < AliGeomManager::LayerSize(iLayer + AliGeomManager::kFirstLayer); iModule++) { UShort_t volid = AliGeomManager::LayerToVolUID(iLayer+ AliGeomManager::kFirstLayer,iModule); - fAlignObjs[iLayer][iModule] = new AliAlignObjAngles(AliGeomManager::SymName(volid),volid,0,0,0,0,0,0,kTRUE); + fAlignObjs[iLayer][iModule] = new AliAlignObjParams(AliGeomManager::SymName(volid),volid,0,0,0,0,0,0,kTRUE); } } } diff --git a/STEER/AliGeomManager.cxx b/STEER/AliGeomManager.cxx index 07373de4ca9..0978dce018b 100644 --- a/STEER/AliGeomManager.cxx +++ b/STEER/AliGeomManager.cxx @@ -32,7 +32,7 @@ #include "AliGeomManager.h" #include "AliLog.h" #include "AliAlignObj.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliCDBManager.h" #include "AliCDBStorage.h" #include "AliCDBEntry.h" @@ -414,7 +414,7 @@ void AliGeomManager::InitAlignObjFromGeometry() fgAlignObjs[iLayer-kFirstLayer] = new AliAlignObj*[LayerSize(iLayer)]; for (Int_t iModule = 0; iModule < LayerSize(iLayer); iModule++) { UShort_t volid = LayerToVolUID(iLayer,iModule); - fgAlignObjs[iLayer-kFirstLayer][iModule] = new AliAlignObjAngles("",volid,0,0,0,0,0,0,kTRUE); + fgAlignObjs[iLayer-kFirstLayer][iModule] = new AliAlignObjParams("",volid,0,0,0,0,0,0,kTRUE); const char *symname = SymName(volid); if (!GetFromGeometry(symname, *fgAlignObjs[iLayer-kFirstLayer][iModule])) AliErrorClass(Form("Failed to extract the alignment object for the volume (ID=%d and path=%s) !",volid,symname)); diff --git a/STEER/AliTrackResiduals.cxx b/STEER/AliTrackResiduals.cxx index 3e887e0c89e..aafe24dee28 100644 --- a/STEER/AliTrackResiduals.cxx +++ b/STEER/AliTrackResiduals.cxx @@ -22,7 +22,7 @@ #include "AliTrackResiduals.h" #include "AliAlignObj.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliTrackPointArray.h" ClassImp(AliTrackResiduals) @@ -193,7 +193,7 @@ void AliTrackResiduals::InitAlignObj() // Create the alignment object // to be updated if (fAlignObj) delete fAlignObj; - fAlignObj = new AliAlignObjAngles; + fAlignObj = new AliAlignObjParams; } diff --git a/STEER/AliTrackResiduals.h b/STEER/AliTrackResiduals.h index f508f30f2b0..07eb57e71fd 100644 --- a/STEER/AliTrackResiduals.h +++ b/STEER/AliTrackResiduals.h @@ -13,7 +13,7 @@ #include "TObject.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" class AliTrackPointArray; diff --git a/STEER/STEERLinkDef.h b/STEER/STEERLinkDef.h index 2aea8960a14..aeadda689fc 100644 --- a/STEER/STEERLinkDef.h +++ b/STEER/STEERLinkDef.h @@ -84,7 +84,7 @@ #pragma link C++ class AliGeomManager+; #pragma link C++ class AliAlignObj+; -#pragma link C++ class AliAlignObjAngles+; +#pragma link C++ class AliAlignObjParams+; #pragma link C++ class AliAlignObjMatrix+; #pragma link C++ class AliTrackFitter+; diff --git a/STEER/libSTEER.pkg b/STEER/libSTEER.pkg index 9c50703393f..a8a4784426f 100644 --- a/STEER/libSTEER.pkg +++ b/STEER/libSTEER.pkg @@ -22,7 +22,7 @@ AliV0vertexer.cxx AliCascadeVertexer.cxx\ AliMC.cxx AliSimulation.cxx AliReconstruction.cxx AliVertexGenFile.cxx \ AliReconstructor.cxx TTreeStream.cxx\ AliGeomManager.cxx \ -AliAlignObj.cxx AliAlignObjAngles.cxx AliAlignObjMatrix.cxx \ +AliAlignObj.cxx AliAlignObjParams.cxx AliAlignObjMatrix.cxx \ AliTriggerInput.cxx \ AliTriggerDetector.cxx \ AliTriggerCondition.cxx \ diff --git a/T0/MakeT0FullMisAlignment.C b/T0/MakeT0FullMisAlignment.C index c356ef777e2..56b9d2b2612 100644 --- a/T0/MakeT0FullMisAlignment.C +++ b/T0/MakeT0FullMisAlignment.C @@ -1,7 +1,7 @@ void MakeT0FullMisAlignment(){ // Create TClonesArray of full misalignment objects for T0 // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",30); + TClonesArray *array = new TClonesArray("AliAlignObjParams",30); TClonesArray &alobj = *array; if(!AliGeomManager::GetGeometry()){ @@ -11,7 +11,7 @@ void MakeT0FullMisAlignment(){ AliGeomManager::LoadGeometry(); } - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx, dy, dz, dpsi, dtheta, dphi; TRandom *rnd = new TRandom(4321); @@ -41,7 +41,7 @@ void MakeT0FullMisAlignment(){ dtheta = rnd->Gaus(0.,sigmarot); dphi = rnd->Gaus(0.,sigmarot); - new(alobj[j++]) AliAlignObjAngles(symName.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[j++]) AliAlignObjParams(symName.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); } const char* macroname = "MakeT0FullMisAlignment.C"; diff --git a/T0/MakeT0ResMisAlignment.C b/T0/MakeT0ResMisAlignment.C index 650267f7cc2..097d3ec856f 100644 --- a/T0/MakeT0ResMisAlignment.C +++ b/T0/MakeT0ResMisAlignment.C @@ -1,7 +1,7 @@ void MakeT0ResMisAlignment(){ // Create TClonesArray of residual misalignment objects for T0 // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",30); + TClonesArray *array = new TClonesArray("AliAlignObjParams",30); TClonesArray &alobj = *array; if(!AliGeomManager::GetGeometry()){ @@ -12,7 +12,7 @@ void MakeT0ResMisAlignment(){ } // needed for the constructors with local coordinates not to fail - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx, dy, dz, dpsi, dtheta, dphi; TRandom *rnd = new TRandom(4321); @@ -42,7 +42,7 @@ void MakeT0ResMisAlignment(){ dtheta = rnd->Gaus(0.,sigmarot); dphi = rnd->Gaus(0.,sigmarot); - new(alobj[j++]) AliAlignObjAngles(symName.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[j++]) AliAlignObjParams(symName.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); } const char* macroname = "MakeT0ResMisAlignment.C"; diff --git a/T0/MakeT0ZeroMisAlignment.C b/T0/MakeT0ZeroMisAlignment.C index fd435e70f53..eeeeb840f6d 100644 --- a/T0/MakeT0ZeroMisAlignment.C +++ b/T0/MakeT0ZeroMisAlignment.C @@ -1,10 +1,10 @@ void MakeT0ZeroMisAlignment(){ // Create TClonesArray of zero misalignment objects for T0 // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0, dy=0, dz=0, dpsi=0, dtheta=0, dphi=0; @@ -25,7 +25,7 @@ void MakeT0ZeroMisAlignment(){ symName = sn; symName += imod+1; - new(alobj[j++]) AliAlignObjAngles(symName.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[j++]) AliAlignObjParams(symName.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); } const char* macroname = "MakeT0ZeroMisAlignment.C"; diff --git a/TOF/AliTOFAlignment.cxx b/TOF/AliTOFAlignment.cxx index a7acc972b47..e1989c7ea66 100644 --- a/TOF/AliTOFAlignment.cxx +++ b/TOF/AliTOFAlignment.cxx @@ -15,6 +15,9 @@ /* $Log$ +Revision 1.17 2007/06/06 16:26:46 arcelli +remove fall-back call to local CDB storage + Revision 1.16 2007/05/15 16:25:44 cvetan Moving the alignment-related static methods from AliAlignObj to the new geometry steering class AliGeomManager (macro from Raffaele) @@ -82,7 +85,7 @@ author: Silvia Arcelli, arcelli@bo.infn.it #include "AliLog.h" #include "AliAlignObj.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliAlignObjMatrix.h" #include "AliCDBManager.h" #include "AliCDBMetaData.h" @@ -179,7 +182,7 @@ void AliTOFAlignment::Smear( Float_t *tr, Float_t *rot) dpsi = rot[0]; dtheta = rot[1]; dphi = rot[2]; - AliAlignObjAngles *o =new AliAlignObjAngles(path, dvoluid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + AliAlignObjParams *o =new AliAlignObjParams(path, dvoluid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); fTOFAlignObjArray->Add(o); } @@ -214,7 +217,7 @@ void AliTOFAlignment::Align( Float_t *tr, Float_t *rot) dtheta = rot[1]; dphi = rot[2]; - AliAlignObjAngles *o =new AliAlignObjAngles(path, dvoluid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + AliAlignObjParams *o =new AliAlignObjParams(path, dvoluid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); fTOFAlignObjArray->Add(o); } fNTOFAlignObj=fTOFAlignObjArray->GetEntries(); diff --git a/TOF/MakeTOFFullMisAlignment.C b/TOF/MakeTOFFullMisAlignment.C index ce80e906722..75a6e5442e9 100644 --- a/TOF/MakeTOFFullMisAlignment.C +++ b/TOF/MakeTOFFullMisAlignment.C @@ -1,7 +1,7 @@ void MakeTOFFullMisAlignment(){ // Create TClonesArray of full misalignment objects for TOF // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",2000); + TClonesArray *array = new TClonesArray("AliAlignObjParams",2000); TClonesArray &alobj = *array; if(!AliGeomManager::GetGeometry()){ @@ -11,7 +11,7 @@ void MakeTOFFullMisAlignment(){ AliGeomManager::LoadGeometry(); } - AliAlignObjAngles a; + AliAlignObjParams a; Double_t sfdpsi=0.,sfdtheta=0.,sfdphi=0.; Int_t iIndex=0; //let all modules have index=0 in a layer with no LUT AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; @@ -96,12 +96,12 @@ void MakeTOFFullMisAlignment(){ segmpath+=sm; segmpath+="_1"; cout<UncheckedAt(k); + AliAlignObjParams* smobj = (AliAlignObjParams*)array->UncheckedAt(k); if(!smobj->ApplyToGeometry()){ cout<<"application of object "<Gaus(0.,sigmarot); dphi = 0.; - new(alobj[j++]) AliAlignObjAngles(symname.Data(), dvoluid, tofdx, tofdy, tofdz, dpsi, dtheta, dphi, kFALSE); + new(alobj[j++]) AliAlignObjParams(symname.Data(), dvoluid, tofdx, tofdy, tofdz, dpsi, dtheta, dphi, kFALSE); } for(Int_t k=18; k<36; k++){ - AliAlignObjAngles* smobj = (AliAlignObjAngles*)array->UncheckedAt(k); + AliAlignObjParams* smobj = (AliAlignObjParams*)array->UncheckedAt(k); if(!smobj->ApplyToGeometry()){ cout<<"application of object "< #include #include "AliAlignObj.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliLog.h" ClassImp(AliTPCParam) @@ -615,7 +615,7 @@ Bool_t AliTPCParam::ReadGeoMatrices(){ if (!gGeoManager){ AliFatal("Geo manager not initialized\n"); } - AliAlignObjAngles o; + AliAlignObjParams o; // if (fTrackingMatrix) delete [] fTrackingMatrix; fTrackingMatrix = new TGeoHMatrix*[fNSector]; diff --git a/TPC/Cal/AliTPCCreateDummyCDB.C b/TPC/Cal/AliTPCCreateDummyCDB.C index f9e906db01a..f22344f23f3 100644 --- a/TPC/Cal/AliTPCCreateDummyCDB.C +++ b/TPC/Cal/AliTPCCreateDummyCDB.C @@ -7,7 +7,7 @@ #include -#include +#include #include #include #include @@ -127,13 +127,13 @@ void CDBAlignmentObjectCreation(const char *fileName, const char *arrayName, con void GenerateRndTPC(Float_t sigmatrx=0., Float_t sigmatry=0, Float_t sigmatrz=0, Float_t sigmarot = 0.){ - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10000); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10000); TClonesArray &alobj = *array; TFile f("TPC_alignment.root","RECREATE"); TRandom *rnd = new TRandom(4357); - AliAlignObjAngles o; + AliAlignObjParams o; Int_t j = 0; for (Int_t iLayer = AliGeomManager::kTPC1; iLayer <= AliGeomManager::kTPC2; iLayer++) { for (Int_t iModule = 0; iModule < AliGeomManager::LayerSize(iLayer); iModule++) { @@ -147,7 +147,7 @@ void GenerateRndTPC(Float_t sigmatrx=0., Float_t sigmatry=0, Float_t sigmatrz=0, UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iModule); const char *path = AliGeomManager::GetVolPath(volid); - new(alobj[j]) AliAlignObjAngles(path, volid, dx, dy, dz, dpsi, dtheta, dphi); + new(alobj[j]) AliAlignObjParams(path, volid, dx, dy, dz, dpsi, dtheta, dphi); j++; } } diff --git a/TPC/MakeTPCFullMisAlignment.C b/TPC/MakeTPCFullMisAlignment.C index a5df8b18a56..dbae0686e8f 100644 --- a/TPC/MakeTPCFullMisAlignment.C +++ b/TPC/MakeTPCFullMisAlignment.C @@ -9,11 +9,11 @@ void MakeTPCFullMisAlignment(){ } // needed for the constructors with local coordinates not to fail - TClonesArray *array = new TClonesArray("AliAlignObjAngles",100); + TClonesArray *array = new TClonesArray("AliAlignObjParams",100); TClonesArray &alobj = *array; TRandom *rnd = new TRandom(4357); - AliAlignObjAngles o; + AliAlignObjParams o; Int_t j = 0; Double_t dx, dy, dz, dpsi, dtheta, dphi; @@ -35,7 +35,7 @@ void MakeTPCFullMisAlignment(){ UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iModule); const char *symname = AliGeomManager::SymName(volid); - new(alobj[j++]) AliAlignObjAngles(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); + new(alobj[j++]) AliAlignObjParams(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); } } diff --git a/TPC/MakeTPCResMisAlignment.C b/TPC/MakeTPCResMisAlignment.C index 0fa4084f79b..62dabeb5d14 100644 --- a/TPC/MakeTPCResMisAlignment.C +++ b/TPC/MakeTPCResMisAlignment.C @@ -9,11 +9,11 @@ void MakeTPCResMisAlignment(){ } // needed for the constructors with local coordinates not to fail - TClonesArray *array = new TClonesArray("AliAlignObjAngles",100); + TClonesArray *array = new TClonesArray("AliAlignObjParams",100); TClonesArray &alobj = *array; TRandom *rnd = new TRandom(4357); - AliAlignObjAngles o; + AliAlignObjParams o; Double_t dx, dy, dz, dpsi, dtheta, dphi; Int_t j = 0; @@ -34,7 +34,7 @@ void MakeTPCResMisAlignment(){ UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iModule); const char *symname = AliGeomManager::SymName(volid); - new(alobj[j]) AliAlignObjAngles(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); + new(alobj[j]) AliAlignObjParams(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); j++; } } diff --git a/TPC/MakeTPCZeroMisAlignment.C b/TPC/MakeTPCZeroMisAlignment.C index b700beed65e..183c32f6025 100644 --- a/TPC/MakeTPCZeroMisAlignment.C +++ b/TPC/MakeTPCZeroMisAlignment.C @@ -9,10 +9,10 @@ void MakeTPCZeroMisAlignment(){ } // needed for the constructors with local coordinates not to fail - TClonesArray *array = new TClonesArray("AliAlignObjAngles",100); + TClonesArray *array = new TClonesArray("AliAlignObjParams",100); TClonesArray &alobj = *array; - AliAlignObjAngles o; + AliAlignObjParams o; Double_t dx=0., dy=0., dz=0., dpsi=0., dtheta=0., dphi=0.; Int_t j = 0; @@ -22,7 +22,7 @@ void MakeTPCZeroMisAlignment(){ UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iModule); const char *symname = AliGeomManager::SymName(volid); - new(alobj[j]) AliAlignObjAngles(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[j]) AliAlignObjParams(symname, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); j++; } } diff --git a/TRD/AliTRDalignment.cxx b/TRD/AliTRDalignment.cxx index 797ed2724fb..6b86afe9a2e 100644 --- a/TRD/AliTRDalignment.cxx +++ b/TRD/AliTRDalignment.cxx @@ -80,7 +80,7 @@ #include "AliLog.h" #include "AliAlignObj.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliCDBManager.h" #include "AliCDBStorage.h" #include "AliCDBMetaData.h" @@ -749,7 +749,7 @@ double AliTRDalignment::SurveyChi2(int i, double *a) { if (!IsGeoLoaded()) return 0; printf("Survey of supermodule %d\n",i); - AliAlignObjAngles al(GetSmName(i),0,a[0],a[1],a[2],a[3],a[4],a[5],0); + AliAlignObjParams al(GetSmName(i),0,a[0],a[1],a[2],a[3],a[4],a[5],0); TGeoPNEntry *pne = gGeoManager->GetAlignableEntry(GetSmName(i)); if (!pne) AliError(Form("no such physical node entry: %s",GetSmName(i))); TGeoPhysicalNode *node = pne->GetPhysicalNode(); @@ -895,7 +895,7 @@ void AliTRDalignment::WriteRoot(char *filename) // store the alignment data on root file // - TClonesArray *ar = new TClonesArray("AliAlignObjAngles",10000); + TClonesArray *ar = new TClonesArray("AliAlignObjParams",10000); NumbersToAr(ar); TFile fo(filename,"RECREATE"); if (fo.IsOpen()) { @@ -916,7 +916,7 @@ void AliTRDalignment::WriteDB(char *filename, int run0, int run1) // dumping on a DB-like file // - TClonesArray *ar = new TClonesArray("AliAlignObjAngles",10000); + TClonesArray *ar = new TClonesArray("AliAlignObjParams",10000); NumbersToAr(ar); char *path = "TRD/Align/Data"; AliCDBId id(path,run0,run1); @@ -946,7 +946,7 @@ void AliTRDalignment::WriteDB(char *db, char *path, int run0, int run1) // store the alignment data in database // - TClonesArray *ar = new TClonesArray("AliAlignObjAngles",10000); + TClonesArray *ar = new TClonesArray("AliAlignObjParams",10000); NumbersToAr(ar); AliCDBManager *cdb = AliCDBManager::Instance(); AliCDBStorage *storLoc = cdb->GetStorage(db); @@ -968,7 +968,7 @@ void AliTRDalignment::WriteGeo(char *filename) // resulting geometry on a root file // - TClonesArray *ar = new TClonesArray("AliAlignObjAngles",10000); + TClonesArray *ar = new TClonesArray("AliAlignObjParams",10000); NumbersToAr(ar); delete ar; gGeoManager->Export(filename); @@ -1071,7 +1071,7 @@ void AliTRDalignment::NumbersToAr(TClonesArray *ar) TClonesArray &alobj = *ar; int nobj = 0; for (int i = 0; i < 18; i++) { - new(alobj[nobj]) AliAlignObjAngles(GetSmName(i) + new(alobj[nobj]) AliAlignObjParams(GetSmName(i) ,0 ,fSm[i][0],fSm[i][1],fSm[i][2] ,fSm[i][3],fSm[i][4],fSm[i][5] @@ -1081,7 +1081,7 @@ void AliTRDalignment::NumbersToAr(TClonesArray *ar) } for (int i = 0; i < 540; i++) { - new(alobj[nobj]) AliAlignObjAngles(GetChName(i) + new(alobj[nobj]) AliAlignObjParams(GetChName(i) ,GetVoi(i) ,fCh[i][0],fCh[i][1],fCh[i][2] ,fCh[i][3],fCh[i][4],fCh[i][5] diff --git a/TRD/AliTRDgeometry.cxx b/TRD/AliTRDgeometry.cxx index 4bc3100c09b..baa00f3e2a5 100644 --- a/TRD/AliTRDgeometry.cxx +++ b/TRD/AliTRDgeometry.cxx @@ -29,7 +29,7 @@ #include "AliLog.h" #include "AliRunLoader.h" #include "AliAlignObj.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliRun.h" #include "AliTRD.h" @@ -1787,7 +1787,7 @@ Bool_t AliTRDgeometry::ReadGeoMatrices() fMatrixArray = new TObjArray(kNdet); fMatrixCorrectionArray = new TObjArray(kNdet); fMatrixGeo = new TObjArray(kNdet); - AliAlignObjAngles o; + AliAlignObjParams o; for (Int_t iLayer = AliGeomManager::kTRD1; iLayer <= AliGeomManager::kTRD6; iLayer++) { for (Int_t iModule = 0; iModule < AliGeomManager::LayerSize(iLayer); iModule++) { diff --git a/TRD/MakeTRDFullMisAlignment.C b/TRD/MakeTRDFullMisAlignment.C index be4be7ca97e..0318bb1f0bf 100644 --- a/TRD/MakeTRDFullMisAlignment.C +++ b/TRD/MakeTRDFullMisAlignment.C @@ -1,10 +1,10 @@ void MakeTRDFullMisAlignment(){ // Create TClonesArray of full misalignment objects for TRD // - TClonesArray *array = new TClonesArray("AliAlignObjAngles",1000); + TClonesArray *array = new TClonesArray("AliAlignObjParams",1000); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; // sigmas for the supermodules Double_t smdx=0.3; // 3 mm @@ -44,11 +44,11 @@ void MakeTRDFullMisAlignment(){ rx*=smrx; ry*=smry; rz*=smrz; - new(alobj[j++]) AliAlignObjAngles(sm_symname.Data(),0,dx,dy,dz,rx,ry,rz,kFALSE); + new(alobj[j++]) AliAlignObjParams(sm_symname.Data(),0,dx,dy,dz,rx,ry,rz,kFALSE); } for(Int_t k=0; k<18; k++){ - AliAlignObjAngles* smobj = (AliAlignObjAngles*)array->UncheckedAt(k); + AliAlignObjParams* smobj = (AliAlignObjParams*)array->UncheckedAt(k); if(!smobj->ApplyToGeometry()){ cout<<"application of object "<Gaus(0.,sigmarot); dtheta = rnd->Gaus(0.,sigmarot); dphi = rnd->Gaus(0.,sigmarot); - new(alobj[0]) AliAlignObjAngles(V0right, volid, dx, dy, dz, dpsi, dtheta, + new(alobj[0]) AliAlignObjParams(V0right, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); dx = rnd->Gaus(0.,sigmatr); dy = rnd->Gaus(0.,sigmatr); @@ -42,7 +42,7 @@ void MakeVZEROFullMisAlignment(){ dpsi = rnd->Gaus(0.,sigmarot); dtheta = rnd->Gaus(0.,sigmarot); dphi = rnd->Gaus(0.,sigmarot); - new(alobj[1]) AliAlignObjAngles(V0left, volid, dx, dy, dz, dpsi, dtheta, + new(alobj[1]) AliAlignObjParams(V0left, volid, dx, dy, dz, dpsi, dtheta, dphi,kFALSE); const char* macroname = "MakeVZEROFullMisAlignment.C"; diff --git a/VZERO/MakeVZEROResMisAlignment.C b/VZERO/MakeVZEROResMisAlignment.C index 61582863692..fb4084b9ffb 100644 --- a/VZERO/MakeVZEROResMisAlignment.C +++ b/VZERO/MakeVZEROResMisAlignment.C @@ -9,10 +9,10 @@ void MakeVZEROResMisAlignment(){ } // needed for the constructors with local coordinates not to fail - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx, dy, dz, dpsi, dtheta, dphi; TRandom *rnd = new TRandom(4321); @@ -32,14 +32,14 @@ void MakeVZEROResMisAlignment(){ dpsi = rnd->Gaus(0.,sigmarot); dtheta = rnd->Gaus(0.,sigmarot); dphi = rnd->Gaus(0.,sigmarot); - new(alobj[0]) AliAlignObjAngles(V0right, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); + new(alobj[0]) AliAlignObjParams(V0right, volid, dx, dy, dz, dpsi, dtheta, dphi, kFALSE); dx = rnd->Gaus(0.,sigmatr); dy = rnd->Gaus(0.,sigmatr); dz = rnd->Gaus(0.,sigmatr); dpsi = rnd->Gaus(0.,sigmarot); dtheta = rnd->Gaus(0.,sigmarot); dphi = rnd->Gaus(0.,sigmarot); - new(alobj[1]) AliAlignObjAngles(V0left, volid, dx, dy, dz, dpsi, dtheta, dphi,kFALSE); + new(alobj[1]) AliAlignObjParams(V0left, volid, dx, dy, dz, dpsi, dtheta, dphi,kFALSE); const char* macroname = "MakeVZEROResMisAlignment.C"; if( gSystem->Getenv("TOCDB") != TString("kTRUE") ){ diff --git a/VZERO/MakeVZEROZeroMisAlignment.C b/VZERO/MakeVZEROZeroMisAlignment.C index 5a1b64be778..0ecdd800751 100644 --- a/VZERO/MakeVZEROZeroMisAlignment.C +++ b/VZERO/MakeVZEROZeroMisAlignment.C @@ -9,10 +9,10 @@ void MakeVZEROZeroMisAlignment(){ } // needed for the constructors with local coordinates not to fail - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx, dy, dz, dpsi, dtheta, dphi; @@ -21,9 +21,9 @@ void MakeVZEROZeroMisAlignment(){ UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iIndex); TString V0right("VZERO/V0C"); - new(alobj[0]) AliAlignObjAngles(V0right.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[0]) AliAlignObjParams(V0right.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); TString V0left("VZERO/V0A"); - new(alobj[1]) AliAlignObjAngles(V0left.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi,kTRUE); + new(alobj[1]) AliAlignObjParams(V0left.Data(), volid, dx, dy, dz, dpsi, dtheta, dphi,kTRUE); const char* macroname = "MakeVZEROZeroMisAlignment.C"; if( gSystem->Getenv("TOCDB") != TString("kTRUE") ){ diff --git a/ZDC/AliZDCPreprocessor.cxx b/ZDC/AliZDCPreprocessor.cxx index 53a8888af4b..1522b2ff72c 100644 --- a/ZDC/AliZDCPreprocessor.cxx +++ b/ZDC/AliZDCPreprocessor.cxx @@ -11,7 +11,7 @@ #include "AliCDBMetaData.h" #include "AliDCSValue.h" #include "AliAlignObj.h" -#include "AliAlignObjAngles.h" +#include "AliAlignObjParams.h" #include "AliLog.h" #include "AliZDCDataDCS.h" #include "AliZDCCalibData.h" @@ -77,9 +77,9 @@ UInt_t AliZDCPreprocessor::Process(TMap* dcsAliasMap) //dcsAliasMap->Print(""); // // --- Writing ZDC table positions into alignment object - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0., dz=0., dpsi=0., dtheta=0., dphi=0.; // Vertical table position in mm from DCS Double_t dyZN1 = (Double_t) (DCSValues[0]/10.); @@ -94,10 +94,10 @@ UInt_t AliZDCPreprocessor::Process(TMap* dcsAliasMap) AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iIndex); // - new(alobj[0]) AliAlignObjAngles(ZDCn1, volid, dx, dyZN1, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[1]) AliAlignObjAngles(ZDCp1, volid, dx, dyZP1, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[2]) AliAlignObjAngles(ZDCn2, volid, dx, dyZN2, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[3]) AliAlignObjAngles(ZDCp2, volid, dx, dyZP2, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[0]) AliAlignObjParams(ZDCn1, volid, dx, dyZN1, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[1]) AliAlignObjParams(ZDCp1, volid, dx, dyZP1, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[2]) AliAlignObjParams(ZDCn2, volid, dx, dyZN2, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[3]) AliAlignObjParams(ZDCp2, volid, dx, dyZP2, dz, dpsi, dtheta, dphi, kTRUE); // save in CDB storage AliCDBMetaData md; md.SetResponsible("Chiara Oppedisano"); diff --git a/ZDC/MakeZDCFullMisAlignment.C b/ZDC/MakeZDCFullMisAlignment.C index 4fa6a0130e8..e6020725161 100644 --- a/ZDC/MakeZDCFullMisAlignment.C +++ b/ZDC/MakeZDCFullMisAlignment.C @@ -9,10 +9,10 @@ void MakeZDCFullMisAlignment(){ } // needed for the constructors with local coordinates not to fail - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0., dy=2., dz=0.; Double_t dpsi=0., dtheta=0., dphi=0.; @@ -24,8 +24,8 @@ void MakeZDCFullMisAlignment(){ AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iIndex); - new(alobj[0]) AliAlignObjAngles(ZDCn, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[1]) AliAlignObjAngles(ZDCp, volid, dx, dy, dz, dpsi, dtheta, dphi,kTRUE); + new(alobj[0]) AliAlignObjParams(ZDCn, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[1]) AliAlignObjParams(ZDCp, volid, dx, dy, dz, dpsi, dtheta, dphi,kTRUE); const char* macroname = "MakeZDCFullMisAlignment.C"; if( gSystem->Getenv("TOCDB") != TString("kTRUE") ){ diff --git a/ZDC/MakeZDCResMisAlignment.C b/ZDC/MakeZDCResMisAlignment.C index 820c11b7e2f..ea80762eaea 100644 --- a/ZDC/MakeZDCResMisAlignment.C +++ b/ZDC/MakeZDCResMisAlignment.C @@ -9,10 +9,10 @@ void MakeZDCResMisAlignment(){ } // needed for the constructors with local coordinates not to fail - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0., dy=0.05, dz=0.; Double_t dpsi=0., dtheta=0., dphi=0.; @@ -24,8 +24,8 @@ void MakeZDCResMisAlignment(){ AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iIndex); - new(alobj[0]) AliAlignObjAngles(ZDCn, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[1]) AliAlignObjAngles(ZDCp, volid, dx, dy, dz, dpsi, dtheta, dphi,kTRUE); + new(alobj[0]) AliAlignObjParams(ZDCn, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[1]) AliAlignObjParams(ZDCp, volid, dx, dy, dz, dpsi, dtheta, dphi,kTRUE); const char* macroname = "MakeZDCResMisAlignment.C"; if( gSystem->Getenv("TOCDB") != TString("kTRUE") ){ diff --git a/ZDC/MakeZDCZeroMisAlignment.C b/ZDC/MakeZDCZeroMisAlignment.C index a0204af8108..fddda319ce5 100644 --- a/ZDC/MakeZDCZeroMisAlignment.C +++ b/ZDC/MakeZDCZeroMisAlignment.C @@ -9,10 +9,10 @@ void MakeZDCZeroMisAlignment(){ } // needed for the constructors with local coordinates not to fail - TClonesArray *array = new TClonesArray("AliAlignObjAngles",10); + TClonesArray *array = new TClonesArray("AliAlignObjParams",10); TClonesArray &alobj = *array; - AliAlignObjAngles a; + AliAlignObjParams a; Double_t dx=0., dy=0., dz=0.; Double_t dpsi=0., dtheta=0., dphi=0.; @@ -24,8 +24,8 @@ void MakeZDCZeroMisAlignment(){ AliGeomManager::ELayerID iLayer = AliGeomManager::kInvalidLayer; UShort_t volid = AliGeomManager::LayerToVolUID(iLayer,iIndex); - new(alobj[0]) AliAlignObjAngles(ZDCn, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); - new(alobj[1]) AliAlignObjAngles(ZDCp, volid, dx, dy, dz, dpsi, dtheta, dphi,kTRUE); + new(alobj[0]) AliAlignObjParams(ZDCn, volid, dx, dy, dz, dpsi, dtheta, dphi, kTRUE); + new(alobj[1]) AliAlignObjParams(ZDCp, volid, dx, dy, dz, dpsi, dtheta, dphi,kTRUE); const char* macroname = "MakeZDCZeroMisAlignment.C"; if( gSystem->Getenv("TOCDB") != TString("kTRUE") ){ -- 2.39.3