void AliKStarAnalysis( const double ptmin=0.0, const double ptmax=1.0, const double ymin=-1.5, const double ymax= 1.5 ) { gROOT->LoadMacro("AliRsnPrepareChain.C"); TChain *tree = AliRsnPrepareChain(); Info("AliKStarAnalysis",Form("chain has %d entries",tree->GetEntries())); // define overall constants Int_t nbins = 300; Double_t min = 0.6; Double_t max = 1.4; //define cuts AliRsnDaughterCutPairPt cut_pair_pt(ptmin,ptmax); AliRsnDaughterCutPairY cut_pair_y (ymin, ymax ); // define all pairs AliRsnPair *pair1 = new AliRsnPair("kplus_piminus", "", nbins, min, max); pair1->SetPair('+',AliRsnPID::kKaon,'-',AliRsnPID::kPion); pair1->SetTrueMotherPDG(313); pair1->AddCutPair(&cut_pair_pt); pair1->AddCutPair(&cut_pair_y); AliRsnPair *pair1true = new AliRsnPair("kplus_piminus_true", "", nbins, min, max); pair1true->SetTrueMotherPDG(313); pair1true->SetPair('+',AliRsnPID::kKaon,'-',AliRsnPID::kPion); pair1true->SetStoreOnlyTrue(kTRUE) ; pair1true->AddCutPair(&cut_pair_pt); pair1true->AddCutPair(&cut_pair_y); AliRsnPair *pair1lik = new AliRsnPair("kplus_piplus", "", nbins, min, max); pair1lik->SetPair('+',AliRsnPID::kKaon,'+',AliRsnPID::kPion); pair1lik->AddCutPair(&cut_pair_pt); pair1lik->AddCutPair(&cut_pair_y); AliRsnPair *pair2lik = new AliRsnPair("kminus_piminus", "", nbins, min, max); pair2lik->SetPair('-',AliRsnPID::kKaon,'-',AliRsnPID::kPion); pair2lik->AddCutPair(&cut_pair_pt); pair2lik->AddCutPair(&cut_pair_y); AliRsnPair *pair1mix = new AliRsnPair("kplus_piminus_mix", "", nbins, min, max); pair1mix->SetPair('+',AliRsnPID::kKaon,'-',AliRsnPID::kPion); pair1mix->AddCutPair(&cut_pair_pt); pair1mix->AddCutPair(&cut_pair_y); pair1mix->SetForMixing(kTRUE); // assign working parameters AliRsnAnalysis *analysis = new AliRsnAnalysis("RsnEvents"); analysis->SetEventsTree(tree); analysis->AddPair(pair1); analysis->AddPair(pair1lik); analysis->AddPair(pair2lik); analysis->AddPair(pair1true); analysis->AddPair(pair1mix); // process data analysis->SetStep(1000); analysis->Process(); analysis->SetMixMultiplicityCut(10); analysis->SetMixVzCut(2.0); analysis->EventMixing(3); char outName[255]; sprintf(outName,"kstar.ptm%4.1f-%4.1f_y%4.1f-%4.1f.root",ptmin,ptmax,ymin,ymax); analysis->SaveOutput(outName, "RECREATE"); }