void CreateCalibPars_Miscalibrated_Scaled(){ // Create TOF Calibration Object for miscalibrated detector // and write it on CDB AliTOFGeometry *geom = new AliTOFGeometryV5(); AliTOFcalib *tofcalib = new AliTOFcalib(geom); AliTOFCal *tofCal= new AliTOFCal(geom); tofCal->CreateArray(); // Input data for decalibration TFile f("$ALICE_ROOT/TOF/data/spectrumScaled.root","READ"); TH1F *hTimeToTFit= (TH1F*)f.Get("hTimeToTScaled"); TF1 *fit=hTimeToTFit->GetFunction("pol5"); // Slewing parameters (same for all channels) Float_t par[6] = {0.,0.,0.,0.,0.,0.}; for(Int_t i =0;i<6;i++){ par[i]=fit->GetParameter(i); cout << " Slewing parameter " <SetDefaultStorage("local://$ALICE"); TRandom *rnd = new TRandom(4357); for (Int_t ipad = 0 ; ipadNPads(); ipad++){ AliTOFChannel *calChannel = tofCal->GetChannel(ipad); calChannel->SetSlewPar(par); delay=rnd->Gaus(meanDelay,sigmaDelay); calChannel->SetDelay(delay); } tofcalib->WriteSimParOnCDB("TOF/Calib",0,0,tofCal,hToT); f.Close(); }