#include <MuonPathAnalyzerPerSL.h>
Public Member Functions | |
int | bxTolerance (void) |
void | finish () override |
bool | hasPosRF (int wh, int sec) |
void | initialise (const edm::EventSetup &iEventSetup) override |
cmsdt::MP_QUALITY | minQuality (void) |
MuonPathAnalyzerPerSL (const edm::ParameterSet &pset, edm::ConsumesCollector &iC) | |
void | run (edm::Event &iEvent, const edm::EventSetup &iEventSetup, MuonPathPtrs &inMpath, MuonPathPtrs &outMPath) override |
void | run (edm::Event &iEvent, const edm::EventSetup &iEventSetup, MuonPathPtrs &inMpath, std::vector< cmsdt::metaPrimitive > &metaPrimitives) override |
void | setBXTolerance (int t) |
void | setChiSquareThreshold (float ch2Thr) |
void | setMinQuality (cmsdt::MP_QUALITY q) |
~MuonPathAnalyzerPerSL () override | |
Public Member Functions inherited from MuonPathAnalyzer | |
MuonPathAnalyzer (const edm::ParameterSet &pset, edm::ConsumesCollector &iC) | |
virtual | ~MuonPathAnalyzer () |
Public Attributes | |
int | chosen_sl_ |
const DTGeometry * | dtGeo_ |
edm::ESGetToken< DTGeometry, MuonGeometryRecord > | dtGeomH |
edm::FileInPath | shift_filename_ |
std::map< int, float > | shiftinfo_ |
Private Attributes | |
int | bxTolerance_ |
int | cellLayout_ [cmsdt::NUM_LAYERS] |
double | chi2corTh_ |
double | chi2Th_ |
float | chiSquareThreshold_ |
bool | debug_ |
cmsdt::LATERAL_CASES | lateralities_ [cmsdt::NUM_LATERALITIES][cmsdt::NUM_LAYERS] |
cmsdt::LATQ_TYPE | latQuality_ [cmsdt::NUM_LATERALITIES] |
cmsdt::MP_QUALITY | minQuality_ |
double | tanPhiTh_ |
double | tanPsi_precision_ |
int | totalNumValLateralities_ |
bool | use_LSB_ |
double | x_precision_ |
Static Private Attributes | |
static const int | LAYER_ARRANGEMENTS_ [cmsdt::NUM_LAYERS][cmsdt::NUM_CELL_COMB] |
Definition at line 10 of file MuonPathAnalyzerPerSL.h.
MuonPathAnalyzerPerSL::MuonPathAnalyzerPerSL | ( | const edm::ParameterSet & | pset, |
edm::ConsumesCollector & | iC | ||
) |
Definition at line 11 of file MuonPathAnalyzerPerSL.cc.
References cms::cuda::assert(), edm::BeginRun, chi2Th_, chosen_sl_, debug_, dtGeomH, edm::ConsumesCollector::esConsumes(), Exception, edm::FileInPath::fullPath(), LogDebug, muonDTDigis_cfi::pset, setChiSquareThreshold(), edm::shift, shift_filename_, and shiftinfo_.
|
override |
|
private |
Definition at line 96 of file MuonPathAnalyzerPerSL.cc.
References funct::abs(), calculatePathParameters(), DTGeometry::chamber(), hltPixelTracks_cff::chi2, IntegrityClient_cfi::ChId, chiSquareThreshold_, chosen_sl_, debug_, dtGeo_, evaluatePathQuality(), hasPosRF(), cmsdt::HIGHQ, cmsdt::HIGHQGHOST, mps_fire::i, cmsdt::LATQ_TYPE::invalidateHitIdx, lateralities_, latQuality_, LogDebug, cmsdt::LOWQ, cmsdt::LOWQGHOST, minQuality_, NUM_LAYERS, or, phi, PV3DBase< T, PVType, FrameType >::phi(), cmsdt::PHI_CONV, qcdUeDQM_cfi::quality, DetId::rawId(), DTChamberId::sector(), setCellLayout(), shiftinfo_, DTChamberId::station(), DTSuperLayerId::superLayer(), tanPhiTh_, tanPsi_precision_, GeomDet::toGlobal(), totalNumValLateralities_, use_LSB_, RunInfoPI::valid, cmsdt::LATQ_TYPE::valid, DTChamberId::wheel(), x_precision_, z, cmsdt::Z_POS_SL, and cmsdt::Z_SHIFT_MB4.
Referenced by run().
|
private |
For a given 4-cell combination (one per layer), all the possible lateralities combinations that are compatible with a straight line are generated.
Definition at line 432 of file MuonPathAnalyzerPerSL.cc.
References cmsdt::LATQ_TYPE::bxValue, cmsdt::LATQ_TYPE::invalidateHitIdx, isStraightPath(), lateralities_, latQuality_, cmsdt::LEFT, cmsdt::NOPATH, NUM_LAYERS, cmsdt::LATQ_TYPE::quality, cmsdt::RIGHT, totalNumValLateralities_, and cmsdt::LATQ_TYPE::valid.
Referenced by setCellLayout().
|
inline |
|
private |
Calculate the drift distances of each wire and the horizontal position
Definition at line 1015 of file MuonPathAnalyzerPerSL.cc.
References mps_fire::i, createfilelist::int, cmsdt::LEFT, and x_precision_.
Referenced by calculatePathParameters().
|
private |
Calculate the quality estimator of each trayectory.
Definition at line 1041 of file MuonPathAnalyzerPerSL.cc.
References cmsdt::CELL_HEIGHT, mps_fire::i, createfilelist::int, dqm-mbProfile::log, NUM_LAYERS, tanPsi_precision_, and x_precision_.
Referenced by calculatePathParameters().
|
private |
Definition at line 878 of file MuonPathAnalyzerPerSL.cc.
References cmsdt::CELL_HEIGHT, cmsdt::CELL_SEMIHEIGHT, cmsdt::CELL_SEMILENGTH, makePileupJSON::denom, cmsdt::DRIFT_SPEED, eqMainTerm(), and EgammaValidation_cff::num.
|
private |
3 HITS cases
Definition at line 969 of file MuonPathAnalyzerPerSL.cc.
References cmsdt::CELL_HEIGHT, HLTTauDQMOffline_cfi::denominator, dqmMemoryStats::float, createfilelist::int, dqm-mbProfile::log, EgammaValidation_cff::num, funct::pow(), tanPsi_precision_, and x_precision_.
Referenced by calculatePathParameters().
|
private |
Coordinate and angle calculations for a 4 HITS cases
Definition at line 951 of file MuonPathAnalyzerPerSL.cc.
References cmsdt::CELL_HEIGHT, createfilelist::int, dqm-mbProfile::log, HLTTauDQMOffline_cfi::numerator, funct::pow(), tanPsi_precision_, and x_precision_.
Referenced by calculatePathParameters().
|
private |
Calculate the parameters of the detected trayectories
Definition at line 852 of file MuonPathAnalyzerPerSL.cc.
References calcCellDriftAndXcoor(), calcChiSquare(), calcTanPhiXPosChamber3Hits(), calcTanPhiXPosChamber4Hits(), debug_, cmsdt::HIGHQ, cmsdt::HIGHQGHOST, LogDebug, and or.
Referenced by analyze().
|
private |
Definition at line 750 of file MuonPathAnalyzerPerSL.cc.
References debug_, lateralCoeficients(), and LogDebug.
Referenced by validate().
|
private |
Definition at line 763 of file MuonPathAnalyzerPerSL.cc.
References debug_, cmsdt::DRIFT_SPEED, lateralCoeficients(), LogDebug, use_LSB_, and x_precision_.
Referenced by calcTanPhiXPosChamber().
|
private |
Definition at line 527 of file MuonPathAnalyzerPerSL.cc.
References cmsdt::PARTIAL_LATQ_TYPE::bxValue, cmsdt::LATQ_TYPE::bxValue, debug_, cmsdt::HIGHQ, mps_fire::i, cmsdt::LATQ_TYPE::invalidateHitIdx, dqmiolumiharvest::j, lateralities_, cmsdt::PARTIAL_LATQ_TYPE::latQValid, LAYER_ARRANGEMENTS_, LogDebug, cmsdt::LOWQ, cmsdt::MEANTIME_2LAT, cmsdt::MEANTIME_3LAT, cmsdt::MEANTIME_4LAT, cmsdt::NOPATH, NUM_LAYERS, omittedHit(), or, funct::pow(), cmsdt::LATQ_TYPE::quality, sameBXValue(), cmsdt::LATQ_TYPE::valid, and validate().
Referenced by evaluatePathQuality().
|
private |
Definition at line 481 of file MuonPathAnalyzerPerSL.cc.
References debug_, evaluateLateralQuality(), cmsdt::HIGHQ, cmsdt::HIGHQGHOST, lateralities_, latQuality_, LogDebug, cmsdt::LOWQ, cmsdt::LOWQGHOST, cmsdt::NOPATH, qcdUeDQM_cfi::quality, and totalNumValLateralities_.
Referenced by analyze().
|
overridevirtual |
Reimplemented from MuonPathAnalyzer.
Definition at line 80 of file MuonPathAnalyzerPerSL.cc.
References debug_, and LogDebug.
Referenced by progressbar.ProgressBar::__next__().
|
inline |
Definition at line 41 of file MuonPathAnalyzerPerSL.h.
References fileinputsource_cfi::sec.
Referenced by analyze().
|
overridevirtual |
Reimplemented from MuonPathAnalyzer.
Definition at line 59 of file MuonPathAnalyzerPerSL.cc.
References debug_, dtGeo_, dtGeomH, relativeConstraints::geom, edm::EventSetup::get(), and LogDebug.
|
private |
This method checks whether a given combination conform a straight line or not
Definition at line 465 of file MuonPathAnalyzerPerSL.cc.
References funct::abs(), cellLayout_, mps_fire::i, NUM_LAYERS, and or.
Referenced by buildLateralities().
|
private |
Definition at line 783 of file MuonPathAnalyzerPerSL.cc.
References cmsdt::LEFT, and cmsdt::RIGHT.
Referenced by eqMainBXTerm(), eqMainTerm(), and validate().
|
inline |
|
private |
Definition at line 1063 of file MuonPathAnalyzerPerSL.cc.
References heavyIonCSV_trainingSettings::idx.
Referenced by evaluateLateralQuality().
|
inlineoverridevirtual |
|
overridevirtual |
|
private |
Determines if all valid partial lateral combinations share the same value of 'bxValue'.
Definition at line 803 of file MuonPathAnalyzerPerSL.cc.
References funct::abs(), bxTolerance_, debug_, LogDebug, or, and mps_fire::result.
Referenced by evaluateLateralQuality().
|
inline |
Definition at line 30 of file MuonPathAnalyzerPerSL.h.
References bxTolerance_, and submitPVValidationJobs::t.
|
private |
Definition at line 422 of file MuonPathAnalyzerPerSL.cc.
References buildLateralities(), cellLayout_, and makeLayoutFileForGui::layout.
Referenced by analyze().
|
inline |
Definition at line 33 of file MuonPathAnalyzerPerSL.h.
References chiSquareThreshold_.
Referenced by MuonPathAnalyzerPerSL().
|
inline |
Definition at line 35 of file MuonPathAnalyzerPerSL.h.
References cmsdt::LOWQGHOST, minQuality_, and submitPVResolutionJobs::q.
|
private |
Validate, for a layer combination (3), cells and lateralities, if the temporal values fullfill the mean-timer criteria.
Definition at line 621 of file MuonPathAnalyzerPerSL.cc.
References cmsdt::PARTIAL_LATQ_TYPE::bxValue, cellLayout_, debug_, cmsdt::DENOM_TYPE1, cmsdt::DENOM_TYPE2, cmsdt::DENOM_TYPE3, HLTTauDQMOffline_cfi::denominator, cmsdt::DIVISION_HELPER1, cmsdt::DIVISION_HELPER2, cmsdt::DIVISION_HELPER3, eqMainBXTerm(), mps_fire::i, createfilelist::int, dqmiolumiharvest::j, lateralCoeficients(), cmsdt::PARTIAL_LATQ_TYPE::latQValid, LogDebug, cmsdt::MAXDRIFT, cmsdt::NBITS, HLTTauDQMOffline_cfi::numerator, and funct::pow().
Referenced by evaluateLateralQuality().
|
private |
Definition at line 90 of file MuonPathAnalyzerPerSL.h.
Referenced by bxTolerance(), sameBXValue(), and setBXTolerance().
|
private |
Definition at line 97 of file MuonPathAnalyzerPerSL.h.
Referenced by isStraightPath(), setCellLayout(), and validate().
|
private |
Definition at line 95 of file MuonPathAnalyzerPerSL.h.
|
private |
Definition at line 94 of file MuonPathAnalyzerPerSL.h.
Referenced by MuonPathAnalyzerPerSL().
|
private |
Definition at line 92 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), and setChiSquareThreshold().
int MuonPathAnalyzerPerSL::chosen_sl_ |
Definition at line 51 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), and MuonPathAnalyzerPerSL().
|
private |
Definition at line 93 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), calculatePathParameters(), eqMainBXTerm(), eqMainTerm(), evaluateLateralQuality(), evaluatePathQuality(), finish(), initialise(), MuonPathAnalyzerPerSL(), run(), sameBXValue(), validate(), and ~MuonPathAnalyzerPerSL().
const DTGeometry* MuonPathAnalyzerPerSL::dtGeo_ |
Definition at line 41 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), and initialise().
edm::ESGetToken<DTGeometry, MuonGeometryRecord> MuonPathAnalyzerPerSL::dtGeomH |
Definition at line 45 of file MuonPathAnalyzerPerSL.h.
Referenced by initialise(), and MuonPathAnalyzerPerSL().
|
private |
Definition at line 85 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), buildLateralities(), evaluateLateralQuality(), and evaluatePathQuality().
|
private |
Definition at line 86 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), buildLateralities(), and evaluatePathQuality().
|
staticconstexprprivate |
Definition at line 84 of file MuonPathAnalyzerPerSL.h.
Referenced by evaluateLateralQuality().
|
private |
Definition at line 91 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), minQuality(), and setMinQuality().
edm::FileInPath MuonPathAnalyzerPerSL::shift_filename_ |
Definition at line 48 of file MuonPathAnalyzerPerSL.h.
Referenced by MuonPathAnalyzerPerSL().
std::map<int, float> MuonPathAnalyzerPerSL::shiftinfo_ |
Definition at line 49 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), and MuonPathAnalyzerPerSL().
|
private |
Definition at line 96 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze().
|
private |
Definition at line 99 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), calcChiSquare(), calcTanPhiXPosChamber3Hits(), and calcTanPhiXPosChamber4Hits().
|
private |
Definition at line 88 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), buildLateralities(), and evaluatePathQuality().
|
private |
Definition at line 98 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), and eqMainTerm().
|
private |
Definition at line 100 of file MuonPathAnalyzerPerSL.h.
Referenced by analyze(), calcCellDriftAndXcoor(), calcChiSquare(), calcTanPhiXPosChamber3Hits(), calcTanPhiXPosChamber4Hits(), and eqMainTerm().