File indexing completed on 2023-03-17 11:22:40
0001 #ifndef RecoTracker_MkFitCore_standalone_ConfigStandalone_h
0002 #define RecoTracker_MkFitCore_standalone_ConfigStandalone_h
0003
0004 #include "RecoTracker/MkFitCore/interface/Config.h"
0005
0006 #include <string>
0007 #include <map>
0008 #include <vector>
0009
0010 namespace mkfit {
0011
0012 class TrackerInfo;
0013 class IterationsInfo;
0014
0015 void execTrackerInfoCreatorPlugin(const std::string& base, TrackerInfo& ti, IterationsInfo& ii, bool verbose = false);
0016
0017
0018
0019
0020 enum seedOpts { simSeeds, cmsswSeeds, findSeeds };
0021 typedef std::map<std::string, std::pair<seedOpts, std::string> > seedOptsMap;
0022
0023
0024 enum cleanOpts { noCleaning, cleanSeedsN2, cleanSeedsPure, cleanSeedsBadLabel };
0025 typedef std::map<std::string, std::pair<cleanOpts, std::string> > cleanOptsMap;
0026
0027
0028 enum matchOpts { trkParamBased, hitBased, labelBased };
0029 typedef std::map<std::string, std::pair<matchOpts, std::string> > matchOptsMap;
0030
0031
0032
0033 namespace Config {
0034
0035 extern TrackerInfo TrkInfo;
0036 extern IterationsInfo ItrInfo;
0037
0038 extern std::string geomPlugin;
0039
0040
0041 constexpr int FileVersion = 1;
0042
0043
0044 extern int nTracks;
0045 extern int nEvents;
0046 extern int nItersCMSSW;
0047 extern bool loopOverFile;
0048
0049
0050
0051
0052 constexpr float nSigma = 3.;
0053 constexpr float minDPhi = 0.01;
0054 constexpr float maxDPhi = Const::PI;
0055 constexpr float minDEta = 0.;
0056 constexpr float maxDEta = 1.0;
0057
0058
0059 constexpr int NiterSim = 10;
0060
0061 constexpr float beamspotX = 0.1;
0062 constexpr float beamspotY = 0.1;
0063 constexpr float beamspotZ = 1.0;
0064
0065
0066
0067 constexpr float minSimPt = 1;
0068 constexpr float maxSimPt = 10.;
0069
0070
0071 constexpr float minSimEta = -2.4;
0072 constexpr float maxSimEta = 2.4;
0073
0074
0075
0076
0077 constexpr float hitposerrXY = 0.01;
0078 constexpr float hitposerrZ = 0.1;
0079 constexpr float hitposerrR = Config::hitposerrXY / 10.0f;
0080 constexpr float varXY = Config::hitposerrXY * Config::hitposerrXY;
0081 constexpr float varZ = Config::hitposerrZ * Config::hitposerrZ;
0082 constexpr float varR = Config::hitposerrR * Config::hitposerrR;
0083
0084
0085 constexpr float X0 =
0086 9.370;
0087 constexpr float xr =
0088 0.1;
0089
0090
0091
0092 constexpr int nlayers_per_seed_max = 4;
0093 constexpr float chi2seedcut = 9.0;
0094 constexpr float lay01angdiff =
0095 0.0634888;
0096 constexpr float lay02angdiff = 0.11537;
0097 constexpr float dEtaSeedTrip =
0098 0.06;
0099 constexpr float dPhiSeedTrip =
0100 0.0458712;
0101
0102
0103 constexpr float seed_z0cut = beamspotZ * 3.0f;
0104 constexpr float seed_z1cut = hitposerrZ * 3.6f;
0105 constexpr float seed_d0cut = 0.5f;
0106 extern bool cf_seeding;
0107
0108
0109 constexpr float maxCurvR = (100 * minSimPt) / (Const::sol * Bfield);
0110
0111
0112
0113 constexpr float blowupfit = 10.0;
0114 constexpr float ptinverr049 =
0115 0.0078;
0116 constexpr float phierr049 = 0.0017;
0117 constexpr float thetaerr049 = 0.0033;
0118
0119 constexpr float ptinverr012 = 0.12007;
0120 constexpr float phierr012 = 1.0;
0121 constexpr float thetaerr012 = 0.2;
0122
0123
0124 extern bool cf_fitting;
0125
0126 extern bool mtvLikeValidation;
0127 extern bool mtvRequireSeeds;
0128
0129 extern int cmsSelMinLayers;
0130
0131
0132 extern int nMinFoundHits;
0133 constexpr float minCMSSWMatchChi2[6] = {100, 100, 50, 50, 30, 20};
0134 constexpr float minCMSSWMatchdPhi[6] = {0.2, 0.2, 0.1, 0.05, 0.01, 0.005};
0135 extern bool quality_val;
0136 extern bool sim_val_for_cmssw;
0137 extern bool sim_val;
0138 extern bool cmssw_val;
0139 extern bool fit_val;
0140 extern bool readSimTrackStates;
0141 extern bool inclusiveShorts;
0142 extern bool keepHitInfo;
0143 extern bool tryToSaveSimInfo;
0144 extern matchOpts cmsswMatchingFW;
0145 extern matchOpts cmsswMatchingBK;
0146
0147
0148 extern bool useDeadModules;
0149
0150
0151 extern int numHitsPerTask;
0152
0153
0154 extern seedOpts seedInput;
0155 extern cleanOpts seedCleaning;
0156 extern bool readCmsswTracks;
0157
0158 extern bool dumpForPlots;
0159
0160 extern bool kludgeCmsHitErrors;
0161 extern bool backwardFit;
0162 extern bool backwardSearch;
0163
0164 extern int numThreadsSimulation;
0165 extern int finderReportBestOutOfN;
0166
0167 extern bool includePCA;
0168
0169
0170
0171 extern bool silent;
0172 extern bool json_verbose;
0173 extern bool json_dump_before;
0174 extern bool json_dump_after;
0175 extern std::vector<std::string> json_patch_filenames;
0176 extern std::vector<std::string> json_load_filenames;
0177 extern std::string json_save_iters_fname_fmt;
0178 extern bool json_save_iters_include_iter_info_preamble;
0179
0180
0181
0182 void recalculateDependentConstants();
0183
0184 }
0185
0186 }
0187
0188 #endif