Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-09 08:12:19

0001 #include "../TrackletHistogramNew.h"
0002 
0003 R__LOAD_LIBRARY(../libTrackletHistogramNew.so)
0004 
0005 TH2D * GetGoodColMap (std::string ColMulMask_map_dir_in, std::string ColMulMask_map_file_in, std::string map_name_in)
0006 {
0007   TFile * f = TFile::Open(Form("%s/%s", ColMulMask_map_dir_in.c_str(), ColMulMask_map_file_in.c_str()));
0008   TH2D * h = (TH2D*)f->Get(map_name_in.c_str());
0009   return h;
0010 }
0011 
0012 void Run_PrepareHist(
0013   int process_id = 0,
0014   int run_num = 54280,
0015   int nevents = -1,
0016   string input_directory = "/sphenix/user/ChengWei/INTT/INTT/general_codes/CWShih/INTTBcoResolution/macro",
0017   string input_filename = "file_list_54280_intt.txt",
0018   string output_directory = "/sphenix/tg/tg01/commissioning/INTT/work/cwshih/seflgendata/run_54280_HR_Feb102025/Run5/EvtVtxZ/TrackHist",
0019   
0020   // todo : modify here
0021   std::string output_file_name_suffix = "",
0022   std::pair<double, double> vertexXYIncm = {-0.0220728, 0.222956},
0023 
0024   std::pair<bool, TH1D*> vtxZReweight = {false, nullptr},
0025   bool BcoFullDiffCut = true,
0026   bool INTT_vtxZ_QA = true,
0027   // std::pair<bool, std::pair<double, double>> isClusQA = {true, {35, 350}}, // note : {adc, phi size}
0028 
0029   bool HaveGeoOffsetTag = false,
0030   std::pair<bool, int> SetRandomHits = {false, 0},
0031   bool RandInttZ = false,
0032   bool ColMulMask = true,
0033 
0034   std::string ColMulMask_map_mother_dir = "/sphenix/user/ChengWei/sPH_dNdeta/Run24AuAuMC/Sim_HIJING_MDC2_ana467_20250225/Run7/EvtVtxZ/ColumnCheck"
0035 
0036   // std::string ColMulMask_map_dir = "/sphenix/tg/tg01/commissioning/INTT/work/cwshih/seflgendata/run_54280_HR_Dec042024/completed/Run3/EvtVtxZ/ColumnCheck/completed/MulMap/completed",
0037   // std::string ColMulMask_map_file = "MulMap_BcoFullDiffCut_Mbin50_VtxZ-30to30cm_ClusQAAdc35PhiSize500_00054280.root"
0038 
0039   // std::string ColMulMask_map_dir = "/sphenix/tg/tg01/commissioning/INTT/work/cwshih/seflgendata/run_54280_HR_Dec042024/completed/Run3/EvtVtxZ/ColumnCheck_NoClusQA/completed/MulMap/completed",
0040   // std::string ColMulMask_map_file = "MulMap_BcoFullDiffCut_Mbin50_VtxZ-30to30cm_00054280.root"
0041   
0042   // std::string ColMulMask_map_dir = "/sphenix/tg/tg01/commissioning/INTT/work/cwshih/seflgendata/run_54280_HR_Jan172025/Run4/EvtVtxZ/ColumnCheck_noPhiCut/completed/MulMap/completed",
0043   // std::string ColMulMask_map_file = "MulMap_BcoFullDiffCut_Mbin70_VtxZ-30to30cm_ClusQAAdc35PhiSize350_00054280.root"
0044 )
0045 {
0046   
0047   // Division : -------------------------------------------------------------------------------------------------------------------------------------------------------------------
0048   // note : baseline
0049   std::string final_output_directory = output_directory + "/baseline";
0050   system(Form("mkdir -p %s/completed", final_output_directory.c_str()));
0051 
0052   std::pair<bool, std::pair<double, double>> isClusQA = {true, {35,40}}; // note : {adc, phi size}
0053 
0054   std::string ColMulMask_map_dir = ColMulMask_map_mother_dir + "/baseline/completed/MulMap/completed";
0055   std::string ColMulMask_map_file = Form("MulMap_BcoFullDiffCut_Mbin70_VtxZ-30to30cm_ClusQAAdc%.0fPhiSize%.0f_00054280.root", isClusQA.second.first, isClusQA.second.second);
0056 
0057   TrackletHistogramNew * TLHN = new TrackletHistogramNew(
0058     process_id,
0059     run_num,
0060     nevents,
0061     input_directory,
0062     input_filename,
0063     final_output_directory,
0064 
0065     output_file_name_suffix,
0066     vertexXYIncm,
0067 
0068     vtxZReweight,
0069     BcoFullDiffCut,
0070     INTT_vtxZ_QA,
0071     isClusQA, // note : {adc, phi size}
0072     HaveGeoOffsetTag,
0073     SetRandomHits,
0074     RandInttZ,
0075     ColMulMask
0076   );
0077 
0078   if (ColMulMask){
0079     TLHN -> SetGoodColMap(
0080       GetGoodColMap(ColMulMask_map_dir, ColMulMask_map_file, TLHN->GetGoodColMapName())
0081     );
0082   }
0083 
0084   string final_output_file_name = TLHN->GetOutputFileName();
0085   cout<<"final_output_file_name: "<<final_output_file_name<<endl;
0086   system(Form("if [ -f %s/completed/%s ]; then rm %s/completed/%s; fi;", final_output_directory.c_str(), final_output_file_name.c_str(), final_output_directory.c_str(), final_output_file_name.c_str()));  
0087 
0088   TLHN -> MainProcess();
0089   TLHN -> EndRun();
0090 
0091   system(Form("mv %s/%s %s/completed", final_output_directory.c_str(), final_output_file_name.c_str(), final_output_directory.c_str()));
0092 
0093   // Division : -------------------------------------------------------------------------------------------------------------------------------------------------------------------
0094   // note : noAdcCut
0095   final_output_directory = output_directory + "/noAdcCut";
0096   system(Form("mkdir -p %s/completed", final_output_directory.c_str()));
0097 
0098   isClusQA = {true, {0,40}}; // note : {adc, phi size}
0099 
0100   ColMulMask_map_dir = ColMulMask_map_mother_dir + "/noAdcCut/completed/MulMap/completed";
0101   ColMulMask_map_file = Form("MulMap_BcoFullDiffCut_Mbin70_VtxZ-30to30cm_ClusQAAdc%.0fPhiSize%.0f_00054280.root", isClusQA.second.first, isClusQA.second.second);
0102 
0103   TrackletHistogramNew * TLHN1 = new TrackletHistogramNew(
0104     process_id,
0105     run_num,
0106     nevents,
0107     input_directory,
0108     input_filename,
0109     final_output_directory,
0110 
0111     output_file_name_suffix,
0112     vertexXYIncm,
0113 
0114     vtxZReweight,
0115     BcoFullDiffCut,
0116     INTT_vtxZ_QA,
0117     isClusQA, // note : {adc, phi size}
0118     HaveGeoOffsetTag,
0119     SetRandomHits,
0120     RandInttZ,
0121     ColMulMask
0122   );
0123 
0124   if (ColMulMask){
0125     TLHN1 -> SetGoodColMap(
0126       GetGoodColMap(ColMulMask_map_dir, ColMulMask_map_file, TLHN1->GetGoodColMapName())
0127     );
0128   }
0129 
0130   string final_output_file_name1 = TLHN1->GetOutputFileName();
0131   cout<<"final_output_file_name1: "<<final_output_file_name1<<endl;
0132   system(Form("if [ -f %s/completed/%s ]; then rm %s/completed/%s; fi;", final_output_directory.c_str(), final_output_file_name1.c_str(), final_output_directory.c_str(), final_output_file_name1.c_str()));  
0133 
0134   TLHN1 -> MainProcess();
0135   TLHN1 -> EndRun();
0136 
0137   system(Form("mv %s/%s %s/completed", final_output_directory.c_str(), final_output_file_name1.c_str(), final_output_directory.c_str()));
0138 
0139   // Division : -------------------------------------------------------------------------------------------------------------------------------------------------------------------
0140   // note : 50AdcCut
0141   final_output_directory = output_directory + "/50AdcCut";
0142   system(Form("mkdir -p %s/completed", final_output_directory.c_str()));
0143 
0144   isClusQA = {true, {50,40}}; // note : {adc, phi size}
0145 
0146   ColMulMask_map_dir = ColMulMask_map_mother_dir + "/50AdcCut/completed/MulMap/completed";
0147   ColMulMask_map_file = Form("MulMap_BcoFullDiffCut_Mbin70_VtxZ-30to30cm_ClusQAAdc%.0fPhiSize%.0f_00054280.root", isClusQA.second.first, isClusQA.second.second);
0148 
0149   TrackletHistogramNew * TLHN2 = new TrackletHistogramNew(
0150     process_id,
0151     run_num,
0152     nevents,
0153     input_directory,
0154     input_filename,
0155     final_output_directory,
0156 
0157     output_file_name_suffix,
0158     vertexXYIncm,
0159 
0160     vtxZReweight,
0161     BcoFullDiffCut,
0162     INTT_vtxZ_QA,
0163     isClusQA, // note : {adc, phi size}
0164     HaveGeoOffsetTag,
0165     SetRandomHits,
0166     RandInttZ,
0167     ColMulMask
0168   );
0169 
0170   if (ColMulMask){
0171     TLHN2 -> SetGoodColMap(
0172       GetGoodColMap(ColMulMask_map_dir, ColMulMask_map_file, TLHN2->GetGoodColMapName())
0173     );
0174   }
0175 
0176   string final_output_file_name2 = TLHN2->GetOutputFileName();
0177   cout<<"final_output_file_name2: "<<final_output_file_name2<<endl;
0178   system(Form("if [ -f %s/completed/%s ]; then rm %s/completed/%s; fi;", final_output_directory.c_str(), final_output_file_name2.c_str(), final_output_directory.c_str(), final_output_file_name2.c_str()));  
0179 
0180   TLHN2 -> MainProcess();
0181   TLHN2 -> EndRun();
0182 
0183   system(Form("mv %s/%s %s/completed", final_output_directory.c_str(), final_output_file_name2.c_str(), final_output_directory.c_str()));
0184 
0185   // Division : -------------------------------------------------------------------------------------------------------------------------------------------------------------------
0186   // note : noPhiCut
0187   final_output_directory = output_directory + "/noPhiCut";
0188   system(Form("mkdir -p %s/completed", final_output_directory.c_str()));
0189 
0190   isClusQA = {true, {35,350}}; // note : {adc, phi size}
0191 
0192   ColMulMask_map_dir = ColMulMask_map_mother_dir + "/noPhiCut/completed/MulMap/completed";
0193   ColMulMask_map_file = Form("MulMap_BcoFullDiffCut_Mbin70_VtxZ-30to30cm_ClusQAAdc%.0fPhiSize%.0f_00054280.root", isClusQA.second.first, isClusQA.second.second);
0194 
0195   TrackletHistogramNew * TLHN3 = new TrackletHistogramNew(
0196     process_id,
0197     run_num,
0198     nevents,
0199     input_directory,
0200     input_filename,
0201     final_output_directory,
0202 
0203     output_file_name_suffix,
0204     vertexXYIncm,
0205 
0206     vtxZReweight,
0207     BcoFullDiffCut,
0208     INTT_vtxZ_QA,
0209     isClusQA, // note : {adc, phi size}
0210     HaveGeoOffsetTag,
0211     SetRandomHits,
0212     RandInttZ,
0213     ColMulMask
0214   );
0215 
0216   if (ColMulMask){
0217     TLHN3 -> SetGoodColMap(
0218       GetGoodColMap(ColMulMask_map_dir, ColMulMask_map_file, TLHN3->GetGoodColMapName())
0219     );
0220   }
0221 
0222   string final_output_file_name3 = TLHN3->GetOutputFileName();
0223   cout<<"final_output_file_name3: "<<final_output_file_name3<<endl;
0224   system(Form("if [ -f %s/completed/%s ]; then rm %s/completed/%s; fi;", final_output_directory.c_str(), final_output_file_name3.c_str(), final_output_directory.c_str(), final_output_file_name3.c_str()));  
0225 
0226   TLHN3 -> MainProcess();
0227   TLHN3 -> EndRun();
0228 
0229   system(Form("mv %s/%s %s/completed", final_output_directory.c_str(), final_output_file_name3.c_str(), final_output_directory.c_str()));
0230 
0231   return;
0232 }