X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TPC%2FTestAnalisys.C;h=dab0215b5851feb2b9a8b0c3982ae42e6883bbaf;hb=c0701530dc379998a19a32f9ae6141a4bec5fde2;hp=e6015f41065bad8cb3a8c7ca6b78883fb57ce899;hpb=0e61e4709f8c090407e6f2ba61ab31a20fe9f377;p=u%2Fmrichter%2FAliRoot.git diff --git a/TPC/TestAnalisys.C b/TPC/TestAnalisys.C index e6015f41065..dab0215b585 100644 --- a/TPC/TestAnalisys.C +++ b/TPC/TestAnalisys.C @@ -28,7 +28,7 @@ #include "AliTrackReference.h" #include "AliTPCParam.h" #include "AliDetector.h" -#include "AliStack.h" +#include "AliStack.h" #include "AliGenInfo.h" @@ -264,9 +264,9 @@ void AddChains(Int_t run){ runDesc+=run; // TPC tracks // - sprintf(strcl,"ls *%d*/TPCtracks.root > /tmp/files.txt", run); + sprintf(strcl,"ls *%d*/TPCtracks.root > files.txt", run); gSystem->Exec(strcl); - in0.open("/tmp/files.txt"); + in0.open("files.txt"); for (;in0>>sfile;){ if (sfile.Length()==0) break; printf("%s\n",sfile.Data()); @@ -279,9 +279,9 @@ void AddChains(Int_t run){ } // // Fitted signals - sprintf(strcl,"ls *%d*/FitSignal.root > /tmp/files.txt", run); + sprintf(strcl,"ls *%d*/FitSignal.root > files.txt", run); gSystem->Exec(strcl); - in1.open("/tmp/files.txt"); + in1.open("files.txt"); for (;in1>>sfile;){ if (sfile.Length()==0) break; printf("%s\n",sfile.Data()); @@ -294,9 +294,9 @@ void AddChains(Int_t run){ } // // Fitted pedestal - sprintf(strcl,"ls *%d*/TPCsignal.root > /tmp/files.txt", run); + sprintf(strcl,"ls *%d*/TPCsignal.root > files.txt", run); gSystem->Exec(strcl); - in2.open("/tmp/files.txt"); + in2.open("files.txt"); for (;in2>>sfile;){ if (sfile.Length()==0) break; printf("%s\n",sfile.Data()); @@ -310,9 +310,9 @@ void AddChains(Int_t run){ } // // Random signals - sprintf(strcl,"ls *%d*/TPCsignal.root > /tmp/files.txt", run); + sprintf(strcl,"ls *%d*/TPCsignal.root > files.txt", run); gSystem->Exec(strcl); - in4.open("/tmp/files.txt"); + in4.open("files.txt"); for (;in4>>sfile;){ if (sfile.Length()==0) break; printf("%s\n",sfile.Data()); @@ -328,9 +328,9 @@ void AddChains(Int_t run){ // Rec points trees // printf("\n IMPORT REC points"); - sprintf(strcl,"ls *%d*/*RecPoints* > /tmp/files.txt", run); + sprintf(strcl,"ls *%d*/*RecPoints* > files.txt", run); gSystem->Exec(strcl); - in3.open("/tmp/files.txt"); + in3.open("files.txt"); for (;in3>>sfile;){ if (sfile.Length()==0) break; printf("%s\n",sfile.Data()); @@ -350,7 +350,7 @@ void Select(){ // // base cut on the tracks // - comp.fTree->Draw(">>listTracks","Track.fN>30&&abs(Track.fP4)<0.002"); + comp.fTree->Draw(">>listTracks","Etrack.fTPCncls>30&&abs(Etrack.fIp.fP[4])<1"); comp.fTree->SetEventList(listTracks); // compF.fTree->Draw(">>listFitS","p2>0&&p2<5&&p1<900&&p0<10000&&p4<1&&p4>0&&p5Draw(">>listTracks","Track.fN>20&&abs(Track.fP4)<0.001&&abs(Etrack.fP[3])<0.01"); + comp.fTree->Draw(">>listTracks","Etrack.fTPCncls>20&&abs(Etrack.fIp.fP[4])<1&&abs(Etrack.fIp.fP[3])<0.01"); comp.fTree->SetEventList(listTracks); // compF.fTree->Draw(">>listFitS","p2>0&&p2<5&&p1<900&&p0<10000&&p4<1&&p4>0&&p5SetAlias("lz0","abs(Etrack.fP[1]-20)<5"); - comp.fTree->SetAlias("lz1","abs(Etrack.fP[1]-70)<20"); - comp.fTree->SetAlias("lz2","abs(Etrack.fP[1]-150)<20"); - comp.fTree->SetAlias("lz3","abs(Etrack.fP[1]-210)<20"); + comp.fTree->SetAlias("lz0","abs(Etrack.fIp.fP[1]-20)<5"); + comp.fTree->SetAlias("lz1","abs(Etrack.fIp.fP[1]-70)<20"); + comp.fTree->SetAlias("lz2","abs(Etrack.fIp.fP[1]-150)<20"); + comp.fTree->SetAlias("lz3","abs(Etrack.fIp.fP[1]-210)<20"); } @@ -387,10 +387,10 @@ void PRFYZ(TCut cut0, TCut cut1, char * description){ TF1 * f1 = new TF1("fdiff","sqrt([0]*[0]+(250-x)*[1]*[1])"); f1->SetParameter(1,0.2); f1->SetParameter(0,0.2); - comp.DrawXY("Cl.fZ","sqrt(Cl.fSigmaY2)","abs(Track.fTrackPoints.GetAngleY())<0.05","Track.fTrackPoints.fTX>0"+cut0,5,10,240,-0,1); + comp.DrawXY("abs(Cl.fZ)","sqrt(Cl.fSigmaY2)","abs(Track.fTrackPoints.GetAngleY())<0.05","Track.fTrackPoints.fTX>0"+cut0,5,10,240,-0,1); TH1F * prfInnerY = (TH1F*)comp.fMean->Clone(); - comp.DrawXY("Cl.fZ","sqrt(Cl.fSigmaY2)","abs(Track.fTrackPoints.GetAngleY())<0.05","Track.fTrackPoints.fTX>0"+cut1,5,10,240,-0,1); + comp.DrawXY("abs(Cl.fZ)","sqrt(Cl.fSigmaY2)","abs(Track.fTrackPoints.GetAngleY())<0.05","Track.fTrackPoints.fTX>0"+cut1,5,10,240,-0,1); TH1F * prfOuterY = (TH1F*)comp.fMean->Clone(); // // @@ -456,10 +456,10 @@ void ResYZ(TCut cut0, TCut cut1, char * description){ TF1 * f1 = new TF1("fdiff","sqrt([0]*[0]+(250-x)*[1]*[1])"); f1->SetParameter(1,0.2); f1->SetParameter(0,0.2); - comp.DrawXY("Cl.fZ","Track.fTrackPoints.GetY()-Cl.GetY()","abs(Track.fTrackPoints.GetAngleY())<0.05","Track.fTrackPoints.fTX>0"+cut0,5,10,240,-0.5,0.5); + comp.DrawXY("abs(Cl.fZ)","Track.fTrackPoints.GetY()-Cl.GetY()","abs(Track.fTrackPoints.GetAngleY())<0.05","Track.fTrackPoints.fTX>0"+cut0,5,10,240,-0.5,0.5); TH1F * prfInnerY = (TH1F*)comp.fRes->Clone(); - comp.DrawXY("Cl.fZ","Track.fTrackPoints.GetY()-Cl.GetY()","abs(Track.fTrackPoints.GetAngleY())<0.05","Track.fTrackPoints.fTX>0"+cut1,5,10,240,-0.5,0.5); + comp.DrawXY("abs(Cl.fZ)","Track.fTrackPoints.GetY()-Cl.GetY()","abs(Track.fTrackPoints.GetAngleY())<0.05","Track.fTrackPoints.fTX>0"+cut1,5,10,240,-0.5,0.5); TH1F * prfOuterY = (TH1F*)comp.fRes->Clone(); // // @@ -502,7 +502,7 @@ void SysZX(TCut cut0, char * description){ // // TProfile * profA = new TProfile("profZ","profZ",70,89,250); - comp.fTree->Draw("Cl.fZ-Track.fTrackPoints.GetZ():Track.fTrackPoints.GetX()>>profZ","abs(Cl.fZ-Track.fTrackPoints.GetZ())<1&&Track.fTrackPoints.fTX>10"+cut0,"prof"); + comp.fTree->Draw("abs(Cl.fZ)-abs(Track.fTrackPoints.GetZ()):Track.fTrackPoints.GetX()>>profZ","abs(abs(Cl.fZ)-abs(Track.fTrackPoints.GetZ()))<1&&Track.fTrackPoints.fTX>10"+cut0,"prof"); profA->SetXTitle("Local X (cm)"); profA->SetYTitle("Mean #Delta Z (cm)"); TLegend *legend = new TLegend(0.55,0.25,0.85,0.30, description); @@ -516,7 +516,7 @@ TProfile * ProfileMaxRow(TCut cut0, char *name, Int_t max){ TProfile *profA = new TProfile(name,name,max,0,max-1); char expr[100]; sprintf(expr,"Cl.fMax:Cl.fRow>>%s",name); - comp.fTree->Draw(expr,"Cl.fZ>0&&Cl.fMax<500"+cut0,"prof"); + comp.fTree->Draw(expr,"abs(Cl.fZ)>0&&Cl.fMax<500"+cut0,"prof"); profA->SetXTitle("Pad Row"); profA->SetYTitle("Amplitude at maxima (ADC)"); return profA; @@ -529,10 +529,10 @@ TProfile * ProfileMaxPhi(TCut cut0, char *name, Int_t max){ TProfile *profA = new TProfile(name,name,max,-0.14,0.14); char expr[100]; sprintf(expr,"Cl.fMax:Cl.fY/Cl.fX>>%s",name); - comp.fTree->Draw(expr,"Cl.fZ>0&&Cl.fMax<500"+cut0,"prof"); + comp.fTree->Draw(expr,"abs(Cl.fZ)>0&&Cl.fMax<500"+cut0,"prof"); profA->SetXTitle("Local #phi(rad)"); profA->SetYTitle("Amplitude at maxima (ADC)"); - return profA; + return profA; } TProfile * ProfileQRow(TCut cut0, char *name, Int_t max){ @@ -542,7 +542,7 @@ TProfile * ProfileQRow(TCut cut0, char *name, Int_t max){ TProfile *profA = new TProfile(name,name,max,0,max-1); char expr[100]; sprintf(expr,"Cl.fQ:Cl.fRow>>%s",name); - comp.fTree->Draw(expr,"Cl.fZ>0&&Cl.fMax<500"+cut0,"prof"); + comp.fTree->Draw(expr,"abs(Cl.fZ)>0&&Cl.fMax<500"+cut0,"prof"); profA->SetXTitle("Pad Row"); profA->SetYTitle("Total charge(ADC)"); return profA; @@ -555,7 +555,7 @@ TProfile * ProfileQPhi(TCut cut0, char *name, Int_t max){ TProfile *profA = new TProfile(name,name,max,-0.14,0.14); char expr[100]; sprintf(expr,"Cl.fQ:Cl.fY/Cl.fX>>%s",name); - comp.fTree->Draw(expr,"Cl.fZ>0&&Cl.fMax<500"+cut0,"prof"); + comp.fTree->Draw(expr,"abs(Cl.fZ)>0&&Cl.fMax<500"+cut0,"prof"); profA->SetXTitle("Local #phi(rad)"); profA->SetYTitle("Total charge (ADC)"); return profA; @@ -569,8 +569,8 @@ TProfile * ProfileQZ(TCut cut0, char *name, Int_t max){ TF1 * f1 = new TF1("f1","[0]*exp(-[1]*(250-x))"); TProfile *profA = new TProfile(name,name,max,0,250); char expr[100]; - sprintf(expr,"Cl.fQ:Cl.fZ>>%s",name); - comp.fTree->Draw(expr,"Cl.fZ>0&&Cl.fMax<500"+cut0,"prof"); + sprintf(expr,"Cl.fQ:abs(Cl.fZ)>>%s",name); + comp.fTree->Draw(expr,"abs(Cl.fZ)>0&&Cl.fMax<500"+cut0,"prof"); profA->SetXTitle("Z position (cm)"); profA->SetYTitle("Amplitude (ADC)"); char chc[100]; @@ -592,8 +592,8 @@ TProfile * ProfileMaxZ(TCut cut0, char *name, Int_t max){ TF1 * f1 = new TF1("f1","[0]+[1]*[0]*(250-x)"); TProfile *profA = new TProfile(name,name,max,0,250); char expr[100]; - sprintf(expr,"Cl.fMax:Cl.fZ>>%s",name); - comp.fTree->Draw(expr,"Cl.fZ>0&&Cl.fMax<500"+cut0,"prof"); + sprintf(expr,"Cl.fMax:abs(Cl.fZ)>>%s",name); + comp.fTree->Draw(expr,"abs(Cl.fZ)>0&&Cl.fMax<500"+cut0,"prof"); profA->SetXTitle("Z position (cm)"); profA->SetYTitle("Amplitude at maxima (ADC)"); char chc[100];