X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PHOS%2FAliPHOSEmcCalibData.cxx;h=cc0c0606f7e3fb41703f14bce3900db1dee3f59f;hb=58ceb8ca157a7b399c197ec61c77998849f99fdc;hp=6c09b8fa2cbb6889b1e327bd768b11ea730739b5;hpb=27f8cf689fbaf9e8c1bdfc7acf52cf61df4781bb;p=u%2Fmrichter%2FAliRoot.git diff --git a/PHOS/AliPHOSEmcCalibData.cxx b/PHOS/AliPHOSEmcCalibData.cxx index 6c09b8fa2cb..cc0c0606f7e 100644 --- a/PHOS/AliPHOSEmcCalibData.cxx +++ b/PHOS/AliPHOSEmcCalibData.cxx @@ -54,6 +54,9 @@ AliPHOSEmcCalibData::AliPHOSEmcCalibData(const AliPHOSEmcCalibData& calibda) : for(Int_t row=0; row<64; row++) { fADCchannelEmc[module][column][row] = calibda.fADCchannelEmc[module][column][row]; fADCpedestalEmc[module][column][row] = calibda.fADCpedestalEmc[module][column][row]; + fHighLowRatioEmc[module][column][row] = calibda.fHighLowRatioEmc[module][column][row]; + fTimeShiftEmc[module][column][row] = calibda.fTimeShiftEmc[module][column][row]; + fAltroOffsets[module][column][row] = calibda.fAltroOffsets[module][column][row]; } } } @@ -74,6 +77,9 @@ AliPHOSEmcCalibData &AliPHOSEmcCalibData::operator =(const AliPHOSEmcCalibData& for(Int_t row=0; row<64; row++) { fADCchannelEmc[module][column][row] = calibda.fADCchannelEmc[module][column][row]; fADCpedestalEmc[module][column][row] = calibda.fADCpedestalEmc[module][column][row]; + fHighLowRatioEmc[module][column][row] = calibda.fHighLowRatioEmc[module][column][row]; + fTimeShiftEmc[module][column][row] = calibda.fTimeShiftEmc[module][column][row]; + fAltroOffsets[module][column][row] = calibda.fAltroOffsets[module][column][row]; } } } @@ -91,17 +97,20 @@ AliPHOSEmcCalibData::~AliPHOSEmcCalibData() //________________________________________________________________ void AliPHOSEmcCalibData::Reset() { - // Set all pedestals and all ADC channels to its ideal values = 1. + // Set all pedestals and all ADC channels to its ideal values = 5. (MeV/ADC) for (Int_t module=0; module<5; module++){ for (Int_t column=0; column<56; column++){ for (Int_t row=0; row<64; row++){ fADCpedestalEmc[module][column][row] = 0.; - fADCchannelEmc[module][column][row] = 1.; + fADCchannelEmc[module][column][row] = 0.005; + fHighLowRatioEmc[module][column][row] = 16. ; + fTimeShiftEmc[module][column][row] = 0. ; + fAltroOffsets[module][column][row] = 0 ; } } } - + fSampleTimeStep=100.e-9 ; //100 ns } //________________________________________________________________ @@ -134,6 +143,43 @@ void AliPHOSEmcCalibData::Print(Option_t *option) const } } } + + if (strstr(option,"hilo")) { + printf("\n ---- EMC High/Low ratio ----\n\n"); + for (Int_t module=0; module<5; module++){ + printf("============== Module %d\n",module+1); + for (Int_t column=0; column<56; column++){ + for (Int_t row=0; row<64; row++){ + printf("%4.1f",fHighLowRatioEmc[module][column][row]); + } + printf("\n"); + } + } + } + if (strstr(option,"time")) { + printf("\n ---- EMC t0 shifts ----\n\n"); + for (Int_t module=0; module<5; module++){ + printf("============== Module %d\n",module+1); + for (Int_t column=0; column<56; column++){ + for (Int_t row=0; row<64; row++){ + printf("%6.3e",fTimeShiftEmc[module][column][row]); + } + printf("\n"); + } + } + } + if (strstr(option,"altro")) { + printf("\n ---- EMC altro offsets ----\n\n"); + for (Int_t module=0; module<5; module++){ + printf("============== Module %d\n",module+1); + for (Int_t column=0; column<56; column++){ + for (Int_t row=0; row<64; row++){ + printf("%5d",fAltroOffsets[module][column][row]); + } + printf("\n"); + } + } + } } //________________________________________________________________ @@ -156,6 +202,42 @@ Float_t AliPHOSEmcCalibData::GetADCpedestalEmc(Int_t module, Int_t column, Int_t return fADCpedestalEmc[module-1][column-1][row-1]; } +//________________________________________________________________ +Float_t AliPHOSEmcCalibData::GetHighLowRatioEmc(Int_t module, Int_t column, Int_t row) const +{ + //Return EMC pedestal + //module, column,raw should follow the internal PHOS convention: + //module 1:5, column 1:56, row 1:64 + + return fHighLowRatioEmc[module-1][column-1][row-1]; +} + +//________________________________________________________________ +Float_t AliPHOSEmcCalibData::GetTimeShiftEmc(Int_t module, Int_t column, Int_t row) const +{ + //Return EMC pedestal + //module, column,raw should follow the internal PHOS convention: + //module 1:5, column 1:56, row 1:64 + + return fTimeShiftEmc[module-1][column-1][row-1]; +} +//________________________________________________________________ +Float_t AliPHOSEmcCalibData::GetSampleTimeStep()const +{ + //Returns conversion coefficient from ALTRO smaple time step and secods + //Negative value not used in reconstruction (conversion taken from TRU trailer) + //and only in raw simulation + return fSampleTimeStep ; +} +//________________________________________________________________ +Int_t AliPHOSEmcCalibData::GetAltroOffsetEmc(Int_t module, Int_t column, Int_t row) const +{ + //Return EMC altro offsets + //module, column,raw should follow the internal PHOS convention: + //module 1:5, column 1:56, row 1:64 + + return fAltroOffsets[module-1][column-1][row-1]; +} //________________________________________________________________ void AliPHOSEmcCalibData::SetADCchannelEmc(Int_t module, Int_t column, Int_t row, Float_t value) { @@ -174,3 +256,37 @@ void AliPHOSEmcCalibData::SetADCpedestalEmc(Int_t module, Int_t column, Int_t ro //module 1:5, column 1:56, row 1:64 fADCpedestalEmc[module-1][column-1][row-1] = value; } + +//________________________________________________________________ +void AliPHOSEmcCalibData::SetHighLowRatioEmc(Int_t module, Int_t column, Int_t row, Float_t value) +{ + //Set EMC pedestal + //module, column,raw should follow the internal PHOS convention: + //module 1:5, column 1:56, row 1:64 + fHighLowRatioEmc[module-1][column-1][row-1] = value; +} +//________________________________________________________________ +void AliPHOSEmcCalibData::SetTimeShiftEmc(Int_t module, Int_t column, Int_t row, Float_t value) +{ + //Set EMC pedestal + //module, column,raw should follow the internal PHOS convention: + //module 1:5, column 1:56, row 1:64 + fTimeShiftEmc[module-1][column-1][row-1] = value; +} +//________________________________________________________________ +void AliPHOSEmcCalibData::SetAltroOffsetEmc(Int_t module, Int_t column, Int_t row, Int_t value) +{ + //Set EMC pedestal + //module, column,raw should follow the internal PHOS convention: + //module 1:5, column 1:56, row 1:64 + fAltroOffsets[module-1][column-1][row-1] = value; +} +//________________________________________________________________ +void AliPHOSEmcCalibData::SetSampleTimeStep(Float_t step) +{ + //Sets conversion coefficient from ALTRO smaple time step and secods + //Negative value not used in reconstruction (conversion taken from TRU trailer) + //and only in raw simulation + fSampleTimeStep = step ; +} +