1 void InitHistograms(AliDielectron *die, Int_t cutDefinition);
2 void InitCF(AliDielectron* die, Int_t cutDefinition);
4 void SetupTrackCuts(AliDielectron *die, Int_t cutDefinition);
5 void SetupPairCuts(AliDielectron *die, Int_t cutDefinition);
8 AliESDtrackCuts *SetupESDtrackCuts(Int_t cutDefinition);
10 TString names=("MixEvt");
11 TObjArray *arrNames=names.Tokenize(";");
12 const Int_t nDie=arrNames->GetEntries();
13 Bool_t MCenabled=kFALSE;
17 AliDielectron* Configpp2012Oezdemir(Int_t cutDefinition,Bool_t hasMC=kFALSE)
20 // Setup the instance of AliDielectron
25 // create the actual framework object
27 TString name=Form("%02d",cutDefinition);
28 if ((cutDefinition)<arrNames->GetEntriesFast()){
29 name=arrNames->At((cutDefinition))->GetName();
32 //thisCut only relevant for MC:
34 new AliDielectron(Form
36 Form("Track cuts: %s",name.Data()));
39 AliDielectronMixingHandler *mix = new AliDielectronMixingHandler;
40 mix->SetMixType(AliDielectronMixingHandler::kAll);
41 mix->AddVariable(AliDielectronVarManager::kZvPrim,"-10., -7.5, -5., -2.5 , 0., 2.5, 5., 7.5 , 10.");
42 mix->AddVariable(AliDielectronVarManager::kNacc,"0,10000");
44 die->SetMixingHandler(mix);
48 SetupTrackCuts(die,cutDefinition);
49 SetupPairCuts(die,cutDefinition);
52 // only if an AliDielectronHistos object is attached to the
53 // dielectron framework histograms will be filled
55 InitHistograms(die,cutDefinition);
57 // the last definition uses no cuts and only the QA histograms should be filled!
58 //InitCF(die,cutDefinition);
63 //______________________________________________________________________________________
64 void SetupTrackCuts(AliDielectron *die, Int_t cutDefinition)
67 // Setup the track cuts
70 //___________________________________________
71 AliDielectronPID *pidTT = new AliDielectronPID("TPC-TOF","TPC-TOF");
72 pidTT->AddCut(AliDielectronPID::kTPC,AliPID::kElectron,-1.5,3.,0.2,100.,kFALSE);
73 pidTT->AddCut( AliDielectronPID::kTOF ,AliPID::kElectron , -3. , 3. , 0.4 , 5., kFALSE );
74 pidTT->AddCut(AliDielectronPID::kTPC,AliPID::kPion,-100.,4.,0.2,100.,kTRUE);
76 //___________________________________________
77 AliDielectronPID *pidTOF = new AliDielectronPID("TOF","TOF");
78 pidTOF->AddCut( AliDielectronPID::kTOF ,AliPID::kElectron , -3. , 3. , 0.4 , 5., kFALSE );
80 // =============CREATE GROUPS FOR ==============
84 AliDielectronCutGroup* cgTrackFilterPIDTPC = new AliDielectronCutGroup("cgPIDTPC","cgPIDTPC",AliDielectronCutGroup::kCompAND);
85 cgTrackFilterPIDTPC->AddCut(SetupESDtrackCuts(cutDefinition));
86 cgTrackFilterPIDTPC->AddCut(pidTT);
89 AliDielectronCutGroup* cgTrackFilterPIDTOF = new AliDielectronCutGroup("cgPIDTOF","cgPIDTOF",AliDielectronCutGroup::kCompAND);
90 cgTrackFilterPIDTOF->AddCut(SetupESDtrackCuts(cutDefinition));
91 cgTrackFilterPIDTOF->AddCut(pidTOF);
94 AliDielectronCutGroup* cgTrackFilternoPID = new AliDielectronCutGroup("cgnoPID","cgnoPID",AliDielectronCutGroup::kCompAND);
95 cgTrackFilternoPID->AddCut(SetupESDtrackCuts(cutDefinition));
97 //Correct BG scheme for Combinatorial BG
98 //die->SetPreFilterUnlikeOnly();
99 die->SetPreFilterAllSigns();
100 die->SetUseKF(kFALSE);
102 if ( cutDefinition ==0 ) {
103 die->GetTrackFilter().AddCuts(cgTrackFilterPIDTPC);
107 //______________________________________________________________________________________
109 void SetupPairCuts(AliDielectron *die, Int_t cutDefinition)
112 // Setup the pair cuts
116 if(cutDefinition == 0){
118 AliDielectronTrackCuts *noconv=new AliDielectronTrackCuts("noConv","conversion tagging");
119 noconv->SetV0DaughterCut(AliPID::kElectron,kTRUE);
120 die->GetTrackFilter().AddCuts(noconv);
123 // AliDielectronVarCuts *RapidityCut=new AliDielectronVarCuts("RapidityCut","RapidityCut");
124 // RapidityCut->AddCut(AliDielectronVarManager::kY, -0.8 , 0.8);
125 // die->GetPairFilter().AddCuts(RapidityCut);
127 AliDielectronVarCuts *PhiV = new AliDielectronVarCuts("PhiV","PhiV");//mass and Phiv together
128 PhiV->AddCut(AliDielectronVarManager::kM, 0.0 , 0.05);
129 PhiV->AddCut(AliDielectronVarManager::kPhivPair, 2.5 , 3.2 );
130 die->GetPairPreFilter().AddCuts(PhiV);
132 AliDielectronVarCuts *PhiV2 = new AliDielectronVarCuts("PhiV2","PhiV2");//mass and Phiv together
133 PhiV2->AddCut(AliDielectronVarManager::kM, 0.05 , 1000.);
135 AliDielectronCutGroup* pairCutsCG2 =new AliDielectronCutGroup("pairCutsCG2","pairCutsCG2",AliDielectronCutGroup::kCompOR);
136 pairCutsCG2->AddCut(PhiV);
137 pairCutsCG2->AddCut(PhiV2);
138 die->GetPairFilter().AddCuts(pairCutsCG2);
142 AliDielectronVarCuts *mcpid =new AliDielectronVarCuts("mcpid","mcpid");
143 mcpid->SetCutType(AliDielectronVarCuts::kAny);
144 mcpid->AddCut(AliDielectronVarManager::kPdgCode, 11);
145 mcpid->AddCut(AliDielectronVarManager::kPdgCode, -11);
146 die->GetTrackFilter().AddCuts(mcpid);
148 AliDielectronVarCuts *MCnoConv =new AliDielectronVarCuts("MCnoConv","MCnoConv");
149 MCnoConv->AddCut(AliDielectronVarManager::kPdgCodeMother, 22,kTRUE);
150 die->GetTrackFilter().AddCuts(MCnoConv);
157 //______________________________________________________________________________________
158 AliESDtrackCuts *SetupESDtrackCuts(Int_t cutDefinition)
161 // Setup default AliESDtrackCuts
163 AliESDtrackCuts *esdTrackCuts = new AliESDtrackCuts;
165 esdTrackCuts->SetMaxDCAToVertexZ(3.0);
166 esdTrackCuts->SetMaxDCAToVertexXY(1.0);
168 esdTrackCuts->SetPtRange( 0.2 , 100.0);
169 esdTrackCuts->SetEtaRange( -0.8 , 0.8 );
170 esdTrackCuts->SetRequireSigmaToVertex(kFALSE);
171 esdTrackCuts->SetAcceptKinkDaughters(kFALSE);
172 esdTrackCuts->SetDCAToVertex2D(kFALSE);
174 esdTrackCuts->SetRequireITSRefit(kTRUE);
175 esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD,AliESDtrackCuts::kFirst); //Base
176 esdTrackCuts->SetMinNClustersITS(3); //Base
178 esdTrackCuts->SetRequireTPCRefit(kTRUE);
179 esdTrackCuts->SetMinNClustersTPC(80); //Base
181 esdTrackCuts->SetMinNCrossedRowsTPC(100); //Base
183 esdTrackCuts->SetMinRatioCrossedRowsOverFindableClustersTPC(0.5);
184 esdTrackCuts->SetMaxChi2PerClusterTPC(4);
189 //______________________________________________________________________________________
191 void InitHistograms(AliDielectron *die, Int_t cutDefinition)
194 // Initialise the histograms
197 //Setup histogram classes
198 AliDielectronHistos *histos=
199 new AliDielectronHistos(die->GetName(),
204 //Initialise histogram classes
205 histos->SetReservedWords("Track;Pair");
206 //histos->SetReservedWords("Track");
209 histos->AddClass("Event");
213 //to fill also track info from 2nd event loop until 2
214 for (Int_t i=0; i<2; ++i){
215 histos->AddClass(Form("Track_%s",AliDielectron::TrackClassName(i)));
219 // to fill also mixed event histograms loop until 10
221 for (Int_t i=0; i<3; ++i){
222 histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(i)));
227 histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(3))); //ME ++
228 histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(4)));//ME -+
229 histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(6)));//ME +-
230 histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(7))); // ME --
234 //add histograms to event class
235 histos->UserHistogram("Event","nEvents","Number of processed events after cuts;Number events",1,0,1,AliDielectronVarManager::kNevents);
236 histos->UserHistogram("Event","ZVertex","ZVertex;ZVertex/cm",480,-12.,12.,AliDielectronVarManager::kZvPrim);
237 histos->UserHistogram("Event","nESDTracks","ESD tracks;ESD tracks;Number events",100,0,200,AliDielectronVarManager::kTracks);
238 histos->UserHistogram("Event","Nacc","Number of accepted tracks;Number events",100,0,200,AliDielectronVarManager::kNacc);
239 histos->UserHistogram("Event","NVtxContrib","Number of Vertex Contributor;NVtx;Number events",100,0,100,AliDielectronVarManager::kNVtxContrib);
242 //add histograms to Track classes
243 histos->UserHistogram("Track","P","P;P [GeV];#tracks",500,0.,10.,AliDielectronVarManager::kPIn);
244 histos->UserHistogram("Track","Pt","Pt;Pt [GeV];#tracks",500,0.,10.,AliDielectronVarManager::kPt);
245 histos->UserHistogram("Track","Eta","Eta; Eta ;#tracks",100,-1.,1.,AliDielectronVarManager::kEta);
246 histos->UserHistogram("Track","Phi","Phi; Phi ;#tracks",640,0.,6.4,AliDielectronVarManager::kPhi);
249 histos->UserHistogram("Track","Eta_phi","Eta vs Phi;Eta;Phi",100,-1.,1.,320,0.,6.4,AliDielectronVarManager::kEta,AliDielectronVarManager::kPhi);
250 histos->UserHistogram("Track","Eta_pt","Eta vs Pt;Eta;Pt",100,-1.,1.,500,0.,10.,AliDielectronVarManager::kEta,AliDielectronVarManager::kPt);
251 histos->UserHistogram("Track","ImpParXY_Pt","ImpParXY_Pt; Pt; ÍmpParXY",500,0.,10.,500,-5.,5.,AliDielectronVarManager::kPt,AliDielectronVarManager::kImpactParXY);
252 histos->UserHistogram("Track","ImpParZ_Pt","ImpParZ_Pt; Pt; ÍmpParZ",500,0.,10.,500,-5.,5.,AliDielectronVarManager::kPt,AliDielectronVarManager::kImpactParZ);
256 histos->UserHistogram("Track","ITSchi2Cl_Mom","ITS Chi2 vs Momentum;Mom;ITS chi2",500,0.,5.,50,0.,5.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kITSchi2Cl);
257 histos->UserHistogram("Track","NclsITS_Mom",";Mom;kNclsITS",500,0.,5.,7,0,7,AliDielectronVarManager::kPIn,AliDielectronVarManager::kNclsITS);
260 histos->UserHistogram("Track","TPCsignalNfrac_Mom",";fraction TPCSignalN/TPCncls vs Momentum;Mom;TPCSignalN/TPCncls",500,0.,5.,60,0.,1.2,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCsignalNfrac);
261 histos->UserHistogram("Track","TPCchi2Cl_Mom","TPC Chi2 vs Momentum;Mom;TPC Chi2",500,0.,10.,100,0,5,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCchi2Cl);
262 histos->UserHistogram("Track","TPCclsDiff_Mom","kTPCclsDiff vs Momentum;Mom;kTPCclsDiff",500,0.,10.,100,-10,10,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCclsDiff);
263 histos->UserHistogram("Track","FindableTPCcls_Mom","kNFclsTPC vs Momentum;Mom;kNFclsTPC",500,0.,10.,200,0.,200.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kNFclsTPC);
264 histos->UserHistogram("Track","TPCcls_Mom","kNclsTPC vs Momentum;Mom;kNclsTPC",500,0.,10.,200,0.,200.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kNclsTPC);
265 histos->UserHistogram("Track","kNclsSFracTPC_Mom","kNclsSFracTPC vs Momentum;Mom;kTPCclsSFrac",500,0.,10.,1000,0.,1.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kNclsSFracTPC);
266 histos->UserHistogram("Track","kNFclsTPCrFrac_Mom","kNFclsTPCrFrac vs Momentum;Mom;kNFclsTPCrFrac",500,0.,10.,60,0.,1.2.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kNFclsTPCrFrac);
269 histos->UserHistogram("Track","TOFbeta_Mom","kTOFbeta vs Momentum;Mom;TOFbeta",500,0.,5.,120,0.,1.2,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTOFbeta);
270 histos->UserHistogram("Track","TOFPIDBit_Mom","kTOFPIDBit vs Momentum;Mom;TOFPIDbit",500,0.,5.,2,0.,1.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTOFPIDBit);
273 histos->UserHistogram("Track","ITSnSigma_MomPio","ITS number of sigmas Pion vs Momentum;Mom;ITSsigmaPion",500,0.,5.,1000,-20,20,AliDielectronVarManager::kPIn,AliDielectronVarManager::kITSnSigmaPio);
274 histos->UserHistogram("Track","TPCnSigma_MomPio","TPC number of sigmas Pions vs Momentum;Mom;TPCsigmaPion",500,0.,5.,1000,-20,20,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCnSigmaPio);
276 histos->UserHistogram("Track","ITSnSigma_MomEle","ITS number of sigmas Electrons vs Momentum;Mom;ITSsigmaEle",500,0.,5.,800,-40,40,AliDielectronVarManager::kPIn,AliDielectronVarManager::kITSnSigmaEle);
277 histos->UserHistogram("Track","TPCnSigma_MomEle","TPC number of sigmas Electrons vs Momentum;Mom;TPCsigmaEle",1000,0.,10.,800,-40,40,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCnSigmaEle);
278 histos->UserHistogram("Track","TOFnSigma_MomEle","TOF number of sigmas Electrons vs Momentum;Mom;TOFsigmaEle",500,0.,5.,800,-40,40,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTOFnSigmaEle);
280 histos->UserHistogram("Track","ITSdEdx_P","dEdx;P [GeV];ITS signal (arb units) vs Momentum;Mom;ITSsignal", 500,0,5,800,0,200,AliDielectronVarManager::kPIn,AliDielectronVarManager::kITSsignal);
281 histos->UserHistogram("Track","TPCdEdx_P","dEdx;P [GeV];TPC signal (arb units) vs Momentum;Mom;TPCsignal", 500,0,10.,800,0,200,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCsignal);
284 //add histograms to Pair classes
287 histos->UserHistogram("Pair","InvMass","Inv.Mass;Inv. Mass [GeV];#pairs",
288 500,0,4,AliDielectronVarManager::kM);
290 histos->UserHistogram("Pair","InvMass_low","Inv.Mass;Inv. Mass [GeV];#pairs",
291 500,0,0.5,AliDielectronVarManager::kM);
293 histos->UserHistogram("Pair","InvMass10","Inv.Mass;Inv. Mass [GeV];#pairs",
294 500,0.,5.,AliDielectronVarManager::kM);
296 histos->UserHistogram("Pair","kDeltaEta","kDeltaEta;kDeltaEta;#pairs",
297 160,0.,1.6,AliDielectronVarManager::kDeltaEta);
299 histos->UserHistogram("Pair","kDeltaEta_low","kDeltaEta;kDeltaEta;#pairs",
300 500,0.,0.5,AliDielectronVarManager::kDeltaEta);
302 histos->UserHistogram("Pair","kDeltaPhi","kDeltaPhi;kDeltaPhi;#pairs",
303 320,0.,6.4,AliDielectronVarManager::kDeltaPhi);
305 histos->UserHistogram("Pair",
306 "kDeltaEta_kDeltaPhi","kDeltaEta_kDeltaPhi;kDeltaEta;kDeltaPhi",
307 160, 0. , 1.6, 320 , 0., 6.4 ,
308 AliDielectronVarManager::kDeltaEta , AliDielectronVarManager::kDeltaPhi );
310 histos->UserHistogram("Pair","PhiV",";PhiV;#pairs",
311 320,0.,6.4,AliDielectronVarManager::kPhivPair);
314 histos->UserHistogram("Pair","PhiV_Pt",";Pt;PhiV",
315 100,0.,10.,320,0.,6.4,AliDielectronVarManager::kPt,AliDielectronVarManager::kPhivPair);
317 histos->UserHistogram("Pair","InvMass_bin2","Inv.Mass;Inv. Mass [GeV];#pairs",
318 "0. , 0.025, 0.05 , 0.075 ,0.1 ,0.15 , 0.2 , 0.25 , 0.3 ,
319 0.4 , 0.5 , 0.6, 0.65 , 0.688 , 0.725, 0.75, 0.775, 0.8 , 0.85 ,
320 0.95, 0.975 , 1.0 , 1.025 , 1.05, 1.125 , 1.25 , 1.5 , 1.75 , 2.0 ,
321 2.25, 2.5 , 2.75 , 2.85, 2.95,3.05, 3.1 , 3.15 ,
322 3.3 , 3.5, 3.75 , 4.0",AliDielectronVarManager::kM);
325 histos->UserHistogram("Pair",
326 "InvMass_Pt","InvMass_Pt;InvMass;Pt",
327 500, 0. , 4., 100 , 0., 5. ,
328 AliDielectronVarManager::kM , AliDielectronVarManager::kPt );
330 histos->UserHistogram("Pair",
331 "InvMass_PhivPair","InvMass_PhivPair;InvMass;PhivPair",
332 500, 0. , 4., 320 , 0., 3.2 ,
333 AliDielectronVarManager::kM , AliDielectronVarManager::kPhivPair );
335 histos->UserHistogram("Pair",
336 "OpAngle","Opening angle;Opening angle;#pairs",
338 AliDielectronVarManager::kOpeningAngle);
340 histos->UserHistogram("Pair",
341 "OpAngle_InvMass","OpAngle_InvMass;Opening angle;Invariant Mass",
342 320, 0. , 3.2, 500 , 0. , 4. ,
343 AliDielectronVarManager::kOpeningAngle,AliDielectronVarManager::kM);
346 histos->UserHistogram("Pair",
347 "Phi","Phi;counts;Phi",
348 320, 0. , 6.4, AliDielectronVarManager::kPhi);
350 histos->UserHistogram("Pair",
352 120, -1.2 , 1.2, AliDielectronVarManager::kY);
354 die->SetHistogramManager(histos);
359 void InitCF(AliDielectron* die, Int_t cutDefinition)
362 // Setupd the CF Manager if needed
364 AliDielectronCF *cf=new AliDielectronCF(die->GetName(),die->GetTitle());
367 cf->AddVariable(AliDielectronVarManager::kPt,100,0.,10.);
368 //cf->AddVariable(AliDielectronVarManager::kP,200,0,20);
369 //cf->AddVariable(AliDielectronVarManager::kPhi,64, -3.2, 3.2);
370 cf->AddVariable(AliDielectronVarManager::kY,40,-2.,2.);
371 cf->AddVariable(AliDielectronVarManager::kM,500,0.,4.);
372 //cf->AddVariable(AliDielectronVarManager::kPairType,10,0,10);
373 //cf->AddVariable(AliDielectronVarManager::kOpeningAngle,315,0,3.15);
374 //cf->AddVariable(AliDielectronVarManager::kDeltaEta,200,-2,2);
375 //cf->AddVariable(AliDielectronVarManager::kDeltaPhi,100,0,3.15);
376 //cf->AddVariable(AliDielectronVarManager::kHaveSameMother,21,-10,10);
377 cf->AddVariable(AliDielectronVarManager::kNumberOfDaughters,5,0,5);
379 cf->AddVariable(AliDielectronVarManager::kPt,100,0.,10.,kTRUE);
380 //cf->AddVariable(AliDielectronVarManager::kP,200,0.,20.,kTRUE);
381 //cf->AddVariable(AliDielectronVarManager::kY,40,-2.,2.,kTRUE);
382 cf->AddVariable(AliDielectronVarManager::kEta,20,-1.,1.,kTRUE);
383 cf->AddVariable(AliDielectronVarManager::kPhi,100,0.,3.15,kTRUE);
384 // cf->AddVariable(AliDielectronVarManager::kITSsignal,1000,0.0.,1000.,kTRUE);
385 // cf->AddVariable(AliDielectronVarManager::kHaveSameMother,21,-10,10,kTRUE);
386 // cf->AddVariable(AliDielectronVarManager::kNumberOfDaughters,11,0,10,kTRUE);
388 //only in this case write MC truth info
391 cf->SetStepForMCtruth();
392 //cf->SetStepsForMCtruthOnly();
393 //cf->SetStepForNoCutsMCmotherPid();
394 cout << "MC ENABLED ------------------------------------------------------" << endl;
395 //cf->AddVariable(AliDielectronVarManager::kPdgCode,10000,-5000.5,4999.5,kTRUE);
396 //cf->AddVariable(AliDielectronVarManager::kPdgCodeMother,10000,-5000.5,4999.5,kTRUE);
399 //cf->SetStepsForEachCut();
400 //cf->SetStepForPreFilter();
401 cf->SetStepForAfterAllCuts();
402 //cf->SetStepsForBackground();
403 cf->SetStepsForSignal();
405 die->SetCFManagerPair(cf);
409 AliDielectronSignalMC* lowMassDiele=new
410 AliDielectronSignalMC("lowMassDiele","low mass dielectron pairs");
411 lowMassDiele->SetLegPDGs(11,-11);
412 lowMassDiele->SetCheckBothChargesLegs(kTRUE,kTRUE);
413 lowMassDiele->SetLegSources(AliDielectronSignalMC::kPrimary,
414 AliDielectronSignalMC::kPrimary);
415 lowMassDiele->SetFillPureMCStep(kTRUE);
416 die->AddSignalMC(lowMassDiele);
418 AliDielectronSignalMC* secondary=new
419 AliDielectronSignalMC("secondary","secondary electrons pairs");
420 secondary->SetLegPDGs(11,-11);
421 secondary->SetCheckBothChargesLegs(kTRUE,kTRUE);
422 secondary->SetLegSources(AliDielectronSignalMC::kSecondary,
423 AliDielectronSignalMC::kSecondary);
424 die->AddSignalMC(secondary);
426 AliDielectronSignalMC* eleFromConversions=new
427 AliDielectronSignalMC("eleFromConversions","conversion electrons");
428 eleFromConversions->SetLegPDGs(11,-11);
429 eleFromConversions->SetCheckBothChargesLegs(kTRUE,kTRUE);
430 eleFromConversions->SetLegSources(AliDielectronSignalMC::kSecondary,
431 AliDielectronSignalMC::kSecondary);
432 eleFromConversions->SetMotherPDGs(22,22); // 22- photon
433 die->AddSignalMC(eleFromConversions);
435 AliDielectronSignalMC* misIdPions=new
436 AliDielectronSignalMC("misIdPions","mis id. pion pairs");
437 misIdPions->SetLegPDGs(211,-211);
438 misIdPions->SetCheckBothChargesLegs(kTRUE,kTRUE);
439 die->AddSignalMC(misIdPions);
441 AliDielectronSignalMC* dalitzDecays=new
442 AliDielectronSignalMC("dalitzDecays","dalitz Pairs");
443 dalitzDecays->SetLegPDGs(11,-11);
444 dalitzDecays->SetCheckBothChargesLegs(kTRUE,kTRUE);
445 dalitzDecays->SetLegSources(AliDielectronSignalMC::kSecondary,
446 AliDielectronSignalMC::kSecondary);
447 dalitzDecays->SetMotherPDGs(111,111);
448 dalitzDecays->SetFillPureMCStep(kTRUE);
449 die->AddSignalMC(dalitzDecays);
452 AliDielectronSignalMC* PhiDecays= new AliDielectronSignalMC("PhiDecays","Phi Pairs");
453 PhiDecays->SetLegPDGs(11,-11);
454 PhiDecays->SetCheckBothChargesLegs(kTRUE,kTRUE);
455 PhiDecays->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
456 PhiDecays->SetMotherPDGs(333,333);
457 PhiDecays->SetMothersRelation(AliDielectronSignalMC::kSame);
458 PhiDecays->SetFillPureMCStep(kTRUE);
459 die->AddSignalMC(PhiDecays);
461 AliDielectronSignalMC* OmegaDecays= new AliDielectronSignalMC("OmegaDecays","Omega Pairs");
462 OmegaDecays->SetLegPDGs(11,-11);
463 OmegaDecays->SetCheckBothChargesLegs(kTRUE,kTRUE);
464 OmegaDecays->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
465 OmegaDecays->SetMotherPDGs(223,223);
466 OmegaDecays->SetMothersRelation(AliDielectronSignalMC::kSame);
467 OmegaDecays->SetDalitz(AliDielectronSignalMC::kIsNotDalitz);
468 OmegaDecays->SetFillPureMCStep(kTRUE);
469 die->AddSignalMC(OmegaDecays);
472 AliDielectronSignalMC* RhoDecays= new AliDielectronSignalMC("RhoDecays","Rho Pairs");
473 RhoDecays->SetLegPDGs(11,-11);
474 RhoDecays->SetCheckBothChargesLegs(kTRUE,kTRUE);
475 RhoDecays->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
476 RhoDecays->SetMotherPDGs(113,113);
477 RhoDecays->SetMothersRelation(AliDielectronSignalMC::kSame);
478 RhoDecays->SetFillPureMCStep(kTRUE);
479 die->AddSignalMC(RhoDecays);
481 AliDielectronSignalMC* DieleConti= new AliDielectronSignalMC("DieleConti","low mass ee pairs");
482 DieleConti->SetLegPDGs(11,-11);
483 DieleConti->SetMotherPDGs(0,0,22,22);
484 DieleConti->SetCheckBothChargesLegs(kTRUE,kTRUE);
485 DieleConti->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
486 DieleConti->SetMothersRelation(AliDielectronSignalMC::kSame);
487 DieleConti->SetFillPureMCStep(kTRUE);
488 die->AddSignalMC(DieleConti);*/
493 //--------------------------------------