4 0. Load neccessary libraries
6 gSystem->Load("libANALYSIS");
7 gSystem->Load("libANALYSISalice");
8 gSystem->Load("libTPCcalib");
9 gSystem->Load("libXrdClient.so");
10 gSystem->Load("libNetx.so");
11 TGrid::Connect("alien://",0,0,"t");
12 gSystem->Load("$ROOTSYS/lib/libXrdClient.so");
14 // 1. Make list of the files
16 .L $ALICE_ROOT/TPC/macros/testTPC/AlienToolkit.cxx+
17 gSystem->Load("libXrdClient.so");
18 gSystem->Load("libNetx.so");
20 char *path = "/alice/cern.ch/user/a/amatyja/alice/data/"
21 toolkit.MakeCollection(path,"32129*Krypton.root");
22 toolkit.MakeCollection(path,"32231*Krypton.root");
23 toolkit.MakeCollection(path,"32284*Krypton.root");
24 toolkit.PrintPFN(); > list.txt
27 // 2. Initialization of proof
29 TProofMgr * proofmgr = TProof::Mgr("lxgrid5.gsi.de");
30 TProof * proof = proofmgr->CreateSession();
31 proof->SetParameter("PROOF_MaxSlavesPerNode", (Long_t)1000);
32 .L /u/miranov/macros/ProofEnableAliRoot.C
33 ProofEnableAliRoot("/usr/local/grid/AliRoot/HEAD0108");
34 gProof->Exec("gSystem->Load(\"libANALYSIS.so\")",kTRUE);
35 gProof->Exec("gSystem->Load(\"libSTAT.so\")",kTRUE);
36 gProof->Exec("gSystem->Load(\"libTPCcalib.so\")",kTRUE);
37 gProof->Exec(".x $ALICE_ROOT/TPC/macros/ConfigOCDB.C");
40 // 3 Run analysis on PROOF
43 // Create chain of input files
45 gSystem->AddIncludePath("-I$ALICE_ROOT/TPC/macros");
46 gROOT->LoadMacro("$ALICE_ROOT/TPC/macros/AliXRDPROOFtoolkit.cxx+");
47 .L $ALICE_ROOT/TPC/macros/RunAliTPCCalibKrTask.C
48 RunAliTPCCalibKrTask(kTRUE);
52 // Check the cuts for clusters
54 AliXRDPROOFtoolkit tool;
55 TChain * chain = tool.MakeChain("list.txt","Kr",0,1000);
57 chain->SetProof(kTRUE);
59 TCut cutR0("cutR0","fADCcluster/fSize<200"); // adjust it according v seetings -
60 TCut cutR1("cutR1","fADCcluster/fSize>7"); // cosmic tracks and noise removal
61 TCut cutR2("cutR2","fMax.fAdc/fADCcluster<0.4"); // digital noise removal
62 TCut cutR3("cutR3","fMax.fAdc/fADCcluster>0.01"); // noise removal
63 TCut cutR4("cutR4","fMax.fTime>200"); // noise removal
64 TCut cutR5("cutR5","fMax.fTime<600"); // noise removal
65 TCut cutS1("cutS1","fSize<200"); // adjust it according v seetings - cosmic tracks
66 TCut cutAll = cutR0+cutR1+cutR2+cutR3+cutR4+cutR5+cutS1;
76 TFile f("KrHisto.root");
77 AliTPCCalibKr *kr = f.Get("AliTPCCalibKr");
79 kr->ProjectHisto(kr->GetHistoKr(71),"aaa",30,36,30,40)->Draw()
85 TCut cutKr("cutKr","entries.fElements<5000&&fitNormChi2.fElements<3&&fitNormChi2.fElements>0.2&&abs(fitRMS.fElements/fitMean.fElements-0.06)<0.025");
87 TObjArray * array = AliTPCCalibViewerGUI::ShowGUI("kryptonTree.root");
88 AliTPCCalibViewerGUI * viewer = (AliTPCCalibViewerGUI*)array->At(0);
89 TTree * tree = viewer->GetViewer()->GetTree();
91 tree->SetAlias("cutAll","abs(fitNormChi2.fElements-2.)<1.8&&entries.fElements/entries_Median.fElements<4&&entries.fElements/entries_Median.fElements>0.4&&fitRMS.fElements/fitMean.fElements<0.09&&fitRMS.fElements/fitMean.fElements>0.02")
97 void RunAliTPCCalibKrTask(Bool_t bProof = kFALSE)
100 AliXRDPROOFtoolkit tool;
101 chain = tool.MakeChain("list.txt","Kr","",20000,0);
103 chain->SetBranchStatus("Cl.fCluster",kFALSE);
106 // Create the analysis manager
108 AliAnalysisManager *mgr = new AliAnalysisManager("testAnalysis");
110 // Calibration component
111 AliTPCCalibKr *calibObj = new AliTPCCalibKr;
112 //calibObj->SetASide(kFALSE);
115 AliTPCCalibKrTask *task = new AliTPCCalibKrTask;
116 task->SetInputChain(chain);
117 task->SetTPCCalibKr(calibObj);
121 cInput = mgr->CreateContainer("cInput", TChain::Class(), AliAnalysisManager::kInputContainer);
122 mgr->ConnectInput(task, 0, cInput);
125 cOutput = mgr->CreateContainer("cOutput", TList::Class(), AliAnalysisManager::kOutputContainer,"outHistFile.root");
126 mgr->ConnectOutput(task, 0, cOutput);
128 cOutput->SetSpecialOutput(kTRUE);
129 cOutput->SetFileName("CalibObjectFile.root");
132 if (!mgr->InitAnalysis()) return;
134 mgr->SetDebugLevel(1);
137 mgr->StartAnalysis("proof", chain);
139 else mgr->StartAnalysis("local", chain);
146 TFile fpad("calibKr.root");
147 AliTPCPreprocessorOnline * preprocesor = new AliTPCPreprocessorOnline;
148 preprocesor->AddComponent(spectrMean->Clone());
149 preprocesor->AddComponent(spectrRMS->Clone());
150 preprocesor->AddComponent(fitMean->Clone());
151 preprocesor->AddComponent(fitRMS->Clone());
152 preprocesor->AddComponent(fitNormChi2->Clone());
153 preprocesor->AddComponent(entries->Clone());
154 preprocesor->DumpToFile("kryptonTree.root");