|
|
|||
File indexing completed on 2026-10-15 08:17:25
0001 #ifndef FINALIZE_HISTS_H 0002 #define FINALIZE_HISTS_H 0003 #include <cstdlib> 0004 #include "TString.h" 0005 #ifndef CORRAL_DIR_DEFAULT 0006 #define CORRAL_DIR_DEFAULT "./" 0007 #endif 0008 inline TString CorralDir(){ 0009 const char* e = getenv("CORRAL_DIR"); 0010 TString d = (e && *e) ? TString(e) : TString(CORRAL_DIR_DEFAULT); 0011 if (!d.EndsWith("/")) d += "/"; 0012 return d; 0013 } 0014 // 0015 // Finalize configuration (README_Finalize.md). Edit this file to choose what Finalize processes. 0016 // 0017 // FINALIZE_SET : default dataset to combine = lists/<set>/ (manifest.txt gives nlists) and 0018 // root/<set>/chunks/<prefix>_NN.root (made by run_m_array.bash; <prefix> = CorralFilePrefix(set): 0019 // corral_m for ana532, corral from ana573 on); -d <dataset> overrides 0020 // FINALIZE_REF : single-job full-stats reference to compare against, root/<dataset>/FINALIZE_REF 0021 // CorralDir() : project directory holding lists/ and root/ = $CORRAL_DIR if set, else the source 0022 // tree the binary was built from (CORRAL_DIR_DEFAULT, set by CMakeLists.txt) 0023 // FinalizeHists: histogram BASE names; Finalize appends _<ipaty> for every pairtype, so 0024 // "hmult" -> hmult_0 .. hmult_15, "hrho2_1" -> hrho2_1_0 .. hrho2_1_15. 0025 // Naming in the corral_m root files: 0026 // hzvtx, hmult, hmult1, hmult2, hy1, hy2 (per pairtype) 0027 // hrho2_<ir2> rho2(S) ir2: 0=(y1,y2) 1=(dy,dphi) 2=(dy,dq) 0028 // hrho1rho1_<ir2> rho2(M) 0029 // hC2_<ir2>, hR2_<ir2> 0030 // hrho2C_1, hC2C_1, hR2C_1 crossing-corrected (dy,dphi) 0031 // hMempty_1 # used Zvtx slices with empty rho2(M) 0032 // hR2dy, hR2dphi, hR2yydy, hR2dq, hCQ, hQsib, hQmix, hMinv_S, hMinv_M, hMinv 0033 // 0034 static const char* FINALIZE_SET = "ana532"; // default dataset; -d <dataset> overrides 0035 //---- File-name convention per dataset (user 2026-09-27: the dataset decides, not a file-exists guess). 0036 //---- ana532 was made when the binary was corral_m: root/ana532/corral_m.root, chunks/corral_m_NN.root. 0037 //---- Every later dataset (ana573 on): root/<set>/corral.root, chunks/corral_NN.root. Add a dataset to 0038 //---- the legacy list only if it was produced with the old names. 0039 inline const char* CorralFilePrefix(const char* set){ 0040 static const char* LEGACY[] = { "ana532" }; 0041 for (const char* l : LEGACY) if (TString(set)==l) return "corral_m"; 0042 return "corral"; 0043 } 0044 static const double FINALIZE_FIELD = 1.4; // must match `double field` in corral_loop.cxx (crossing dirty side) 0045 // 0046 // Zvtx-average validity (README_Finalize step 3, option A): the threshold N_min is now PER PAIRTYPE, 0047 // the 3rd field of PairTypes_Info in PairTypes.h (user 2026-09-26). The environment variable 0048 // FINALIZE_NEXPMIN overrides it for all pairtypes (scans). 0049 // 0050 // CF names (hrho2_<ir2>, hrho1rho1_<ir2>, hC2_<ir2>, hR2_<ir2>, hrho2C_1, hC2C_1, hR2C_1) get the full 0051 // per-zvtx-bin treatment (README_Finalize step 2); any other name is a plain sum over chunks. 0052 static const char* FinalizeHists[] = { 0053 "hzvtx", 0054 "hmult", 0055 "hmult1", 0056 "hmult2", 0057 "hrho2_0", 0058 "hrho1rho1_0", 0059 "hC2_0", 0060 "hR2_0", 0061 "hrho2_1", 0062 "hrho1rho1_1", 0063 "hC2_1", 0064 "hR2_1", 0065 "hrho2C_1", 0066 "hC2C_1", 0067 "hR2C_1", 0068 }; 0069 static const int NFINALIZEHISTS = sizeof(FinalizeHists)/sizeof(FinalizeHists[0]); 0070 0071 #endif
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|