fLinearFitterPArray(540),
fLinearFitterEArray(540),
fRobustFit(kTRUE),
+ fMinNpointsFit(11),
+ fNbBindx(32),
+ fNbBindy(70),
+ fRangedx(0.8),
+ fRangedy(1.4),
fDebugStreamer(0x0),
fDebugLevel(0),
fSeeDetector(0)
fLinearFitterPArray(540),
fLinearFitterEArray(540),
fRobustFit(kTRUE),
+ fMinNpointsFit(10),
+ fNbBindx(32),
+ fNbBindy(70),
+ fRangedx(0.8),
+ fRangedy(1.4),
fDebugStreamer(0x0),
fDebugLevel(0),
fSeeDetector(0)
fLinearFitterPArray(540),
fLinearFitterEArray(540),
fRobustFit(kTRUE),
+ fMinNpointsFit(10),
+ fNbBindx(32),
+ fNbBindy(70),
+ fRangedx(0.8),
+ fRangedy(1.4),
fDebugStreamer(0x0),
fDebugLevel(0),
fSeeDetector(0)
}
}
//______________________________________________________________________________________
+TH2S* AliTRDCalibraVdriftLinearFit::AddAll()
+{
+ //
+ // return pointer to TH2S of all added histos
+ //
+
+ TH2S *histo = 0x0;
+ for(Int_t k=0; k < 540; k++) {
+ TH2S * u = GetLinearFitterHistoForce(k);
+ if(k == 0) {
+ histo = new TH2S(*u);
+ histo->SetName("sum");
+ }
+ else histo->Add(u);
+ }
+
+ return histo;
+
+}
+//______________________________________________________________________________________
TH2S* AliTRDCalibraVdriftLinearFit::GetLinearFitterHisto(Int_t detector, Bool_t force)
{
//
name += fVersion;
TH2S *lfdv = new TH2S((const Char_t *)name,(const Char_t *) name
- ,36,-0.9,0.9,48
- ,-1.2,1.2);
+ ,(Int_t)fNbBindx,-fRangedx,fRangedx,(Int_t)fNbBindy
+ ,-fRangedy,fRangedy);
lfdv->SetXTitle("tan(phi_{track})");
lfdv->SetYTitle("dy/dt");
lfdv->SetZTitle("Number of clusters");
if ( linearfitterhisto != 0 ){
// Fill a linearfitter
- TAxis *xaxis = linearfitterhisto->GetXaxis();
- TAxis *yaxis = linearfitterhisto->GetYaxis();
+ const TAxis *xaxis = linearfitterhisto->GetXaxis();
+ const TAxis *yaxis = linearfitterhisto->GetYaxis();
TLinearFitter linearfitter = TLinearFitter(2,"pol1");
//printf("test\n");
Double_t integral = linearfitterhisto->Integral();
TGraphErrors *gg=DrawMS(fitterhisto,nEntries);
if (!gg) continue;
// Number of points of the TGraphErrors
- if(gg->GetN() < 20) {
+ //printf("Number of points %d for detector %d\n",gg->GetN(),cb);
+ if(gg->GetN() < fMinNpointsFit) {
if(gg) delete gg;
continue;
}
(*par)[1] = f1->GetParameter(1);
fLinearFitterPArray.AddAt(par,cb);
fLinearFitterEArray.AddAt(parE,cb);
+ //printf("Value %f for detector %d\n",(*par)[1],cb);
if(fDebugLevel==0) {
if(gg) delete gg;
TF1 fg("fg", "gaus", -10., 30.);
TGraphErrors *gp = new TGraphErrors();
- TAxis *ax(h2->GetXaxis());
- TAxis *ay(h2->GetYaxis());
+ const TAxis *ax(h2->GetXaxis());
+ const TAxis *ay(h2->GetYaxis());
TH1D *h1(NULL);
for(Int_t ipt(0), jpt(1), ig(0); ipt<ax->GetNbins(); ipt++, jpt++){
h1 = h2->ProjectionY("py", jpt, jpt);