#include <TObjArray.h>
#include <TH2F.h>
#include <TString.h>
#include <TVectorD.h>
#include <TAxis.h>
#include <TLinearFitter.h>
#include <TMath.h>
#include <TDirectory.h>
#include <TTreeStream.h>
#include <TGraphErrors.h>
#include <TF1.h>
#include "AliTRDCalibraExbAltFit.h"
ClassImp(AliTRDCalibraExbAltFit)
AliTRDCalibraExbAltFit::AliTRDCalibraExbAltFit() :
TObject(),
fVersion(0),
fFitterHistoArray(540),
fFitterPArray(540),
fFitterEArray(540),
fRobustFit(kFALSE),
fDebugStreamer(0x0),
fDebugLevel(0)
{
}
AliTRDCalibraExbAltFit::AliTRDCalibraExbAltFit(const AliTRDCalibraExbAltFit &ped) :
TObject(ped),
fVersion(ped.fVersion),
fFitterHistoArray(540),
fFitterPArray(540),
fFitterEArray(540),
fRobustFit(kFALSE),
fDebugStreamer(0x0),
fDebugLevel(0)
{
for (Int_t idet = 0; idet < 540; idet++){
const TVectorD *vectorE = (TVectorD*)ped.fFitterEArray.UncheckedAt(idet);
const TVectorD *vectorP = (TVectorD*)ped.fFitterPArray.UncheckedAt(idet);
const TH2S *hped = (TH2S*)ped.fFitterHistoArray.UncheckedAt(idet);
if ( vectorE != 0x0 ) fFitterEArray.AddAt(new TVectorD(*vectorE), idet);
if ( vectorP != 0x0 ) fFitterPArray.AddAt(new TVectorD(*vectorP), idet);
if ( hped != 0x0 ){
TH2S *hNew = (TH2S *)hped->Clone();
fFitterHistoArray.AddAt(hNew,idet);
}
}
}
AliTRDCalibraExbAltFit::AliTRDCalibraExbAltFit(const TObjArray &obja) :
TObject(),
fVersion(0),
fFitterHistoArray(540),
fFitterPArray(540),
fFitterEArray(540),
fRobustFit(kFALSE),
fDebugStreamer(0x0),
fDebugLevel(0)
{
for (Int_t idet = 0; idet < 540; idet++){
const TH2S *hped = (TH2S*)obja.UncheckedAt(idet);
if ( hped != 0x0 ){
TH2S *hNew = (TH2S *)hped->Clone();
fFitterHistoArray.AddAt(hNew,idet);
}
}
}
AliTRDCalibraExbAltFit& AliTRDCalibraExbAltFit::operator = (const AliTRDCalibraExbAltFit &source)
{
if (&source == this) return *this;
new (this) AliTRDCalibraExbAltFit(source);
return *this;
}
AliTRDCalibraExbAltFit::~AliTRDCalibraExbAltFit()
{
fFitterHistoArray.SetOwner();
fFitterPArray.SetOwner();
fFitterEArray.SetOwner();
fFitterHistoArray.Delete();
fFitterPArray.Delete();
fFitterEArray.Delete();
if ( fDebugStreamer ) delete fDebugStreamer;
}
void AliTRDCalibraExbAltFit::Copy(TObject &c) const
{
AliTRDCalibraExbAltFit& target = (AliTRDCalibraExbAltFit &) c;
for (Int_t idet = 0; idet < 540; idet++){
if(fFitterHistoArray.UncheckedAt(idet)){
TH2S *hped1 = (TH2S *)target.GetFitterHisto(idet,kTRUE);
hped1->Add((const TH2S *)fFitterHistoArray.UncheckedAt(idet));
}
}
TObject::Copy(c);
}
Long64_t AliTRDCalibraExbAltFit::Merge(const TCollection* list)
{
if (!list)
return 0;
if (list->IsEmpty())
return 1;
TIterator* iter = list->MakeIterator();
TObject* obj = 0;
Int_t count=0;
while((obj = iter->Next()) != 0)
{
AliTRDCalibraExbAltFit* entry = dynamic_cast<AliTRDCalibraExbAltFit*>(obj);
if (entry == 0) continue;
for (Int_t idet = 0; idet < 540; idet++){
if(entry->GetFitterHisto(idet)){
TH2S *hped1 = (TH2S *)GetFitterHisto(idet,kTRUE);
Double_t entriesa = hped1->GetEntries();
Double_t entriesb = ((TH2S *)entry->GetFitterHisto(idet))->GetEntries();
if((entriesa + entriesb) < 5*32767) hped1->Add(entry->GetFitterHisto(idet));
}
}
count++;
}
return count;
}
void AliTRDCalibraExbAltFit::Add(const AliTRDCalibraExbAltFit *ped)
{
fVersion++;
for (Int_t idet = 0; idet < 540; idet++){
const TH2S *hped = (TH2S*)ped->GetFitterHistoNoForce(idet);
if ( hped != 0x0 ){
TH2S *hped1 = (TH2S *)GetFitterHisto(idet,kTRUE);
Double_t entriesa = hped1->GetEntries();
Double_t entriesb = hped->GetEntries();
if((entriesa + entriesb) < 5*32767) hped1->Add(hped);
}
}
}
TH2S* AliTRDCalibraExbAltFit::GetFitterHisto(Int_t detector, Bool_t force)
{
if ( !force || fFitterHistoArray.UncheckedAt(detector) )
return (TH2S*)fFitterHistoArray.UncheckedAt(detector);
return GetFitterHistoForce(detector);
}
TH2S* AliTRDCalibraExbAltFit::GetFitterHistoForce(Int_t detector)
{
if (fFitterHistoArray.UncheckedAt(detector))
return (TH2S*)fFitterHistoArray.UncheckedAt(detector);
TString name("LFEXB");
name += detector;
name += "version";
name += fVersion;
TH2S *lfdv = new TH2S((const Char_t *)name,(const Char_t *) name,
30, -TMath::DegToRad()*45, TMath::DegToRad()*45,
30, 0.3, 1.4);
lfdv->SetXTitle("tan(phi_{track})");
lfdv->SetYTitle("rms");
lfdv->SetZTitle("Number of tracklets");
lfdv->SetStats(0);
lfdv->SetDirectory(0);
fFitterHistoArray.AddAt(lfdv,detector);
return lfdv;
}
Bool_t AliTRDCalibraExbAltFit::GetParam(Int_t detector, TVectorD *param)
{
if ( fFitterPArray.UncheckedAt(detector) ){
const TVectorD *vectorP = (TVectorD*)fFitterPArray.UncheckedAt(detector);
if(!param) param = new TVectorD(vectorP->GetNoElements());
for(Int_t k = 0; k < vectorP->GetNoElements(); k++){
(*param)[k] = (*vectorP)[k];
}
return kTRUE;
}
else return kFALSE;
}
Bool_t AliTRDCalibraExbAltFit::GetError(Int_t detector, TVectorD *error)
{
if ( fFitterEArray.UncheckedAt(detector) ){
const TVectorD *vectorE = (TVectorD*)fFitterEArray.UncheckedAt(detector);
if(!error) error = new TVectorD(vectorE->GetNoElements());
for(Int_t k = 0; k < vectorE->GetNoElements(); k++){
(*error)[k] = (*vectorE)[k];
}
return kTRUE;
}
else return kFALSE;
}
void AliTRDCalibraExbAltFit::Update(Int_t detector, Float_t tnp, Float_t pars1)
{
TH2S *h = ((TH2S *) GetFitterHisto(detector,kTRUE));
Double_t nbentries = h->GetEntries();
if(nbentries < 5*32767) h->Fill(tnp,pars1);
}
void AliTRDCalibraExbAltFit::FillPEArray()
{
Int_t *arrayI = new Int_t[540];
for(Int_t k = 0; k< 540; k++){
arrayI[k] = 0;
}
for(Int_t cb = 0; cb < 540; cb++){
const TH2S *fitterhisto = (TH2S*)fFitterHistoArray.UncheckedAt(cb);
if ( fitterhisto != 0 ){
const TAxis *xaxis = fitterhisto->GetXaxis();
const TAxis *yaxis = fitterhisto->GetYaxis();
TLinearFitter fitter = TLinearFitter(3,"pol2");
Double_t integral = fitterhisto->Integral();
Bool_t securitybreaking = kFALSE;
if(TMath::Abs(integral-1199) < 0.00001) securitybreaking = kTRUE;
for(Int_t ibinx = 0; ibinx < fitterhisto->GetNbinsX(); ibinx++){
for(Int_t ibiny = 0; ibiny < fitterhisto->GetNbinsY(); ibiny++){
if(fitterhisto->GetBinContent(ibinx+1,ibiny+1)>0){
Double_t x = xaxis->GetBinCenter(ibinx+1);
Double_t y = yaxis->GetBinCenter(ibiny+1);
for(Int_t k = 0; k < (Int_t)fitterhisto->GetBinContent(ibinx+1,ibiny+1); k++){
if(!securitybreaking){
fitter.AddPoint(&x,y);
arrayI[cb]++;
}
else {
if(arrayI[cb]< 1198){
fitter.AddPoint(&x,y);
arrayI[cb]++;
}
}
}
}
}
}
if(arrayI[cb]>15){
TVectorD *par = new TVectorD(3);
TVectorD pare = TVectorD(2);
TVectorD *parE = new TVectorD(3);
if(((fRobustFit) && (fitter.EvalRobust(0.8)==0)) || ((!fRobustFit) && (fitter.Eval()==0))) {
fitter.GetParameters(*par);
(*parE)[0] = 0.0;
(*parE)[1] = 0.0;
(*parE)[2] = (Double_t) arrayI[cb];
fFitterPArray.AddAt(par,cb);
fFitterEArray.AddAt(parE,cb);
}
}
}
}
delete [] arrayI;
}
void AliTRDCalibraExbAltFit::FillPEArray2()
{
for(Int_t cb = 0; cb < 540; cb++){
TH2S *fitterhisto = (TH2S*)fFitterHistoArray.UncheckedAt(cb);
if ( fitterhisto != 0 ){
TF1 *f1 = new TF1("f1","[0]*(x-[1])**2+[2]",-1,1);
Int_t nEntries=0;
TGraphErrors *gg=DrawMS(fitterhisto,nEntries);
if (!gg) continue;
if(gg->GetN() < 20) {
if(gg) delete gg;
continue;
}
gg->Fit(f1,"Q0");
TVectorD *par = new TVectorD(3);
TVectorD *parE = new TVectorD(3);
(*parE)[0] = 0.0;
(*parE)[1] = 0.0;
(*parE)[2] = (Double_t) nEntries;
(*par)[0] = f1->GetParameter(0)*TMath::Power(f1->GetParameter(1),2)+f1->GetParameter(2);
(*par)[1] = -2*f1->GetParameter(0)*f1->GetParameter(1);
(*par)[2] = f1->GetParameter(0);
fFitterPArray.AddAt(par,cb);
fFitterEArray.AddAt(parE,cb);
delete gg;
delete f1;
}
}
}
TGraphErrors* AliTRDCalibraExbAltFit::DrawMS(const TH2 *const h2, Int_t &nEntries)
{
TF1 fg("fg", "gaus", -10., 30.);
TGraphErrors *gp = new TGraphErrors();
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);
fg.SetParameter(1, h1->GetMean());
Int_t n=Int_t(h1->Integral(1, h1->GetNbinsX()));
nEntries+=n;
if(n < 5){
continue;
}
h1->Fit(&fg, "WWQ0");
if(fg.GetNDF()<2){
continue;
}
if(((fg.GetParameter(1)+fg.GetParameter(2)/2)>ay->GetXmax()) || ((fg.GetParameter(1)-fg.GetParameter(2)/2)<ay->GetXmin()) || (TMath::Abs(fg.GetParameter(0))< 0.00001)) continue;
gp->SetPoint(ig, ax->GetBinCenter(jpt), fg.GetParameter(1));
gp->SetPointError(ig, 0, TMath::Sqrt(pow(fg.GetParError(1),2) + (1/pow(fg.GetParameter(0),2))));
ig++;
}
delete h1;
return gp;
}
AliTRDCalibraExbAltFit.cxx:1 AliTRDCalibraExbAltFit.cxx:2 AliTRDCalibraExbAltFit.cxx:3 AliTRDCalibraExbAltFit.cxx:4 AliTRDCalibraExbAltFit.cxx:5 AliTRDCalibraExbAltFit.cxx:6 AliTRDCalibraExbAltFit.cxx:7 AliTRDCalibraExbAltFit.cxx:8 AliTRDCalibraExbAltFit.cxx:9 AliTRDCalibraExbAltFit.cxx:10 AliTRDCalibraExbAltFit.cxx:11 AliTRDCalibraExbAltFit.cxx:12 AliTRDCalibraExbAltFit.cxx:13 AliTRDCalibraExbAltFit.cxx:14 AliTRDCalibraExbAltFit.cxx:15 AliTRDCalibraExbAltFit.cxx:16 AliTRDCalibraExbAltFit.cxx:17 AliTRDCalibraExbAltFit.cxx:18 AliTRDCalibraExbAltFit.cxx:19 AliTRDCalibraExbAltFit.cxx:20 AliTRDCalibraExbAltFit.cxx:21 AliTRDCalibraExbAltFit.cxx:22 AliTRDCalibraExbAltFit.cxx:23 AliTRDCalibraExbAltFit.cxx:24 AliTRDCalibraExbAltFit.cxx:25 AliTRDCalibraExbAltFit.cxx:26 AliTRDCalibraExbAltFit.cxx:27 AliTRDCalibraExbAltFit.cxx:28 AliTRDCalibraExbAltFit.cxx:29 AliTRDCalibraExbAltFit.cxx:30 AliTRDCalibraExbAltFit.cxx:31 AliTRDCalibraExbAltFit.cxx:32 AliTRDCalibraExbAltFit.cxx:33 AliTRDCalibraExbAltFit.cxx:34 AliTRDCalibraExbAltFit.cxx:35 AliTRDCalibraExbAltFit.cxx:36 AliTRDCalibraExbAltFit.cxx:37 AliTRDCalibraExbAltFit.cxx:38 AliTRDCalibraExbAltFit.cxx:39 AliTRDCalibraExbAltFit.cxx:40 AliTRDCalibraExbAltFit.cxx:41 AliTRDCalibraExbAltFit.cxx:42 AliTRDCalibraExbAltFit.cxx:43 AliTRDCalibraExbAltFit.cxx:44 AliTRDCalibraExbAltFit.cxx:45 AliTRDCalibraExbAltFit.cxx:46 AliTRDCalibraExbAltFit.cxx:47 AliTRDCalibraExbAltFit.cxx:48 AliTRDCalibraExbAltFit.cxx:49 AliTRDCalibraExbAltFit.cxx:50 AliTRDCalibraExbAltFit.cxx:51 AliTRDCalibraExbAltFit.cxx:52 AliTRDCalibraExbAltFit.cxx:53 AliTRDCalibraExbAltFit.cxx:54 AliTRDCalibraExbAltFit.cxx:55 AliTRDCalibraExbAltFit.cxx:56 AliTRDCalibraExbAltFit.cxx:57 AliTRDCalibraExbAltFit.cxx:58 AliTRDCalibraExbAltFit.cxx:59 AliTRDCalibraExbAltFit.cxx:60 AliTRDCalibraExbAltFit.cxx:61 AliTRDCalibraExbAltFit.cxx:62 AliTRDCalibraExbAltFit.cxx:63 AliTRDCalibraExbAltFit.cxx:64 AliTRDCalibraExbAltFit.cxx:65 AliTRDCalibraExbAltFit.cxx:66 AliTRDCalibraExbAltFit.cxx:67 AliTRDCalibraExbAltFit.cxx:68 AliTRDCalibraExbAltFit.cxx:69 AliTRDCalibraExbAltFit.cxx:70 AliTRDCalibraExbAltFit.cxx:71 AliTRDCalibraExbAltFit.cxx:72 AliTRDCalibraExbAltFit.cxx:73 AliTRDCalibraExbAltFit.cxx:74 AliTRDCalibraExbAltFit.cxx:75 AliTRDCalibraExbAltFit.cxx:76 AliTRDCalibraExbAltFit.cxx:77 AliTRDCalibraExbAltFit.cxx:78 AliTRDCalibraExbAltFit.cxx:79 AliTRDCalibraExbAltFit.cxx:80 AliTRDCalibraExbAltFit.cxx:81 AliTRDCalibraExbAltFit.cxx:82 AliTRDCalibraExbAltFit.cxx:83 AliTRDCalibraExbAltFit.cxx:84 AliTRDCalibraExbAltFit.cxx:85 AliTRDCalibraExbAltFit.cxx:86 AliTRDCalibraExbAltFit.cxx:87 AliTRDCalibraExbAltFit.cxx:88 AliTRDCalibraExbAltFit.cxx:89 AliTRDCalibraExbAltFit.cxx:90 AliTRDCalibraExbAltFit.cxx:91 AliTRDCalibraExbAltFit.cxx:92 AliTRDCalibraExbAltFit.cxx:93 AliTRDCalibraExbAltFit.cxx:94 AliTRDCalibraExbAltFit.cxx:95 AliTRDCalibraExbAltFit.cxx:96 AliTRDCalibraExbAltFit.cxx:97 AliTRDCalibraExbAltFit.cxx:98 AliTRDCalibraExbAltFit.cxx:99 AliTRDCalibraExbAltFit.cxx:100 AliTRDCalibraExbAltFit.cxx:101 AliTRDCalibraExbAltFit.cxx:102 AliTRDCalibraExbAltFit.cxx:103 AliTRDCalibraExbAltFit.cxx:104 AliTRDCalibraExbAltFit.cxx:105 AliTRDCalibraExbAltFit.cxx:106 AliTRDCalibraExbAltFit.cxx:107 AliTRDCalibraExbAltFit.cxx:108 AliTRDCalibraExbAltFit.cxx:109 AliTRDCalibraExbAltFit.cxx:110 AliTRDCalibraExbAltFit.cxx:111 AliTRDCalibraExbAltFit.cxx:112 AliTRDCalibraExbAltFit.cxx:113 AliTRDCalibraExbAltFit.cxx:114 AliTRDCalibraExbAltFit.cxx:115 AliTRDCalibraExbAltFit.cxx:116 AliTRDCalibraExbAltFit.cxx:117 AliTRDCalibraExbAltFit.cxx:118 AliTRDCalibraExbAltFit.cxx:119 AliTRDCalibraExbAltFit.cxx:120 AliTRDCalibraExbAltFit.cxx:121 AliTRDCalibraExbAltFit.cxx:122 AliTRDCalibraExbAltFit.cxx:123 AliTRDCalibraExbAltFit.cxx:124 AliTRDCalibraExbAltFit.cxx:125 AliTRDCalibraExbAltFit.cxx:126 AliTRDCalibraExbAltFit.cxx:127 AliTRDCalibraExbAltFit.cxx:128 AliTRDCalibraExbAltFit.cxx:129 AliTRDCalibraExbAltFit.cxx:130 AliTRDCalibraExbAltFit.cxx:131 AliTRDCalibraExbAltFit.cxx:132 AliTRDCalibraExbAltFit.cxx:133 AliTRDCalibraExbAltFit.cxx:134 AliTRDCalibraExbAltFit.cxx:135 AliTRDCalibraExbAltFit.cxx:136 AliTRDCalibraExbAltFit.cxx:137 AliTRDCalibraExbAltFit.cxx:138 AliTRDCalibraExbAltFit.cxx:139 AliTRDCalibraExbAltFit.cxx:140 AliTRDCalibraExbAltFit.cxx:141 AliTRDCalibraExbAltFit.cxx:142 AliTRDCalibraExbAltFit.cxx:143 AliTRDCalibraExbAltFit.cxx:144 AliTRDCalibraExbAltFit.cxx:145 AliTRDCalibraExbAltFit.cxx:146 AliTRDCalibraExbAltFit.cxx:147 AliTRDCalibraExbAltFit.cxx:148 AliTRDCalibraExbAltFit.cxx:149 AliTRDCalibraExbAltFit.cxx:150 AliTRDCalibraExbAltFit.cxx:151 AliTRDCalibraExbAltFit.cxx:152 AliTRDCalibraExbAltFit.cxx:153 AliTRDCalibraExbAltFit.cxx:154 AliTRDCalibraExbAltFit.cxx:155 AliTRDCalibraExbAltFit.cxx:156 AliTRDCalibraExbAltFit.cxx:157 AliTRDCalibraExbAltFit.cxx:158 AliTRDCalibraExbAltFit.cxx:159 AliTRDCalibraExbAltFit.cxx:160 AliTRDCalibraExbAltFit.cxx:161 AliTRDCalibraExbAltFit.cxx:162 AliTRDCalibraExbAltFit.cxx:163 AliTRDCalibraExbAltFit.cxx:164 AliTRDCalibraExbAltFit.cxx:165 AliTRDCalibraExbAltFit.cxx:166 AliTRDCalibraExbAltFit.cxx:167 AliTRDCalibraExbAltFit.cxx:168 AliTRDCalibraExbAltFit.cxx:169 AliTRDCalibraExbAltFit.cxx:170 AliTRDCalibraExbAltFit.cxx:171 AliTRDCalibraExbAltFit.cxx:172 AliTRDCalibraExbAltFit.cxx:173 AliTRDCalibraExbAltFit.cxx:174 AliTRDCalibraExbAltFit.cxx:175 AliTRDCalibraExbAltFit.cxx:176 AliTRDCalibraExbAltFit.cxx:177 AliTRDCalibraExbAltFit.cxx:178 AliTRDCalibraExbAltFit.cxx:179 AliTRDCalibraExbAltFit.cxx:180 AliTRDCalibraExbAltFit.cxx:181 AliTRDCalibraExbAltFit.cxx:182 AliTRDCalibraExbAltFit.cxx:183 AliTRDCalibraExbAltFit.cxx:184 AliTRDCalibraExbAltFit.cxx:185 AliTRDCalibraExbAltFit.cxx:186 AliTRDCalibraExbAltFit.cxx:187 AliTRDCalibraExbAltFit.cxx:188 AliTRDCalibraExbAltFit.cxx:189 AliTRDCalibraExbAltFit.cxx:190 AliTRDCalibraExbAltFit.cxx:191 AliTRDCalibraExbAltFit.cxx:192 AliTRDCalibraExbAltFit.cxx:193 AliTRDCalibraExbAltFit.cxx:194 AliTRDCalibraExbAltFit.cxx:195 AliTRDCalibraExbAltFit.cxx:196 AliTRDCalibraExbAltFit.cxx:197 AliTRDCalibraExbAltFit.cxx:198 AliTRDCalibraExbAltFit.cxx:199 AliTRDCalibraExbAltFit.cxx:200 AliTRDCalibraExbAltFit.cxx:201 AliTRDCalibraExbAltFit.cxx:202 AliTRDCalibraExbAltFit.cxx:203 AliTRDCalibraExbAltFit.cxx:204 AliTRDCalibraExbAltFit.cxx:205 AliTRDCalibraExbAltFit.cxx:206 AliTRDCalibraExbAltFit.cxx:207 AliTRDCalibraExbAltFit.cxx:208 AliTRDCalibraExbAltFit.cxx:209 AliTRDCalibraExbAltFit.cxx:210 AliTRDCalibraExbAltFit.cxx:211 AliTRDCalibraExbAltFit.cxx:212 AliTRDCalibraExbAltFit.cxx:213 AliTRDCalibraExbAltFit.cxx:214 AliTRDCalibraExbAltFit.cxx:215 AliTRDCalibraExbAltFit.cxx:216 AliTRDCalibraExbAltFit.cxx:217 AliTRDCalibraExbAltFit.cxx:218 AliTRDCalibraExbAltFit.cxx:219 AliTRDCalibraExbAltFit.cxx:220 AliTRDCalibraExbAltFit.cxx:221 AliTRDCalibraExbAltFit.cxx:222 AliTRDCalibraExbAltFit.cxx:223 AliTRDCalibraExbAltFit.cxx:224 AliTRDCalibraExbAltFit.cxx:225 AliTRDCalibraExbAltFit.cxx:226 AliTRDCalibraExbAltFit.cxx:227 AliTRDCalibraExbAltFit.cxx:228 AliTRDCalibraExbAltFit.cxx:229 AliTRDCalibraExbAltFit.cxx:230 AliTRDCalibraExbAltFit.cxx:231 AliTRDCalibraExbAltFit.cxx:232 AliTRDCalibraExbAltFit.cxx:233 AliTRDCalibraExbAltFit.cxx:234 AliTRDCalibraExbAltFit.cxx:235 AliTRDCalibraExbAltFit.cxx:236 AliTRDCalibraExbAltFit.cxx:237 AliTRDCalibraExbAltFit.cxx:238 AliTRDCalibraExbAltFit.cxx:239 AliTRDCalibraExbAltFit.cxx:240 AliTRDCalibraExbAltFit.cxx:241 AliTRDCalibraExbAltFit.cxx:242 AliTRDCalibraExbAltFit.cxx:243 AliTRDCalibraExbAltFit.cxx:244 AliTRDCalibraExbAltFit.cxx:245 AliTRDCalibraExbAltFit.cxx:246 AliTRDCalibraExbAltFit.cxx:247 AliTRDCalibraExbAltFit.cxx:248 AliTRDCalibraExbAltFit.cxx:249 AliTRDCalibraExbAltFit.cxx:250 AliTRDCalibraExbAltFit.cxx:251 AliTRDCalibraExbAltFit.cxx:252 AliTRDCalibraExbAltFit.cxx:253 AliTRDCalibraExbAltFit.cxx:254 AliTRDCalibraExbAltFit.cxx:255 AliTRDCalibraExbAltFit.cxx:256 AliTRDCalibraExbAltFit.cxx:257 AliTRDCalibraExbAltFit.cxx:258 AliTRDCalibraExbAltFit.cxx:259 AliTRDCalibraExbAltFit.cxx:260 AliTRDCalibraExbAltFit.cxx:261 AliTRDCalibraExbAltFit.cxx:262 AliTRDCalibraExbAltFit.cxx:263 AliTRDCalibraExbAltFit.cxx:264 AliTRDCalibraExbAltFit.cxx:265 AliTRDCalibraExbAltFit.cxx:266 AliTRDCalibraExbAltFit.cxx:267 AliTRDCalibraExbAltFit.cxx:268 AliTRDCalibraExbAltFit.cxx:269 AliTRDCalibraExbAltFit.cxx:270 AliTRDCalibraExbAltFit.cxx:271 AliTRDCalibraExbAltFit.cxx:272 AliTRDCalibraExbAltFit.cxx:273 AliTRDCalibraExbAltFit.cxx:274 AliTRDCalibraExbAltFit.cxx:275 AliTRDCalibraExbAltFit.cxx:276 AliTRDCalibraExbAltFit.cxx:277 AliTRDCalibraExbAltFit.cxx:278 AliTRDCalibraExbAltFit.cxx:279 AliTRDCalibraExbAltFit.cxx:280 AliTRDCalibraExbAltFit.cxx:281 AliTRDCalibraExbAltFit.cxx:282 AliTRDCalibraExbAltFit.cxx:283 AliTRDCalibraExbAltFit.cxx:284 AliTRDCalibraExbAltFit.cxx:285 AliTRDCalibraExbAltFit.cxx:286 AliTRDCalibraExbAltFit.cxx:287 AliTRDCalibraExbAltFit.cxx:288 AliTRDCalibraExbAltFit.cxx:289 AliTRDCalibraExbAltFit.cxx:290 AliTRDCalibraExbAltFit.cxx:291 AliTRDCalibraExbAltFit.cxx:292 AliTRDCalibraExbAltFit.cxx:293 AliTRDCalibraExbAltFit.cxx:294 AliTRDCalibraExbAltFit.cxx:295 AliTRDCalibraExbAltFit.cxx:296 AliTRDCalibraExbAltFit.cxx:297 AliTRDCalibraExbAltFit.cxx:298 AliTRDCalibraExbAltFit.cxx:299 AliTRDCalibraExbAltFit.cxx:300 AliTRDCalibraExbAltFit.cxx:301 AliTRDCalibraExbAltFit.cxx:302 AliTRDCalibraExbAltFit.cxx:303 AliTRDCalibraExbAltFit.cxx:304 AliTRDCalibraExbAltFit.cxx:305 AliTRDCalibraExbAltFit.cxx:306 AliTRDCalibraExbAltFit.cxx:307 AliTRDCalibraExbAltFit.cxx:308 AliTRDCalibraExbAltFit.cxx:309 AliTRDCalibraExbAltFit.cxx:310 AliTRDCalibraExbAltFit.cxx:311 AliTRDCalibraExbAltFit.cxx:312 AliTRDCalibraExbAltFit.cxx:313 AliTRDCalibraExbAltFit.cxx:314 AliTRDCalibraExbAltFit.cxx:315 AliTRDCalibraExbAltFit.cxx:316 AliTRDCalibraExbAltFit.cxx:317 AliTRDCalibraExbAltFit.cxx:318 AliTRDCalibraExbAltFit.cxx:319 AliTRDCalibraExbAltFit.cxx:320 AliTRDCalibraExbAltFit.cxx:321 AliTRDCalibraExbAltFit.cxx:322 AliTRDCalibraExbAltFit.cxx:323 AliTRDCalibraExbAltFit.cxx:324 AliTRDCalibraExbAltFit.cxx:325 AliTRDCalibraExbAltFit.cxx:326 AliTRDCalibraExbAltFit.cxx:327 AliTRDCalibraExbAltFit.cxx:328 AliTRDCalibraExbAltFit.cxx:329 AliTRDCalibraExbAltFit.cxx:330 AliTRDCalibraExbAltFit.cxx:331 AliTRDCalibraExbAltFit.cxx:332 AliTRDCalibraExbAltFit.cxx:333 AliTRDCalibraExbAltFit.cxx:334 AliTRDCalibraExbAltFit.cxx:335 AliTRDCalibraExbAltFit.cxx:336 AliTRDCalibraExbAltFit.cxx:337 AliTRDCalibraExbAltFit.cxx:338 AliTRDCalibraExbAltFit.cxx:339 AliTRDCalibraExbAltFit.cxx:340 AliTRDCalibraExbAltFit.cxx:341 AliTRDCalibraExbAltFit.cxx:342 AliTRDCalibraExbAltFit.cxx:343 AliTRDCalibraExbAltFit.cxx:344 AliTRDCalibraExbAltFit.cxx:345 AliTRDCalibraExbAltFit.cxx:346 AliTRDCalibraExbAltFit.cxx:347 AliTRDCalibraExbAltFit.cxx:348 AliTRDCalibraExbAltFit.cxx:349 AliTRDCalibraExbAltFit.cxx:350 AliTRDCalibraExbAltFit.cxx:351 AliTRDCalibraExbAltFit.cxx:352 AliTRDCalibraExbAltFit.cxx:353 AliTRDCalibraExbAltFit.cxx:354 AliTRDCalibraExbAltFit.cxx:355 AliTRDCalibraExbAltFit.cxx:356 AliTRDCalibraExbAltFit.cxx:357 AliTRDCalibraExbAltFit.cxx:358 AliTRDCalibraExbAltFit.cxx:359 AliTRDCalibraExbAltFit.cxx:360 AliTRDCalibraExbAltFit.cxx:361 AliTRDCalibraExbAltFit.cxx:362 AliTRDCalibraExbAltFit.cxx:363 AliTRDCalibraExbAltFit.cxx:364 AliTRDCalibraExbAltFit.cxx:365 AliTRDCalibraExbAltFit.cxx:366 AliTRDCalibraExbAltFit.cxx:367 AliTRDCalibraExbAltFit.cxx:368 AliTRDCalibraExbAltFit.cxx:369 AliTRDCalibraExbAltFit.cxx:370 AliTRDCalibraExbAltFit.cxx:371 AliTRDCalibraExbAltFit.cxx:372 AliTRDCalibraExbAltFit.cxx:373 AliTRDCalibraExbAltFit.cxx:374 AliTRDCalibraExbAltFit.cxx:375 AliTRDCalibraExbAltFit.cxx:376 AliTRDCalibraExbAltFit.cxx:377 AliTRDCalibraExbAltFit.cxx:378 AliTRDCalibraExbAltFit.cxx:379 AliTRDCalibraExbAltFit.cxx:380 AliTRDCalibraExbAltFit.cxx:381 AliTRDCalibraExbAltFit.cxx:382 AliTRDCalibraExbAltFit.cxx:383 AliTRDCalibraExbAltFit.cxx:384 AliTRDCalibraExbAltFit.cxx:385 AliTRDCalibraExbAltFit.cxx:386 AliTRDCalibraExbAltFit.cxx:387 AliTRDCalibraExbAltFit.cxx:388 AliTRDCalibraExbAltFit.cxx:389 AliTRDCalibraExbAltFit.cxx:390 AliTRDCalibraExbAltFit.cxx:391 AliTRDCalibraExbAltFit.cxx:392 AliTRDCalibraExbAltFit.cxx:393 AliTRDCalibraExbAltFit.cxx:394 AliTRDCalibraExbAltFit.cxx:395 AliTRDCalibraExbAltFit.cxx:396 AliTRDCalibraExbAltFit.cxx:397 AliTRDCalibraExbAltFit.cxx:398 AliTRDCalibraExbAltFit.cxx:399 AliTRDCalibraExbAltFit.cxx:400 AliTRDCalibraExbAltFit.cxx:401 AliTRDCalibraExbAltFit.cxx:402 AliTRDCalibraExbAltFit.cxx:403 AliTRDCalibraExbAltFit.cxx:404 AliTRDCalibraExbAltFit.cxx:405 AliTRDCalibraExbAltFit.cxx:406 AliTRDCalibraExbAltFit.cxx:407 AliTRDCalibraExbAltFit.cxx:408 AliTRDCalibraExbAltFit.cxx:409 AliTRDCalibraExbAltFit.cxx:410 AliTRDCalibraExbAltFit.cxx:411 AliTRDCalibraExbAltFit.cxx:412 AliTRDCalibraExbAltFit.cxx:413 AliTRDCalibraExbAltFit.cxx:414 AliTRDCalibraExbAltFit.cxx:415 AliTRDCalibraExbAltFit.cxx:416 AliTRDCalibraExbAltFit.cxx:417 AliTRDCalibraExbAltFit.cxx:418 AliTRDCalibraExbAltFit.cxx:419 AliTRDCalibraExbAltFit.cxx:420 AliTRDCalibraExbAltFit.cxx:421 AliTRDCalibraExbAltFit.cxx:422 AliTRDCalibraExbAltFit.cxx:423 AliTRDCalibraExbAltFit.cxx:424 AliTRDCalibraExbAltFit.cxx:425 AliTRDCalibraExbAltFit.cxx:426 AliTRDCalibraExbAltFit.cxx:427 AliTRDCalibraExbAltFit.cxx:428 AliTRDCalibraExbAltFit.cxx:429 AliTRDCalibraExbAltFit.cxx:430 AliTRDCalibraExbAltFit.cxx:431 AliTRDCalibraExbAltFit.cxx:432 AliTRDCalibraExbAltFit.cxx:433 AliTRDCalibraExbAltFit.cxx:434 AliTRDCalibraExbAltFit.cxx:435 AliTRDCalibraExbAltFit.cxx:436 AliTRDCalibraExbAltFit.cxx:437 AliTRDCalibraExbAltFit.cxx:438 AliTRDCalibraExbAltFit.cxx:439 AliTRDCalibraExbAltFit.cxx:440 AliTRDCalibraExbAltFit.cxx:441 AliTRDCalibraExbAltFit.cxx:442 AliTRDCalibraExbAltFit.cxx:443 AliTRDCalibraExbAltFit.cxx:444 AliTRDCalibraExbAltFit.cxx:445 AliTRDCalibraExbAltFit.cxx:446 AliTRDCalibraExbAltFit.cxx:447 AliTRDCalibraExbAltFit.cxx:448 AliTRDCalibraExbAltFit.cxx:449 AliTRDCalibraExbAltFit.cxx:450 AliTRDCalibraExbAltFit.cxx:451 AliTRDCalibraExbAltFit.cxx:452 AliTRDCalibraExbAltFit.cxx:453 AliTRDCalibraExbAltFit.cxx:454 AliTRDCalibraExbAltFit.cxx:455 AliTRDCalibraExbAltFit.cxx:456 AliTRDCalibraExbAltFit.cxx:457 AliTRDCalibraExbAltFit.cxx:458 AliTRDCalibraExbAltFit.cxx:459 AliTRDCalibraExbAltFit.cxx:460 AliTRDCalibraExbAltFit.cxx:461 AliTRDCalibraExbAltFit.cxx:462 AliTRDCalibraExbAltFit.cxx:463 AliTRDCalibraExbAltFit.cxx:464 AliTRDCalibraExbAltFit.cxx:465 AliTRDCalibraExbAltFit.cxx:466 AliTRDCalibraExbAltFit.cxx:467 AliTRDCalibraExbAltFit.cxx:468 AliTRDCalibraExbAltFit.cxx:469 AliTRDCalibraExbAltFit.cxx:470 AliTRDCalibraExbAltFit.cxx:471 AliTRDCalibraExbAltFit.cxx:472 AliTRDCalibraExbAltFit.cxx:473 AliTRDCalibraExbAltFit.cxx:474 AliTRDCalibraExbAltFit.cxx:475 AliTRDCalibraExbAltFit.cxx:476 AliTRDCalibraExbAltFit.cxx:477 AliTRDCalibraExbAltFit.cxx:478 AliTRDCalibraExbAltFit.cxx:479 AliTRDCalibraExbAltFit.cxx:480 AliTRDCalibraExbAltFit.cxx:481 AliTRDCalibraExbAltFit.cxx:482 AliTRDCalibraExbAltFit.cxx:483 AliTRDCalibraExbAltFit.cxx:484 AliTRDCalibraExbAltFit.cxx:485 AliTRDCalibraExbAltFit.cxx:486 AliTRDCalibraExbAltFit.cxx:487 AliTRDCalibraExbAltFit.cxx:488 AliTRDCalibraExbAltFit.cxx:489 AliTRDCalibraExbAltFit.cxx:490 AliTRDCalibraExbAltFit.cxx:491 AliTRDCalibraExbAltFit.cxx:492 AliTRDCalibraExbAltFit.cxx:493 AliTRDCalibraExbAltFit.cxx:494 AliTRDCalibraExbAltFit.cxx:495 AliTRDCalibraExbAltFit.cxx:496 AliTRDCalibraExbAltFit.cxx:497 AliTRDCalibraExbAltFit.cxx:498 AliTRDCalibraExbAltFit.cxx:499 AliTRDCalibraExbAltFit.cxx:500 AliTRDCalibraExbAltFit.cxx:501 AliTRDCalibraExbAltFit.cxx:502 AliTRDCalibraExbAltFit.cxx:503 AliTRDCalibraExbAltFit.cxx:504 AliTRDCalibraExbAltFit.cxx:505 AliTRDCalibraExbAltFit.cxx:506 AliTRDCalibraExbAltFit.cxx:507 AliTRDCalibraExbAltFit.cxx:508