]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGLF/RESONANCES/macros/mini/ConfigLStarPP_MC.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGLF / RESONANCES / macros / mini / ConfigLStarPP_MC.C
1 //
2 // *** Configuration script for phi->KK analysis with 2010 runs ***
3 // 
4 // A configuration script for RSN package needs to define the followings:
5 //
6 // (1) decay tree of each resonance to be studied, which is needed to select
7 //     true pairs and to assign the right mass to all candidate daughters
8 // (2) cuts at all levels: single daughters, tracks, events
9 // (3) output objects: histograms or trees
10 //
11 Bool_t ConfigLStarPP_MC
12 (
13    AliRsnMiniAnalysisTask *task, 
14    Bool_t                  isPP, 
15    const char             *suffix,
16    AliRsnCutSet           *cutsPair
17 )
18 {
19    // manage suffix
20    if (strlen(suffix) > 0) suffix = Form("_%s", suffix);
21    
22    // 
23    // -- Define track cuts -------------------------------------------------------------------------
24    //
25    
26    /*** EMPTY FOR TRUE PAIRS COMPUTATION ***/
27    
28    //
29    // -- Values ------------------------------------------------------------------------------------
30    //
31    
32    /* invariant mass   */ Int_t imID   = task->CreateValue(AliRsnMiniValue::kInvMass, kFALSE);
33    /* transv. momentum */ Int_t ptID   = task->CreateValue(AliRsnMiniValue::kPt, kFALSE);
34    /* centrality       */ Int_t centID = task->CreateValue(AliRsnMiniValue::kMult, kFALSE);
35    
36    //
37    // -- Create all needed outputs -----------------------------------------------------------------
38    //
39    
40    TString mode = "SPARSE";
41 //   if (!isPP) mode = "SPARSE";
42    
43    // create output
44    AliRsnMiniOutput *out = task->CreateOutput(Form("LStar_TrueMC1%s", suffix), mode.Data(), "MOTHER");
45    // selection settings
46    out->SetDaughter(0, AliRsnDaughter::kProton);
47    out->SetDaughter(1, AliRsnDaughter::kKaon);
48       out->SetCharge(0, '+');
49       out->SetCharge(1, '-');
50    out->SetMotherPDG(3124);
51    out->SetMotherMass(1.520);
52    // pair cuts
53    out->SetPairCuts(cutsPair);
54    // binnings
55    out->AddAxis(imID,  80, 1.0, 2.0);
56 //S.K.   out->AddAxis(ptID, 100, 0.0, 10.0);
57    out->AddAxis(ptID, 100, 0.0, 10.0);
58 //S.K.   if (!isPP) out->AddAxis(centID, 100, 0.0, 100.0);
59    out->AddAxis(centID, 10, 0.0, 100.0);
60    
61    // create output
62    AliRsnMiniOutput *out = task->CreateOutput(Form("LStar_TrueMC2%s", suffix), mode.Data(), "MOTHER");
63    // selection settings
64    out->SetDaughter(0, AliRsnDaughter::kProton);
65    out->SetDaughter(1, AliRsnDaughter::kKaon);
66    out->SetCharge(0, '-');
67    out->SetCharge(1, '+');
68    out->SetMotherPDG(-3124);
69    out->SetMotherMass(1.520);
70    // pair cuts
71    out->SetPairCuts(cutsPair);
72    // binnings
73    out->AddAxis(imID,  100, 1.0, 2.0);
74 //S.K.   out->AddAxis(ptID, 100, 0.0, 10.0);
75    out->AddAxis(ptID, 100, 0.0, 10.0);
76 //S.K.   if (!isPP) out->AddAxis(centID, 100, 0.0, 100.0);
77    out->AddAxis(centID, 10, 0.0, 100.0);
78      
79     // create output
80    AliRsnMiniOutput *outm = task->CreateOutput(Form("Ls_Mother"), mode.Data(), "MOTHER");
81     outm->SetDaughter(0, AliRsnDaughter::kProton);
82     outm->SetDaughter(1, AliRsnDaughter::kKaon);
83     outm->SetMotherPDG(3124);
84     outm->SetMotherMass(1.520);
85     // pair cuts
86     outm->SetPairCuts(cutsPair);
87     // binnings
88     outm->AddAxis(imID, 100, 1.0, 2.0);
89     outm->AddAxis(ptID, 100, 0.0, 10.0);
90     if (!isPP){
91       outm->AddAxis(centID, 100, 0.0, 100.0);
92     }   else    { 
93       outm->AddAxis(centID, 400, 0.0, 400.0);
94     }
95   
96  AliRsnMiniOutput *outm = task->CreateOutput(Form("Ls_AntiMother"), mode.Data(), "MOTHER");
97     outm->SetDaughter(0, AliRsnDaughter::kProton);
98     outm->SetDaughter(1, AliRsnDaughter::kKaon);
99     outm->SetMotherPDG(-3124);
100     outm->SetMotherMass(1.520);
101     // pair cuts
102     outm->SetPairCuts(cutsPair);
103     // binnings
104     outm->AddAxis(imID, 100, 1.0, 2.0);
105     outm->AddAxis(ptID, 100, 0.0, 10.0);
106     if (!isPP){
107       outm->AddAxis(centID, 100, 0.0, 100.0);
108     }   else    { 
109       outm->AddAxis(centID, 400, 0.0, 400.0);
110     }
111    return kTRUE;
112 }