1 void AliLambdaStarAnalysis
4 const char *path_in = "myselection",
5 const char *file_out = "lambda.invmass.root"
8 gSystem->Load("libANALYSIS.so");
10 TChain *tree = new TChain("selection");
13 // Open the working directory
14 void *dirp = gSystem->OpenDirectory(Form("$HOME/lambda/%s", path_in));
15 const char *name = 0x0;
16 while((name = gSystem->GetDirEntry(dirp))) {
17 if (strstr(name, ".root")) {
18 tree->Add(Form("$HOME/lambda/%s/%s", path_in, name));
21 gSystem->FreeDirectory(dirp);
24 for (Int_t iev = 0; iev <= nevents; iev++) {
25 tree->Add(Form("$HOME/lambda/%s/%d.root", path_in, iev));
28 cout << "# events: " << tree->GetEntries() << endl;
30 //AliRsnDaughterCutPtSingle *cutproton = new AliRsnDaughterCutPtSingle(0, 1);
31 //AliRsnDaughterCutPtSingle *cutkaon = new AliRsnDaughterCutPtSingle(0, 1);
33 // assign working parameters
34 AliRsnAnalysis *analysis = new AliRsnAnalysis;
35 analysis->SetEventsTree(tree);
37 //analysis->AddCutSingle(AliPID::kProton, cutproton);
38 //analysis->AddCutSingle(AliPID::kKaon, cutkaon);
41 analysis->SetBins(800, 1.3, 2.1); // 700 bins of 1 MeV each
42 analysis->SetTrueMotherPDG(3124); // PDG code of Lambda*
44 // import all useful combinations
46 analysis->AddPairDef(AliPID::kProton, '+', AliPID::kKaon, '-');
47 analysis->AddPairDef(AliPID::kProton, '-', AliPID::kKaon, '+');
48 analysis->AddPairDef(AliPID::kProton, '+', AliPID::kKaon, '-', kTRUE);
49 analysis->AddPairDef(AliPID::kProton, '-', AliPID::kKaon, '+', kTRUE);
51 analysis->AddMixPairDef(AliPID::kProton, '+', AliPID::kKaon, '-');
52 analysis->AddMixPairDef(AliPID::kProton, '-', AliPID::kKaon, '+');
53 analysis->AddMixPairDef(AliPID::kKaon, '-', AliPID::kProton, '+');
54 analysis->AddMixPairDef(AliPID::kKaon, '+', AliPID::kProton, '-');
58 // process data for signal event in same event
60 analysis->EventMix(5, 5, 0.02, kFALSE);
63 outFile = TFile::Open(file_out, "RECREATE");
66 analysis->WriteHistograms();