Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2026-04-07 08:08:32

0001 #include <anneutral/AnNeutralMeson_micro_dst.h>
0002 #include <fun4all/Fun4AllServer.h>
0003 #include <fun4all/Fun4AllRunNodeInputManager.h>
0004 #include <fun4all/Fun4AllDstInputManager.h>
0005 #include <ffamodules/CDBInterface.h>
0006 #include <phool/recoConsts.h>
0007 
0008 R__LOAD_LIBRARY(libffamodules.so)
0009 R__LOAD_LIBRARY(libfun4all.so)
0010 R__LOAD_LIBRARY(libanneutral.so)
0011 
0012 void micro_DST_analysis(const int runnumber = 47289, const int nevents = 0)
0013 {
0014   //std::string inputfilename = "/sphenix/tg/tg01/coldqcd/vmahaut/AnNeutralMeson/analysis_run2pp_ana509_2024p022_v001/micro_DSTs/merged_DSTs/DST_PHOTON_MICRO_ANNEUTRALMESON_run2pp_ana509_2024p022_v001-000" + std::to_string(runnumber) + ".root";
0015   //std::string inputfilename = "DST_PHOTON_MICRO_ANNEUTRALMESON_run2pp_ana509_2024p022_v001-000" + std::to_string(runnumber) + ".root";
0016   std::string inputfilename = "/sphenix/tg/tg01/coldqcd/vmahaut/AnNeutralMeson/analysis_run2pp_ana509_2024p022_v001_calib01072025/micro_DSTs/merged_DSTs/DST_PHOTON_MICRO_ANNEUTRALMESON_run2pp_ana509_2024p022_v001-000" + std::to_string(runnumber) + ".root";
0017   //std::string inputfilename = "DST_MBD_MICRO_ANNEUTRALMESON_run2pp_ana509_2024p022_v001-000" + std::to_string(runnumber) + ".root";
0018   // /sphenix/tg/tg01/coldqcd/vmahaut/AnNeutralMeson/analysis_run2pp_ana502_nocdbtag_v001/trig_emulator_DSTs/run_53686/DST_TRIGGER_EMULATOR_run2pp_ana502_nocdbtag_v001-00053686-00202.root
0019   std::string inputemulatorname = "/sphenix/tg/tg01/coldqcd/vmahaut/AnNeutralMeson/analysis_run2pp_ana502_nocdbtag_v001/trig_emulator_DSTs/merged_DSTs/DST_TRIGGER_EMULATOR_run2pp_ana502_nocdbtag_v001-000" + std::to_string(runnumber) + ".root";
0020   //std::string inputemulatorname = "DST_TRIGGER_EMULATOR_run2pp_ana502_nocdbtag_v001-000" + std::to_string(runnumber) + ".root";
0021   std::string outputfilename = "/sphenix/user/virgilemahaut/analysis/AnNeutralMeson/macros/new_micro_DST_analysis/analysis_per_run_allruns/analysis_" + std::to_string(runnumber) + ".root";
0022   std::string outputfiletreename = "/sphenix/user/virgilemahaut/analysis/AnNeutralMeson/macros/new_micro_DST_analysis/analysis_per_run_allruns/diphoton_minimal_" + std::to_string(runnumber) + ".root";
0023   //std::string inputfilename = "../combine_out_run_48746_05_1000/OUTDIPHOTON_" + std::to_string(runnumber) + ".root";
0024   //std::string outputfilename = "analysis_per_run_48746_asymmetry/analysis_" + std::to_string(runnumber) + ".root";
0025   
0026   Fun4AllServer *se = Fun4AllServer::instance();
0027   se->Verbosity(0);
0028 
0029   recoConsts *rc = recoConsts::instance();
0030   rc->set_StringFlag("CDB_GLOBALTAG", "ProdA_2024");
0031   rc->set_uint64Flag("TIMESTAMP", runnumber);
0032   rc->set_IntFlag("RUNNUMBER", runnumber);
0033 
0034   Fun4AllInputManager *ingeo = new Fun4AllRunNodeInputManager("DST_GEO");
0035   std::string geoLocation = CDBInterface::instance()->getUrl("calo_geo");
0036   ingeo->AddFile(geoLocation);
0037   se->registerInputManager(ingeo);
0038 
0039   Fun4AllInputManager *in = new Fun4AllDstInputManager("DST_MICRO");
0040   in->fileopen(inputfilename);
0041   se->registerInputManager(in);
0042 
0043   Fun4AllInputManager *in_emulator = new Fun4AllDstInputManager("DST_EMULATOR");
0044   in_emulator->fileopen(inputemulatorname);
0045   se->registerInputManager(in_emulator);
0046   
0047   AnNeutralMeson_micro_dst *AN = new AnNeutralMeson_micro_dst("AnNeutralMeson_micro_dst", runnumber, outputfilename, outputfiletreename);
0048   AN->set_store_tree(false);
0049   std::vector<float> chi2_cuts = {1000}; // {1000, 6, 4, 2};
0050   //std::vector<float> chi2_cuts = {1000, 6, 4, 2};
0051   std::vector<float> ecore_cuts = {1.0}; // {0.5, 1.0, 1.5};
0052   //std::vector<float> ecore_cuts = {0.5, 1.0, 1.5};
0053   float alpha_cut = 0.7;
0054   float pT_cut = 1.0;
0055   AN->set_chi2cut(chi2_cuts);
0056   AN->set_ecorecut(ecore_cuts);
0057   AN->set_alphacut(alpha_cut);
0058   AN->set_ptcut(pT_cut);
0059   AN->set_mbd_trigger_bit_requirement(false);
0060   AN->set_photon_trigger_bit_requirement(true);
0061   AN->set_photon_trigger_efficiency_matching_requirement(true);
0062   AN->set_photon_trigger_efficiency_threshold(90);
0063   AN->set_photon_trigger_emulator_matching_requirement(true);
0064   AN->set_event_mixing(false);
0065   se->registerSubsystem(AN);
0066 
0067   se->run(nevents);
0068   se->End();
0069   se->PrintTimer();
0070   delete se;
0071   
0072   gSystem->Exit(0);
0073 }