// Changes by M.Knichel 15/10/2010
//------------------------------------------------------------------------------
-/*
+/*AliPerformanceDEdx.cxx
// after running comparison task, read the file, and get component
gROOT->LoadMacro("$ALICE_ROOT/PWGPP/Macros/LoadMyLibs.C");
- LoadMyLibs();
+ LoadMyLibs();cd /hera/alice/atarant/train/trunk/atarant_spectra/qa/
+
TFile f("Output.root");
//AliPerformanceDEdx * compObj = (AliPerformanceDEdx*)f.Get("AliPerformanceDEdx");
AliPerformanceDEdx * compObj = (AliPerformanceDEdx*)coutput->FindObject("AliPerformanceDEdx");
Bool_t AliPerformanceDEdx::fgUseMergeTHnSparse = kFALSE;
//_____________________________________________________________________________
-AliPerformanceDEdx::AliPerformanceDEdx():
- AliPerformanceObject("AliPerformanceDEdx"),
-
- // dEdx
- fDeDxHisto(0),
- fFolderObj(0),
-
- // Cuts
- fCutsRC(0),
- fCutsMC(0),
-
- // histogram folder
- fAnalysisFolder(0)
-{
- // default constructor
- Init();
-}
-
-//_____________________________________________________________________________
-AliPerformanceDEdx::AliPerformanceDEdx(const Char_t* name="AliPerformanceDEdx", const Char_t* title="AliPerformanceDEdx",Int_t analysisMode=0, Bool_t hptGenerator=kFALSE):
- AliPerformanceObject(name,title),
+AliPerformanceDEdx::AliPerformanceDEdx(const Char_t* name, const Char_t* title, Int_t analysisMode, Bool_t hptGenerator):
+ AliPerformanceObject(name,title),
// dEdx
fDeDxHisto(0),
Double_t snp = innerParam->GetSnp();
Double_t tgl = innerParam->GetTgl();
+ //fill thnspars here coud add oroc mdedium long..............Atti
+ //you should select which pad leng here
+ // http://svnweb.cern.ch/world/wsvn/AliRoot/trunk/STEER/STEERBase/AliTPCdEdxInfo.h
+ // fTPCsignalRegion[4];
+
//Double_t vDeDxHisto[10] = {dedx,phi,y,z,snp,tgl,ncls,p,TPCSignalN,nCrossedRows};
- Double_t vDeDxHisto[10] = {dedx,phi,y,z,snp,tgl,ncls,p,TPCSignalN,nClsF};
+ Double_t vDeDxHisto[10] = {dedx,phi,y,z,snp,tgl,Double_t(ncls),p,Double_t(TPCSignalN),nClsF};
fDeDxHisto->Fill(vDeDxHisto);
if(!stack) return;
//_____________________________________________________________________________
void AliPerformanceDEdx::Analyse()
{
+
// Analyze comparison information and store output histograms
// in the folder "folderDEdx"
//
+ //Atti h_tpc_dedx_mips_0
+ //fai fit con range p(.32,.38) and dEdx(65- 120 or 100) e ripeti cosa fatta per pion e fai trending della media e res, poio la loro differenza
+ //fai dedx vs lamda ma for e e pion separati
+ //
TH1::AddDirectory(kFALSE);
TH1::SetDefaultSumw2(kFALSE);
TH1F *h1D=0;
fDeDxHisto->GetAxis(4)->SetRangeUser(-0.4, 0.399);
fDeDxHisto->GetAxis(5)->SetRangeUser(-0.9,0.89);
fDeDxHisto->GetAxis(6)->SetRangeUser(60.,160.);
- fDeDxHisto->GetAxis(7)->SetRangeUser(0.4,0.499);
+ fDeDxHisto->GetAxis(7)->SetRangeUser(0.4,0.499); //p
fDeDxHisto->GetAxis(8)->SetRangeUser(60.,160.);
-
+
selString = "mipsres";
AddProjection(aFolderObj, "dedx", fDeDxHisto, 0, &selString);
aFolderObj->Add(h1D);
}
-
// select MIPs (version from AliTPCPerfomanceSummary)
fDeDxHisto->GetAxis(0)->SetRangeUser(35,60);
fDeDxHisto->GetAxis(2)->SetRangeUser(-20,19.999);
fDeDxHisto->GetAxis(8)->SetRangeUser(80,160);
fDeDxHisto->GetAxis(9)->SetRangeUser(0.5,1.);
-
-
selString = "mips";
AddProjection(aFolderObj, "dedx", fDeDxHisto, 0, &selString);
AddProjection(aFolderObj, "dedx", fDeDxHisto, 0, 5, &selString);
AddProjection(aFolderObj, "dedx", fDeDxHisto, 0, 1, &selString);
+ //////////////////////////////////////// atti new start
+ //
+ // select (version from AliTPCPerfomanceSummary) electrons
+ fDeDxHisto->GetAxis(0)->SetRangeUser(70,100); //dedx for electrons
+ fDeDxHisto->GetAxis(2)->SetRangeUser(-20,19.999);
+ fDeDxHisto->GetAxis(3)->SetRangeUser(-250,249.999);
+ fDeDxHisto->GetAxis(4)->SetRangeUser(-1, 0.99);
+ fDeDxHisto->GetAxis(5)->SetRangeUser(-1,0.99);
+ fDeDxHisto->GetAxis(6)->SetRangeUser(80,160);
+ fDeDxHisto->GetAxis(7)->SetRangeUser(0.32,0.38); //momenta for electrons
+ fDeDxHisto->GetAxis(8)->SetRangeUser(80,160);
+ fDeDxHisto->GetAxis(9)->SetRangeUser(0.5,1.);
+
+ selString = "mipsele";
+ AddProjection(aFolderObj, "dedx", fDeDxHisto, 0, &selString);
+ //////////////////////////////////////// atti new stop
+
//restore cuts
for (Int_t i=0; i<fDeDxHisto->GetNdimensions(); i++) {
fDeDxHisto->GetAxis(i)->SetRange(1,fDeDxHisto->GetAxis(i)->GetNbins());