![]() |
|
|||
File indexing completed on 2025-08-07 08:12:24
0001 #include "INTTReadTree.h" 0002 #include "INTTXYvtx.h" 0003 0004 void mem_test() 0005 { 0006 string input_directory = "/sphenix/user/ChengWei/INTT/INTT_commissioning/ZeroField/20869"; 0007 string file_name = "beam_inttall-00020869-0000_event_base_ana_cluster_full_survey_3.32_excludeR1500_20kEvent_3HotCut"; 0008 string out_folder_directory = input_directory + "/" + "folder_beam_inttall-00020869-0000_event_base_ana_cluster_full_survey_3.32_excludeR1500_20kEvent_3HotCut_VTXxy_geo1"; 0009 string tree_name = "tree_clu"; 0010 0011 // pair<double, double> beam_origin = {-0.015, 0.012}; 0012 // pair<double, double> beam_origin = {-0.0, 0.0}; 0013 pair<double, double> beam_origin = {0.,-2.}; 0014 pair<double, double> DCA_cut ={-0.5, 0.5}; 0015 // pair<double, double> zvtx_QA_width = {35, 70}; 0016 // double zvtx_QA_ratio = 0.00005; 0017 double phi_diff_cut = 5.72; 0018 int clu_sum_adc_cut = 31; 0019 int clu_size_cut = 4; 0020 int N_clu_cut = 350; 0021 int N_clu_cutl = 20; 0022 0023 bool draw_event_display = false; 0024 double peek = 3.324; 0025 int data_type = 3; // note : data with geometry study 0026 int geo_mode_id = 1; // note : 0 -> perfect geo 0027 int zvtx_cal_require = 15; 0028 int random_seed; 0029 // int random_seed = 65539; 0030 int N_ladder = 14; 0031 double offset_range = 0.2; 0032 0033 vector<string> included_ladder_vec = { 0034 "B0L000S","B0L002S","B0L003S", "B0L005S", "B0L006S", "B0L008S", "B0L009S", 0035 "B1L000S","B1L003S","B1L004S", "B1L007S", "B1L008S", "B1L011S", "B1L012S" 0036 }; 0037 0038 // TFile * file_out = new TFile((out_folder_directory + "/geo_scan.root").c_str(), "recreate"); 0039 // TTree * tree_out = new TTree("tree_geo_scan", "tree_geo_scan"); 0040 // vector<double> offset_x_vec; 0041 // vector<double> offset_y_vec; 0042 // double DCA_inner_fitE; 0043 // double angle_diff_fitE; 0044 0045 // tree_out -> Branch("offset_x_vec", &offset_x_vec); 0046 // tree_out -> Branch("offset_y_vec", &offset_y_vec); 0047 // tree_out -> Branch("DCA_inner_fitE", &DCA_inner_fitE); 0048 // tree_out -> Branch("angle_diff_fitE", &angle_diff_fitE); 0049 0050 for (int trial_i = 0; trial_i < 10000; trial_i++) 0051 { 0052 0053 if (trial_i % 500 == 0) 0054 { 0055 cout<<" start trial : "<<trial_i<<"-------------------- -------------------- -------------------- --------------------"<<endl; 0056 sleep(3); 0057 } 0058 0059 // cout<<" start trial : "<<trial_i<<"-------------------- -------------------- -------------------- --------------------"<<endl; 0060 random_seed = trial_i; 0061 0062 INTTReadTree * INTTClu = new INTTReadTree(data_type, input_directory, file_name, tree_name, clu_size_cut, clu_sum_adc_cut, random_seed, N_ladder, offset_range, included_ladder_vec); 0063 // map<string, pair<double,double>> ladder_offset_map = INTTClu -> GetLadderOffsetMap(); 0064 // for (int ladder_i = 0; ladder_i < N_ladder; ladder_i++) 0065 // { 0066 // offset_x_vec.push_back( ladder_offset_map[ included_ladder_vec[ladder_i].c_str() ].first ); 0067 // offset_y_vec.push_back( ladder_offset_map[ included_ladder_vec[ladder_i].c_str() ].second); 0068 // } 0069 0070 // INTTXYvtx * MCxy = new INTTXYvtx(INTTClu -> GetRunType(), out_folder_directory, beam_origin, geo_mode_id, phi_diff_cut, DCA_cut, N_clu_cutl, N_clu_cut, draw_event_display, peek, 0, 3, false); 0071 // cout<<"Total event : "<<INTTClu -> GetNEvt()<<endl; 0072 0073 0074 // for (int event_i = 0; event_i < 20000; event_i ++) 0075 // { 0076 // INTTClu -> EvtInit(event_i); 0077 // INTTClu -> EvtSetCluGroup(); 0078 0079 // MCxy -> ProcessEvt( 0080 // event_i, 0081 // INTTClu -> temp_sPH_inner_nocolumn_vec, INTTClu -> temp_sPH_outer_nocolumn_vec, 0082 // INTTClu -> temp_sPH_nocolumn_vec, INTTClu -> temp_sPH_nocolumn_rz_vec, 0083 // INTTClu -> GetNvtxMC(), INTTClu -> GetTrigZvtxMC(), INTTClu -> GetPhiCheckTag(), INTTClu -> GetBCOFull() 0084 // ); 0085 0086 // MCxy -> ClearEvt(); 0087 // INTTClu -> EvtClear(); 0088 // } 0089 // MCxy -> PrintPlots(); 0090 0091 // vector<pair<double,double>> out_vtx = MCxy -> MacroVTXSquare(3,9, false); 0092 // cout<<"The best vertex throughout the scan: "<<out_vtx[0].first<<" "<<out_vtx[0].second<<endl; 0093 // cout<<"The origin during that scan: "<<out_vtx[1].first<<" "<<out_vtx[1].second<<endl; 0094 0095 // DCA_inner_fitE = out_vtx[2].first; 0096 // angle_diff_fitE = out_vtx[2].second; 0097 0098 // TH2F * DCA_distance_inner_phi_peak_final = MCxy -> GetHistFinal()[0]; 0099 // TH2F * angle_diff_inner_phi_peak_final = MCxy -> GetHistFinal()[1]; 0100 0101 // file_out -> cd(); 0102 // // tree_out->SetDirectory(file_out); 0103 // DCA_distance_inner_phi_peak_final -> Write(Form("DCA_distance_inner_phi_peak_final_%d", trial_i)); 0104 // angle_diff_inner_phi_peak_final -> Write(Form("angle_diff_inner_phi_peak_final_%d", trial_i)); 0105 // tree_out -> Fill(); 0106 0107 // MCxy -> EndRun(); 0108 INTTClu -> EndRun(); 0109 0110 delete INTTClu; 0111 // delete MCxy; 0112 0113 // offset_x_vec.clear(); 0114 // offset_y_vec.clear(); 0115 0116 // DCA_distance_inner_phi_peak_final -> Delete(); 0117 // angle_diff_inner_phi_peak_final -> Delete(); 0118 } 0119 0120 // cout<<"test : "<<endl; 0121 0122 // file_out -> cd(); 0123 // // tree_out->SetDirectory(file_out); 0124 // tree_out -> Write("", TObject::kOverwrite); 0125 0126 0127 // MCxy -> MacroVTXxyCorrection(0,1,2,0.,360.); // note : no phi correction, calculate vertexXY 0128 // MCxy -> MacroVTXxyCorrection(0,1,2,0.,360.); 0129 0130 // MCxy -> MacroVTXxyCorrection_new(50, 250, 21); 0131 0132 } 0133 0134 0135 // cout<< INTTClu -> temp_sPH_inner_nocolumn_vec.size()<<" " 0136 // << INTTClu -> temp_sPH_outer_nocolumn_vec.size()<<" " 0137 // << INTTClu -> temp_sPH_nocolumn_vec.size()<<" " 0138 // << INTTClu -> temp_sPH_nocolumn_rz_vec.size()<<" " 0139 // << INTTClu -> GetNvtxMC()<<" " 0140 // << INTTClu -> GetTrigZvtxMC()<<" " 0141 // << INTTClu -> GetPhiCheckTag()<<" "<<endl;
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |