Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:11:03

0001 // ----------------------------------------------------------------------------
0002 // 'STrackMatcherComparatorConfig.h'
0003 // Derek Anderson
0004 // 01.30.2024
0005 //
0006 // Configuration struct for 'STrackMatcherComparator' module.
0007 // ----------------------------------------------------------------------------
0008 
0009 #ifndef STRACKMATCHERCOMPARATORCONFIG_H
0010 #define STRACKMATCHERCOMPARATORCONFIG_H
0011 
0012 // c++ utilities
0013 #include <string>
0014 #include <vector>
0015 #include <utility>
0016 
0017 // make common namespaces implicit
0018 using namespace std;
0019 
0020 
0021 
0022 // STrackMatcherComparatorConfig definition -----------------------------------
0023 
0024 struct STrackMatcherComparatorConfig {
0025 
0026   // file options
0027   string outFileName   = "test.hists.root";
0028   string newInFileName = "";
0029   string oldInFileName = "";
0030 
0031   // tree/tuple options
0032   string newTreeTrueName  = "T";
0033   string newTreeRecoName  = "T";
0034   string newTupleTrueName = "ntForEvalComp";
0035   string newTupleRecoName = "ntForEvalComp";
0036   string oldTupleTrueName = "ntp_gtrack";
0037   string oldTupleRecoName = "ntp_track";
0038 
0039   // histogram labels
0040   string newTreeLabel  = "NewTree";
0041   string newTupleLabel = "NewTuple";
0042   string oldTupleLabel = "OldTuple";
0043 
0044   // directory names
0045   vector<string> histDirNames = {
0046     "NewTreeHists",
0047     "NewTupleHists",
0048     "OldTupleHists"
0049   };
0050   vector<string> ratioDirNames = {
0051     "TreeRatios",
0052     "TupleRatios"
0053   };
0054   vector<string> plotDirNames = {
0055     "TreePlots",
0056     "TuplePlots"
0057   };
0058 
0059   // cut options
0060   bool useOnlyPrimTrks = true;
0061   bool doZVtxCut       = true;
0062   bool doPhiCut        = false;
0063 
0064   // cut values
0065   pair<float, float> oddPtFrac = {0.50, 1.50};
0066   pair<float, float> zVtxRange = {-10., 10.};
0067 
0068   // phi cut values
0069   float sigCutVal  = 0.75;
0070   vector<pair<float, float>> phiSectors = {
0071     make_pair(-2.92, 0.12),
0072     make_pair(-2.38, 0.05),
0073     make_pair(-1.93, 0.18),
0074     make_pair(-1.33, 0.07),
0075     make_pair(-0.90, 0.24),
0076     make_pair(-0.29, 0.09),
0077     make_pair(0.23,  0.11),
0078     make_pair(0.73,  0.10),
0079     make_pair(1.28,  0.10),
0080     make_pair(1.81,  0.08),
0081     make_pair(2.23,  0.18),
0082     make_pair(2.80,  0.17)
0083   };
0084 
0085   // style options
0086   pair<uint32_t, uint32_t> fCol = {923, 899};
0087   pair<uint32_t, uint32_t> fMar = {20,  25};
0088   pair<uint32_t, uint32_t> fLin = {1,   1};
0089   pair<uint32_t, uint32_t> fWid = {1,   1};
0090   pair<uint32_t, uint32_t> fFil = {0,   0};
0091 
0092   // plot text parameters
0093   string legOld = "evaluator";
0094   string legNew = "truth matcher";
0095   string header = "";
0096   string count  = "counts";
0097   string norm   = "normalized counts";
0098   string ratio  = "ratio";
0099 
0100   // plot information
0101   vector<string> info = {
0102     "#bf{#it{sPHENIX}} Simulation",
0103     "1 #pi^{-}/event, p_{T} = 10 GeV/c",
0104     "#bf{Only #pi^{-}}"
0105   };
0106 
0107   // plot options
0108   bool doIntNorm       = false;
0109   bool matchVertScales = true;
0110 
0111 };
0112 
0113 #endif
0114 
0115 // end ------------------------------------------------------------------------