//________________________________________________________________
AliZDCCalibData::AliZDCCalibData()
{
-// fHistMeanPed=0;
Reset();
}
namst += name;
SetName(namst.Data());
SetTitle(namst.Data());
-// fHistMeanPed=0;
Reset();
}
fPedCorrCoeff[1][t] = calibda.GetPedCorrCoeff1(t);
}
for(int t=0; t<6; t++) fEnCalibration[t] = calibda.GetEnCalib(t);
-// PrepHistos();
+ //
+ fZEMEndValue = calibda.GetZEMEndValue();
+ fZEMCutFraction = calibda.GetZEMCutFraction();
+ fDZEMSup = calibda.GetDZEMSup();
+ fDZEMInf = calibda.GetDZEMInf();
}
//________________________________________________________________
fPedCorrCoeff[1][t] = calibda.GetPedCorrCoeff1(t);
}
for(int t=0; t<6; t++) fEnCalibration[t] = calibda.GetEnCalib(t);
-// PrepHistos();
+ fZEMEndValue = calibda.GetZEMEndValue();
+ fZEMCutFraction = calibda.GetZEMCutFraction();
+
return *this;
}
//________________________________________________________________
AliZDCCalibData::~AliZDCCalibData()
{
-// CleanHistos();
}
//________________________________________________________________
memset(fEnCalibration,0,6*sizeof(Float_t));
}
-/*
-//________________________________________________________________
-void AliZDCCalibData::CleanHistos()
-{
- if (fHistMeanPed) delete fHistMeanPed; fHistMeanPed = 0;
-}
-
-//________________________________________________________________
-void AliZDCCalibData::PrepHistos()
-{
-// CleanHistos(); // this gives a segm.viol!
- Int_t kNChannels = 47;
- Float_t kMaxPedVal = 47.;
- TString hname = GetName(); hname += "_Pedestals";
- fHistMeanPed = new TH1F(hname.Data(),hname.Data(),kNChannels,0.,kMaxPedVal);
- for(int i=0; i<47; i++) fHistMeanPed->SetBinContent(i+1,GetMeanPed(i));
-}
-*/
//________________________________________________________________
void AliZDCCalibData::Print(Option_t *) const
{
// Printing of calibration object
- printf("\n ####### Mean pedestal values ####### \n");
- for(int t=0; t<47; t++){
- if(t==0 || t==24) printf("\n\t ZN HighRes -------- \n");
- else if(t==5 || t==29) printf("\n\t ZN LowRes -------- \n");
- else if(t==10 || t==34) printf("\n\t ZP HighRes -------- \n");
- else if(t==15 || t==39) printf("\n\t ZP LowRes -------- \n");
- else if(t==20) printf("\n\t ZEM1 HighRes -------- ");
- else if(t==21) printf("\n\t ZEM1 LowRes -------- ");
- else if(t==22) printf("\n\t ZEM2 HighRes -------- ");
- else if(t==23) printf("\n\t ZEM2 LowRes -------- ");
- printf(" MeanPed[ADC%d] = %.1f ",t,fMeanPedestal[t]);
- }
- printf("\n\n\n ####### Pedestal width values ####### \n");
- for(int t=0; t<47; t++){
- if(t==0 || t==24) printf("\n\t ZN HighRes -------- \n");
- else if(t==5 || t==29) printf("\n\t ZN LowRes -------- \n");
- else if(t==10 || t==34) printf("\n\t ZP HighRes -------- \n");
- else if(t==15 || t==39) printf("\n\t ZP LowRes -------- \n");
- else if(t==20) printf("\n\t ZEM1 HighRes -------- ");
- else if(t==21) printf("\n\t ZEM1 LowRes -------- ");
- else if(t==22) printf("\n\t ZEM2 HighRes -------- ");
- else if(t==23) printf("\n\t ZEM2 LowRes -------- ");
- printf(" MeanPed[ADC%d] = %.1f ",t,fMeanPedWidth[t]);
+ printf("\n ####### In-time pedestal values (mean value, sigma) ####### \n");
+ for(int t=0; t<44; t++){
+ if(t==0 || t==24) printf("\n-------- ZN1 HighRes -------- \n");
+ else if(t==5 || t==29) printf("\n-------- ZN1 LowRes -------- \n");
+ else if(t==10 || t==34) printf("\n-------- ZP1 HighRes -------- \n");
+ else if(t==15 || t==39) printf("\n-------- ZP1 LowRes -------- \n");
+ else if(t==20) printf("\n-------- ZEM1 HighRes -------- \n");
+ else if(t==21) printf("\n-------- ZEM1 LowRes -------- \n");
+ else if(t==22) printf("\n-------- ZEM2 HighRes -------- \n");
+ else if(t==23) printf("\n-------- ZEM2 LowRes -------- \n");
+ printf("ADC%d (%.1f, %.1f) ",t,fMeanPedestal[t],fMeanPedWidth[t]);
}
-
- printf("\n\n\n ####### Out Of Time pedestal values ####### \n");
+ //
+ printf("\n\n ####### Out-of-time pedestal values (mean value, sigma) ####### \n");
for(int t=0; t<44; t++){
- if(t==0 || t==24) printf("\n\t ZN HighRes -------- \n");
- else if(t==5 || t==29) printf("\n\t ZN LowRes -------- \n");
- else if(t==10 || t==34) printf("\n\t ZP HighRes -------- \n");
- else if(t==15 || t==39) printf("\n\t ZP LowRes -------- \n");
- else if(t==20) printf("\n\t ZEM1 HighRes -------- ");
- else if(t==21) printf("\n\t ZEM1 LowRes -------- ");
- else if(t==22) printf("\n\t ZEM2 HighRes -------- ");
- else if(t==23) printf("\n\t ZEM2 LowRes -------- ");
- printf(" OOTPed[ADC%d] = %.1f ",t,fOOTPedestal[t]);
+ if(t==0 || t==24) printf("\n-------- ZN1 HighRes -------- \n");
+ else if(t==5 || t==29) printf("\n-------- ZN1 LowRes -------- \n");
+ else if(t==10 || t==34) printf("\n-------- ZP1 HighRes -------- \n");
+ else if(t==15 || t==39) printf("\n-------- ZP1 LowRes -------- \n");
+ else if(t==20) printf("\n-------- ZEM1 HighRes -------- \n");
+ else if(t==21) printf("\n-------- ZEM1 LowRes -------- \n");
+ else if(t==22) printf("\n-------- ZEM2 HighRes -------- \n");
+ else if(t==23) printf("\n-------- ZEM2 LowRes -------- \n");
+ printf("ADC%d (%.1f, %.1f) ",t,fOOTPedestal[t],fOOTPedWidth[t]);
}
- printf("\n\n\n ####### Energy calibration coefficients ####### \n");
- printf(" ZN1 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[0]);
- printf(" ZP1 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[1]);
- printf(" ZN2 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[2]);
- printf(" ZP2 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[3]);
- printf(" ZEM1 = %.2f (E[TeV]/ADCch.) \n",fEnCalibration[4]);
- printf(" ZEM2 = %.2f (E[TeV]/ADCch.) \n",fEnCalibration[5]);
+ printf("\n\n ####### Energy calibration coefficients ####### \n");
+ printf(" ZN1 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[0]);
+ printf(" ZP1 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[1]);
+ printf(" ZN2 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[2]);
+ printf(" ZP2 = %.4f (E[TeV]/ADCch.) \n",fEnCalibration[3]);
+ printf(" ZEM1 = %.2f (E[TeV]/ADCch.) \n",fEnCalibration[4]);
+ printf(" ZEM2 = %.2f (E[TeV]/ADCch.) \n",fEnCalibration[5]);
+
+ printf("\n\n ####### Equalization coefficients ####### \n");
+ printf(" ZN1 -> %1.2f %1.2f %1.2f %1.2f %1.2f \n",
+ fZN1EqualCoeff[0],fZN1EqualCoeff[1],fZN1EqualCoeff[2],fZN1EqualCoeff[3],fZN1EqualCoeff[4]);
+ printf(" ZP1 -> %1.2f %1.2f %1.2f %1.2f %1.2f \n",
+ fZP1EqualCoeff[0],fZP1EqualCoeff[1],fZP1EqualCoeff[2],fZP1EqualCoeff[3],fZP1EqualCoeff[4]);
+ printf(" ZN2 -> %1.2f %1.2f %1.2f %1.2f %1.2f \n",
+ fZN2EqualCoeff[0],fZN2EqualCoeff[1],fZN2EqualCoeff[2],fZN2EqualCoeff[3],fZN2EqualCoeff[4]);
+ printf(" ZP2 -> %1.2f %1.2f %1.2f %1.2f %1.2f \n",
+ fZP2EqualCoeff[0],fZP2EqualCoeff[1],fZP2EqualCoeff[2],fZP2EqualCoeff[3],fZP2EqualCoeff[4]);
+
+ printf("\n\n ####### Parameters from EZDC vs. ZEM correlation ####### \n");
+ printf(" ZEMEndPoint = %1.2f, ZEMCutFraction = %1.2f \n"
+ " DZEMInf = %1.2f, DZEMSup = %1.2f\n",
+ fZEMEndValue, fZEMCutFraction, fDZEMInf, fDZEMSup);
+
+ printf("\n\n ####### Parameters from EZDC vs. Nspec correlation ####### \n");
+ printf(" EZN1MaxValue = %1.2f, EZP1MaxValue = %1.2f, EZDC1MaxValue = %1.2f \n"
+ " EZN2MaxValue = %1.2f, EZP2MaxValue = %1.2f, EZDC2MaxValue = %1.2f \n\n",
+ fEZN1MaxValue, fEZP1MaxValue, fEZDC1MaxValue,
+ fEZN2MaxValue, fEZP2MaxValue, fEZDC2MaxValue);
+
}
//________________________________________________________________
}
//________________________________________________________________
-void AliZDCCalibData::SetPMTHVVal(Float_t* HVVal)
+void AliZDCCalibData::SetZN1EqualCoeff(Float_t* EqualCoeff)
{
- // Set PMTs HV values
- if(HVVal) for(int t=0; t<22; t++) fPMTHVVal[t] = HVVal[t];
- else for(int t=0; t<22; t++) fPMTHVVal[t] = 0.;
+ // Set ZN1 equalization coefficients
+ if(EqualCoeff) for(int t=0; t<5; t++) fZN1EqualCoeff[t] = EqualCoeff[t];
+ else for(int t=0; t<5; t++) fZN1EqualCoeff[t] = 1.;
}
//________________________________________________________________
-void AliZDCCalibData::SetZDCTablePos(Float_t* ZDCTablePos)
+void AliZDCCalibData::SetZP1EqualCoeff(Float_t* EqualCoeff)
{
- // Set ZDC table vertical positions
- if(ZDCTablePos) for(int t=0; t<4; t++) fZDCTablePos[t] = ZDCTablePos[t];
- else for(int t=0; t<4; t++) fZDCTablePos[t] = 0.;
+ // Set ZP1 equalization coefficients
+ if(EqualCoeff) for(int t=0; t<5; t++) fZP1EqualCoeff[t] = EqualCoeff[t];
+ else for(int t=0; t<5; t++) fZP1EqualCoeff[t] = 1.;
}
-
//________________________________________________________________
-void AliZDCCalibData::SetDCSCalibData(Float_t* DCSData)
+void AliZDCCalibData::SetZN2EqualCoeff(Float_t* EqualCoeff)
{
- // Set all DCS data simultaneously
- if(DCSData){
- for(int t=0; t<4; t++) fZDCTablePos[t] = DCSData[t];
- for(int t=4; t<26; t++) fPMTHVVal[t] = DCSData[t];
- }
- else{
- for(int t=0; t<4; t++) fZDCTablePos[t] = 0.;
- for(int t=4; t<26; t++) fPMTHVVal[t] = 0.;
- }
+ // Set ZN2 equalization coefficients
+ if(EqualCoeff) for(int t=0; t<5; t++) fZN2EqualCoeff[t] = EqualCoeff[t];
+ else for(int t=0; t<5; t++) fZN2EqualCoeff[t] = 1.;
}
+
+//________________________________________________________________
+void AliZDCCalibData::SetZP2EqualCoeff(Float_t* EqualCoeff)
+{
+ // Set ZN1 equalization coefficients
+ if(EqualCoeff) for(int t=0; t<5; t++) fZP2EqualCoeff[t] = EqualCoeff[t];
+ else for(int t=0; t<5; t++) fZP2EqualCoeff[t] = 1.;
+}
+