- // Add laser graphs
- //
- THnSparse* laserHist=NULL;
- TGraphErrors* laserGraph=NULL;
- TString laserName="";
- laserHist=timeDrift->GetHistVdriftLaserA(1);
- laserName=laserHist->ClassName();
- laserName+="_MEAN_DRIFT_LASER_ALL_A";
- laserName.ToUpper();
- laserHist->SetName(laserName);
- laserGraph=AliTPCcalibBase::FitSlices(laserHist,2,0,300,10,0.05,0.95, kTRUE);
- //laserGraph=FilterGraphDrift(laserGraph, 5,0.04);
- //
- if(laserGraph && laserGraph->GetN()){
- laserName=laserGraph->GetName();
- laserName+="_MEAN_DRIFT_LASER_ALL_A";
- laserName.ToUpper();
- laserGraph->SetName(laserName);
- vdriftArray->Add(laserGraph);
+ // add graphs for laser
+ //
+ const Double_t delayL0L1 = 0.07; //this is hack for 1/2 weeks
+ THnSparse *hisN=0;
+ TGraphErrors *grLaser[6]={0,0,0,0,0,0};
+ hisN = timeDrift->GetHistVdriftLaserA(0);
+ if (timeDrift->GetHistVdriftLaserA(0)){
+ grLaser[0]=MakeGraphFilter0(timeDrift->GetHistVdriftLaserA(0),0,2,5,delayL0L1);
+ grLaser[0]->SetName("GRAPH_MEAN_DELAY_LASER_ALL_A");
+ vdriftArray->AddLast(grLaser[0]);
+ }
+ if (timeDrift->GetHistVdriftLaserA(1)){
+ grLaser[1]=MakeGraphFilter0(timeDrift->GetHistVdriftLaserA(1),0,2,5);
+ grLaser[1]->SetName("GRAPH_MEAN_DRIFT_LASER_ALL_A");
+ vdriftArray->AddLast(grLaser[1]);
+ }
+ if (timeDrift->GetHistVdriftLaserA(2)){
+ grLaser[2]=MakeGraphFilter0(timeDrift->GetHistVdriftLaserA(2),0,2,5);
+ grLaser[2]->SetName("GRAPH_MEAN_GLOBALYGRADIENT_LASER_ALL_A");
+ vdriftArray->AddLast(grLaser[2]);
+ }
+ if (timeDrift->GetHistVdriftLaserC(0)){
+ grLaser[3]=MakeGraphFilter0(timeDrift->GetHistVdriftLaserC(0),0,2,5,delayL0L1);
+ grLaser[3]->SetName("GRAPH_MEAN_DELAY_LASER_ALL_C");
+ vdriftArray->AddLast(grLaser[3]);
+ }
+ if (timeDrift->GetHistVdriftLaserC(1)){
+ grLaser[4]=MakeGraphFilter0(timeDrift->GetHistVdriftLaserC(1),0,2,5);
+ grLaser[4]->SetName("GRAPH_MEAN_DRIFT_LASER_ALL_C");
+ vdriftArray->AddLast(grLaser[4]);
+ }
+ if (timeDrift->GetHistVdriftLaserC(2)){
+ grLaser[5]=MakeGraphFilter0(timeDrift->GetHistVdriftLaserC(2),0,2,5);
+ grLaser[5]->SetName("GRAPH_MEAN_GLOBALYGRADIENT_LASER_ALL_C");
+ vdriftArray->AddLast(grLaser[5]);
+ }
+ for (Int_t i=0; i<6;i++){
+ if (grLaser[i]) {
+ SetDefaultGraphDrift(grLaser[i], 1,(i+20));
+ grLaser[i]->GetYaxis()->SetTitle("Laser Correction");
+ }