Back to home page

sPhenix code displayed by LXR

 
 

    


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

0001 #include "../ColumnCheck.h"
0002 
0003 R__LOAD_LIBRARY(../libColumnCheck.so)
0004 
0005 void Run_ColumnCheck(
0006   int process_id = 0,
0007   int run_num = 54280,
0008   int nevents = -1,
0009   string input_directory = "/sphenix/user/ChengWei/INTT/INTT/general_codes/CWShih/INTTBcoResolution/macro",
0010   string input_filename = "file_list_54280_intt.txt",
0011   string output_directory = "/sphenix/tg/tg01/commissioning/INTT/work/cwshih/seflgendata/run_54280_HR_Feb102025/Run5/EvtVtxZ/ColumnCheck",
0012   
0013   // todo : modify here
0014   std::string output_file_name_suffix = "",
0015   double SetMbinFloat = 70, // note : 0 - 100
0016             
0017   std::pair<double, double> VtxZRange = {-30, 30}, // note: MBD vtx Z
0018   bool IsZClustering = false,
0019   // std::pair<bool, std::pair<double, double>> isClusQA = {true, {35,40}}, // note : {adc, phi size}
0020  
0021   bool ColMulMask = false
0022 )
0023 {
0024   std::pair<double, double> vertexXYIncm_data = {-0.0220728, 0.222956};
0025 
0026   // std::pair<double, double> vertexXYIncm_MC = {-0.0218978, 0.223183}; // note : HIJING
0027   // std::pair<double, double> vertexXYIncm_MC = {-0.0216964, 0.223331}; // note : HIJING + strangeness increase
0028   std::pair<double, double> vertexXYIncm_MC = {-0.0218667, 0.223296}; // note : AMPT
0029   // std::pair<double, double> vertexXYIncm_MC = {-0.021907, 0.223293}; // note : EPOS
0030 
0031   std::pair<double, double> vertexXYIncm = (run_num == -1) ? vertexXYIncm_MC : vertexXYIncm_data;
0032   bool BcoFullDiffCut = (run_num == -1) ? false : true;
0033 
0034   std::cout<<"vertexXYIncm: "<<vertexXYIncm.first<<" "<<vertexXYIncm.second<<std::endl;
0035 
0036   // Division : -------------------------------------------------------------------------------------------------------------------------------------------------------------------
0037   // note : baseline
0038   std::string final_output_directory = output_directory + "/baseline";
0039   system(Form("mkdir -p %s/completed", final_output_directory.c_str()));
0040 
0041   std::pair<bool, std::pair<double, double>> isClusQA = {true, {35,40}}; // note : {adc, phi size}
0042 
0043   ColumnCheck * CC = new ColumnCheck(
0044     process_id,
0045     run_num,
0046     nevents,
0047     input_directory,
0048     input_filename,
0049     final_output_directory,
0050 
0051     output_file_name_suffix,
0052     vertexXYIncm,
0053     SetMbinFloat,
0054 
0055     VtxZRange,
0056     IsZClustering,
0057     BcoFullDiffCut,
0058     isClusQA, // note : {adc, phi size}
0059 
0060     ColMulMask
0061   );
0062 
0063   string final_output_file_name = CC->GetOutputFileName();
0064   cout<<"final_output_file_name: "<<final_output_file_name<<endl;
0065   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()));  
0066 
0067   CC -> MainProcess();
0068   CC -> EndRun();
0069 
0070   system(Form("mv %s/%s %s/completed", final_output_directory.c_str(), final_output_file_name.c_str(), final_output_directory.c_str()));
0071 
0072 
0073   // Division : -------------------------------------------------------------------------------------------------------------------------------------------------------------------
0074   // note : noAdcCut
0075   final_output_directory = output_directory + "/noAdcCut";
0076   system(Form("mkdir -p %s/completed", final_output_directory.c_str()));
0077 
0078   isClusQA = {true, {0,40}}; // note : {adc, phi size}
0079 
0080   ColumnCheck * CC1 = new ColumnCheck(
0081     process_id,
0082     run_num,
0083     nevents,
0084     input_directory,
0085     input_filename,
0086     final_output_directory,
0087 
0088     output_file_name_suffix,
0089     vertexXYIncm,
0090     SetMbinFloat,
0091 
0092     VtxZRange,
0093     IsZClustering,
0094     BcoFullDiffCut,
0095     isClusQA, // note : {adc, phi size}
0096 
0097     ColMulMask
0098   );
0099 
0100   string final_output_file_name1 = CC1->GetOutputFileName();
0101   cout<<"final_output_file_name1: "<<final_output_file_name1<<endl;
0102   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()));  
0103 
0104   CC1 -> MainProcess();
0105   CC1 -> EndRun();
0106 
0107   system(Form("mv %s/%s %s/completed", final_output_directory.c_str(), final_output_file_name1.c_str(), final_output_directory.c_str()));
0108 
0109 
0110   // Division : -------------------------------------------------------------------------------------------------------------------------------------------------------------------
0111   // note : 50AdcCut
0112   final_output_directory = output_directory + "/50AdcCut";
0113   system(Form("mkdir -p %s/completed", final_output_directory.c_str()));
0114 
0115   isClusQA = {true, {50,40}}; // note : {adc, phi size}
0116 
0117   ColumnCheck * CC2 = new ColumnCheck(
0118     process_id,
0119     run_num,
0120     nevents,
0121     input_directory,
0122     input_filename,
0123     final_output_directory,
0124 
0125     output_file_name_suffix,
0126     vertexXYIncm,
0127     SetMbinFloat,
0128 
0129     VtxZRange,
0130     IsZClustering,
0131     BcoFullDiffCut,
0132     isClusQA, // note : {adc, phi size}
0133 
0134     ColMulMask
0135   );
0136 
0137   string final_output_file_name2 = CC2->GetOutputFileName();
0138   cout<<"final_output_file_name2: "<<final_output_file_name2<<endl;
0139   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()));  
0140 
0141   CC2 -> MainProcess();
0142   CC2 -> EndRun();
0143 
0144   system(Form("mv %s/%s %s/completed", final_output_directory.c_str(), final_output_file_name2.c_str(), final_output_directory.c_str()));
0145   
0146 
0147   // Division : -------------------------------------------------------------------------------------------------------------------------------------------------------------------
0148   // note : noPhiCut
0149   final_output_directory = output_directory + "/noPhiCut";
0150   system(Form("mkdir -p %s/completed", final_output_directory.c_str()));
0151 
0152   isClusQA = {true, {35,350}}; // note : {adc, phi size}
0153 
0154   ColumnCheck * CC3 = new ColumnCheck(
0155     process_id,
0156     run_num,
0157     nevents,
0158     input_directory,
0159     input_filename,
0160     final_output_directory,
0161 
0162     output_file_name_suffix,
0163     vertexXYIncm,
0164     SetMbinFloat,
0165 
0166     VtxZRange,
0167     IsZClustering,
0168     BcoFullDiffCut,
0169     isClusQA, // note : {adc, phi size}
0170 
0171     ColMulMask
0172   );
0173 
0174   string final_output_file_name3 = CC3->GetOutputFileName();
0175   cout<<"final_output_file_name3: "<<final_output_file_name3<<endl;
0176   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()));  
0177 
0178   CC3 -> MainProcess();
0179   CC3 -> EndRun();
0180 
0181   system(Form("mv %s/%s %s/completed", final_output_directory.c_str(), final_output_file_name3.c_str(), final_output_directory.c_str()));
0182 
0183   return;
0184 }