File indexing completed on 2026-05-23 08:10:32
0001 #include "../corrections/EfficiencyCorrection.h"
0002 #include "../corrections/LambdaFeedDownCorrection.h"
0003 #include "../corrections/GeoAcceptanceCorrection.h"
0004 #include "../corrections/TrivialEfficiencyCorrection.h"
0005
0006 #include "ResonanceRatio.h"
0007
0008 #include "LambdaModel.h"
0009 #include "KshortModel.h"
0010
0011 void Lambda_Kshort_ratio()
0012 {
0013 TFile* Ks_file = TFile::Open("/sphenix/tg/tg01/hf/mjpeters/LightFlavorResults/Kshort_3runs.root");
0014 TFile* lambda_file = TFile::Open("/sphenix/tg/tg01/hf/mjpeters/LightFlavorResults/Lambda_3runs.root");
0015
0016 TTree* Ks_tree = (TTree*)Ks_file->Get("DecayTree");
0017 TTree* lambda_tree = (TTree*)lambda_file->Get("DecayTree");
0018
0019 std::vector<HistogramInfo> variables =
0020 {
0021 BinInfo::final_pt_bins,
0022 BinInfo::final_eta_bins,
0023 BinInfo::final_rapidity_bins,
0024 BinInfo::final_phi_bins,
0025 };
0026
0027 RooArgList Ks_args;
0028 RooArgList lambda_args;
0029
0030 RooRealVar m_ks("K_S0_mass","K_S0_mass",0.45,0.55);
0031 RooRealVar m_lambda("Lambda0_mass","Lambda0_mass",1.1,1.14);
0032
0033 Ks_args.add(m_ks);
0034 lambda_args.add(m_lambda);
0035
0036 std::vector<RooRealVar> Ks_vars;
0037 std::vector<RooRealVar> lambda_vars;
0038
0039 for(HistogramInfo& hinfo : variables)
0040 {
0041 std::string Ks_branchname = "K_S0_"+hinfo.name;
0042 std::string lambda_branchname = "Lambda0_"+hinfo.name;
0043 std::cout << Ks_branchname << " " << lambda_branchname << std::endl;
0044 RooRealVar Ks_var(Ks_branchname.c_str(),Ks_branchname.c_str(),hinfo.bins.front(),hinfo.bins.back());
0045 RooRealVar lambda_var(lambda_branchname.c_str(),lambda_branchname.c_str(),hinfo.bins.front(),hinfo.bins.back());
0046 Ks_vars.push_back(Ks_var);
0047 lambda_vars.push_back(lambda_var);
0048 }
0049
0050 for(int i=0; i<Ks_vars.size(); i++)
0051 {
0052 Ks_args.add(Ks_vars[i]);
0053 lambda_args.add(lambda_vars[i]);
0054 }
0055
0056 Ks_args.Print();
0057 lambda_args.Print();
0058
0059 RooDataSet Ks_ds("K_S0","K_S0",Ks_args,RooFit::Import(*Ks_tree));
0060 RooDataSet lambda_ds("Lambda0","Lambda0",lambda_args,RooFit::Import(*lambda_tree));
0061
0062 KshortModel kshort_model;
0063 LambdaModel lambda_model;
0064
0065 std::string fd_filename = "/sphenix/tg/tg01/hf/hjheng/HF-analysis/simulation/Pythia_ppMinBias/cascade_feeddown/Cascade_feeddown_fraction.root";
0066 std::vector<std::vector<std::shared_ptr<CorrectionHistogram1D>>> corrections(variables.size());
0067
0068 corrections[0].push_back(std::make_shared<LambdaFeedDownCorrection>(fd_filename,"h_feeddown_frac_xi_all"));
0069 corrections[0].push_back(std::make_shared<EfficiencyCorrection>());
0070 corrections[0].push_back(std::make_shared<GeoAcceptanceCorrection>("/sphenix/u/cdean/analysis/LightFlavorRatios/geometric_acceptance/analysis/plots/Lambda0_to_KS0_geometric_acceptance_ratio.root","pT"));
0071
0072
0073 corrections[1].push_back(std::make_shared<LambdaFeedDownCorrection>(fd_filename,"h_feeddown_frac_xi_eta_all"));
0074 corrections[1].push_back(std::make_shared<TrivialEfficiencyCorrection>("awef"));
0075 corrections[1].push_back(std::make_shared<GeoAcceptanceCorrection>("/sphenix/u/cdean/analysis/LightFlavorRatios/geometric_acceptance/analysis/plots/Lambda0_to_KS0_geometric_acceptance_ratio_eta.root","Lambda0_inGeo_#eta"));
0076
0077
0078 corrections[2].push_back(std::make_shared<LambdaFeedDownCorrection>(fd_filename,"h_feeddown_frac_xi_rapidity_all"));
0079 corrections[2].push_back(std::make_shared<TrivialEfficiencyCorrection>("aweg"));
0080 corrections[2].push_back(std::make_shared<GeoAcceptanceCorrection>("/sphenix/u/cdean/analysis/LightFlavorRatios/geometric_acceptance/analysis/plots/Lambda0_to_KS0_geometric_acceptance_ratio_rap.root","Lambda0_inGeo_y"));
0081
0082
0083 corrections[3].push_back(std::make_shared<LambdaFeedDownCorrection>(fd_filename,"h_feeddown_frac_xi_phi_all"));
0084 corrections[3].push_back(std::make_shared<TrivialEfficiencyCorrection>("aweh"));
0085 corrections[3].push_back(std::make_shared<GeoAcceptanceCorrection>("/sphenix/u/cdean/analysis/LightFlavorRatios/geometric_acceptance/analysis/plots/Lambda0_to_KS0_geometric_acceptance_ratio_phi.root","Lambda0_inGeo_#phi"));
0086
0087 TFile* fout = new TFile("fits.root","RECREATE");
0088
0089 ResonanceRatio analyzer(lambda_model,kshort_model,
0090 fout,"lambdaKsratio","#Lambda/2K_{S}^{0} ratio",1./2.,true,
0091 variables,corrections);
0092
0093 analyzer.calculate_ratios_unbinned(lambda_ds,Ks_ds);
0094 }