#include <MuonErrorMatrix.h>
Public Types | |
enum | action { use, constructor } |
enum type to define if the class is used as a tool or to be created More... | |
Public Member Functions | |
void | adjust (FreeTrajectoryState &state) |
adjust the error matrix on the state More... | |
void | adjust (TrajectoryStateOnSurface &state) |
adjust the error matrix on the state More... | |
void | close () |
close the root file attached to the class More... | |
void | complicatedTerm (const AlgebraicSymMatrix55 &input, AlgebraicSymMatrix55 &output) |
convert sigma/rho -> sigma2/COV More... | |
int | findBin (TAxis *axis, double value) |
method to get the bin index, taking care of under/overlow: first(1)/last(GetNbins())returned More... | |
CurvilinearTrajectoryError | get (GlobalVector momentum, bool convolute=true) |
main method to be used. Retrieve a 5x5 symetrical matrix according to parametrization of error or scale factor More... | |
TProfile3D * | get (int i, int j) |
actually get access to the TProfile3D used for the parametrization More... | |
CurvilinearTrajectoryError | getFast (GlobalVector momentum) |
unsigned int | index (int i, int j) |
MuonErrorMatrix (const edm::ParameterSet &pset) | |
constructor from a parameter set More... | |
void | simpleTerm (const AlgebraicSymMatrix55 &input, AlgebraicSymMatrix55 &output) |
convert sigma2/COV -> sigma/rho More... | |
~MuonErrorMatrix () | |
destructor More... | |
Static Public Member Functions | |
static bool | divide (CurvilinearTrajectoryError &num_error, const CurvilinearTrajectoryError &denom_error) |
divide term by term the two matrix More... | |
static void | multiply (CurvilinearTrajectoryError &initial_error, const CurvilinearTrajectoryError &scale_error) |
multiply term by term the two matrix More... | |
static double | Term (const AlgebraicSymMatrix55 &curv, int i, int j) |
provide the numerical value used. sigma or correlation factor More... | |
Static Public Attributes | |
static const TString | vars [5] ={"#frac{q}{|p|}","#lambda","#varphi_{0}","X_{T}","Y_{T}"} |
names of the variables of the 5x5 error matrix More... | |
Private Types | |
enum | TermAction { error, scale, assign } |
decide whether to scale of to assigne terms More... | |
Private Member Functions | |
TProfile3D * | Index (int i, int j) |
internal method to get access to the profiles More... | |
int | Pindex (int i, int j) |
internal methods to get the index of a matrix term. More... | |
double | Rms (GlobalVector &momentum, int i, int j) |
internal method that retreives the error on the value of the parametrization for term i,j More... | |
double | Value (GlobalVector &momentum, int i, int j, bool convolute=true) |
internal method that retreives the value of the parametrization for term i,j More... | |
Private Attributes | |
std::string | theCategory |
log category: "MuonErrorMatrix" More... | |
TDirectory * | theD |
the attached root file, where the parametrization is saved More... | |
TProfile3D * | theData [15] |
15 TProfile, each holding he parametrization of each term of the 5x5 More... | |
TProfile3D * | theData_fast [5][5] |
TermAction | theTermAction [15] |
This class holds an error matrix paramertization. Either the error matrix value or scale factors. The implementation uses TProfile3D with pt, eta, phi axis. Error/Scale factor matrix is obtained using get(GlobalVector momentum)
Definition at line 29 of file MuonErrorMatrix.h.
enum type to define if the class is used as a tool or to be created
Enumerator | |
---|---|
use | |
constructor |
Definition at line 32 of file MuonErrorMatrix.h.
|
private |
decide whether to scale of to assigne terms
Enumerator | |
---|---|
error | |
scale | |
assign |
Definition at line 88 of file MuonErrorMatrix.h.
MuonErrorMatrix::MuonErrorMatrix | ( | const edm::ParameterSet & | pset | ) |
constructor from a parameter set
Definition at line 17 of file MuonErrorMatrix.cc.
References a, assign, constructor, data, TrackerOfflineValidation_Dqm_cff::dirName, error, MuonErrorMatrixValues_cff::errorMatrixValuesPSet, edm::ParameterSet::exists(), cmsRelvalreport::exit, MillePedeFileConverter_cfg::fileName, edm::FileInPath::fullPath(), edm::ParameterSet::getParameter(), mps_fire::i, LogDebug, LogTrace, maxEta, trackingParticleSelector_cfi::maxPhi, MuonErrorMatrixAnalyzer_cfi::maxPt, heepElectronID_HEEPV50_cff::minEta, trackingParticleSelector_cfi::minPhi, lostTracks_cfi::minPt, MuonErrorMatrixAnalyzer_cfi::NEta, MuonErrorMatrixAnalyzer_cfi::NPhi, MuonErrorMatrixAnalyzer_cfi::NPt, packedPFCandidateRefMixer_cfi::pf, Pi, Pindex(), scale, harvestTrackValidationPlots::str, AlCaHLTBitMon_QueryRunRegistry::string, theCategory, theD, theData, theData_fast, theTermAction, use, MuonErrorMatrixValues_cff::values, and vars.
MuonErrorMatrix::~MuonErrorMatrix | ( | ) |
destructor
Definition at line 225 of file MuonErrorMatrix.cc.
References close().
void MuonErrorMatrix::adjust | ( | FreeTrajectoryState & | state | ) |
adjust the error matrix on the state
Definition at line 446 of file MuonErrorMatrix.cc.
References assign, complicatedTerm(), FreeTrajectoryState::curvilinearError(), error, mps_fire::i, LogDebug, makeMuonMisalignmentScenario::matrix, FreeTrajectoryState::momentum(), FreeTrajectoryState::parameters(), Pindex(), scale, simpleTerm(), theCategory, and theTermAction.
Referenced by TSGForRoadSearch::IPfts(), and TSGForRoadSearch::notAtIPtsos().
void MuonErrorMatrix::adjust | ( | TrajectoryStateOnSurface & | state | ) |
adjust the error matrix on the state
Definition at line 489 of file MuonErrorMatrix.cc.
References assign, complicatedTerm(), TrajectoryStateOnSurface::curvilinearError(), error, TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalParameters(), mps_fire::i, LogDebug, makeMuonMisalignmentScenario::matrix, Pindex(), scale, simpleTerm(), TrajectoryStateOnSurface::surface(), TrajectoryStateOnSurface::surfaceSide(), theCategory, theTermAction, and TrajectoryStateOnSurface::weight().
void MuonErrorMatrix::close | ( | void | ) |
close the root file attached to the class
Definition at line 215 of file MuonErrorMatrix.cc.
References mps_fire::i, theD, and theData.
Referenced by lumiQTWidget.ApplicationWindow::fileQuit(), esMonitoring.AsyncLineReaderMixin::handle_close(), esMonitoring.FDJsonServer::handle_close(), Vispa.Gui.BoxContentDialog.BoxContentDialog::keyPressEvent(), Vispa.Gui.FindDialog.FindDialog::keyPressEvent(), and ~MuonErrorMatrix().
void MuonErrorMatrix::complicatedTerm | ( | const AlgebraicSymMatrix55 & | input, |
AlgebraicSymMatrix55 & | output | ||
) |
convert sigma/rho -> sigma2/COV
Definition at line 434 of file MuonErrorMatrix.cc.
References mps_fire::i, input, and convertSQLitetoXML_cfg::output.
Referenced by adjust().
|
static |
divide term by term the two matrix
Definition at line 411 of file MuonErrorMatrix.cc.
References mps_fire::i, and CurvilinearTrajectoryError::matrix().
int MuonErrorMatrix::findBin | ( | TAxis * | axis, |
double | value | ||
) |
method to get the bin index, taking care of under/overlow: first(1)/last(GetNbins())returned
Definition at line 289 of file MuonErrorMatrix.cc.
References mps_fire::result.
Referenced by getFast(), and Value().
CurvilinearTrajectoryError MuonErrorMatrix::get | ( | GlobalVector | momentum, |
bool | convolute = true |
||
) |
main method to be used. Retrieve a 5x5 symetrical matrix according to parametrization of error or scale factor
Definition at line 231 of file MuonErrorMatrix.cc.
References mps_fire::i, and Value().
Referenced by Options.Options::__getitem__(), betterConfigParser.BetterConfigParser::__updateDict(), TSGFromPropagation::adjust(), MuonErrorMatrixAdjuster::fix_cov_matrix(), betterConfigParser.BetterConfigParser::getCompares(), betterConfigParser.BetterConfigParser::getGeneral(), betterConfigParser.BetterConfigParser::getResultingSection(), and TSGFromPropagation::init().
|
inline |
actually get access to the TProfile3D used for the parametrization
Definition at line 53 of file MuonErrorMatrix.h.
References Index().
Referenced by Options.Options::__getitem__(), betterConfigParser.BetterConfigParser::__updateDict(), betterConfigParser.BetterConfigParser::getCompares(), betterConfigParser.BetterConfigParser::getGeneral(), and betterConfigParser.BetterConfigParser::getResultingSection().
CurvilinearTrajectoryError MuonErrorMatrix::getFast | ( | GlobalVector | momentum | ) |
Definition at line 238 of file MuonErrorMatrix.cc.
References PVValHelper::eta, PV3DBase< T, PVType, FrameType >::eta(), findBin(), mps_fire::i, PV3DBase< T, PVType, FrameType >::perp(), phi, PV3DBase< T, PVType, FrameType >::phi(), PVValHelper::pT, theData_fast, and MuonErrorMatrixValues_cff::values.
|
inline |
Definition at line 54 of file MuonErrorMatrix.h.
References Pindex().
Referenced by BeautifulSoup.PageElement::insert().
|
inlineprivate |
internal method to get access to the profiles
Definition at line 96 of file MuonErrorMatrix.h.
References Pindex(), Rms(), and Value().
Referenced by get(), Rms(), and Value().
|
static |
multiply term by term the two matrix
Definition at line 400 of file MuonErrorMatrix.cc.
References mps_fire::i, and CurvilinearTrajectoryError::matrix().
Referenced by TSGFromPropagation::adjust(), and FastTSGFromPropagation::adjust().
|
inlineprivate |
internal methods to get the index of a matrix term.
Definition at line 92 of file MuonErrorMatrix.h.
References funct::abs(), mps_fire::i, and PFRecoTauDiscriminationByIsolation_cfi::offset.
Referenced by adjust(), index(), Index(), and MuonErrorMatrix().
|
private |
internal method that retreives the error on the value of the parametrization for term i,j
Definition at line 354 of file MuonErrorMatrix.cc.
References PVValHelper::eta, PV3DBase< T, PVType, FrameType >::eta(), Index(), LogDebug, PV3DBase< T, PVType, FrameType >::perp(), phi, PV3DBase< T, PVType, FrameType >::phi(), PVValHelper::pT, mps_fire::result, and theCategory.
Referenced by Index().
void MuonErrorMatrix::simpleTerm | ( | const AlgebraicSymMatrix55 & | input, |
AlgebraicSymMatrix55 & | output | ||
) |
convert sigma2/COV -> sigma/rho
Definition at line 425 of file MuonErrorMatrix.cc.
References mps_fire::i, input, convertSQLitetoXML_cfg::output, and mathSSE::sqrt().
Referenced by adjust().
|
static |
provide the numerical value used. sigma or correlation factor
Definition at line 371 of file MuonErrorMatrix.cc.
References mps_fire::result, and mathSSE::sqrt().
|
private |
internal method that retreives the value of the parametrization for term i,j
Definition at line 297 of file MuonErrorMatrix.cc.
References corr, PVValHelper::eta, PV3DBase< T, PVType, FrameType >::eta(), findBin(), cuy::ii, Index(), findQualityFiles::jj, LogDebug, PV3DBase< T, PVType, FrameType >::perp(), phi, PV3DBase< T, PVType, FrameType >::phi(), PVValHelper::pT, mps_fire::result, and theCategory.
Referenced by get(), and Index().
|
private |
log category: "MuonErrorMatrix"
Definition at line 79 of file MuonErrorMatrix.h.
Referenced by adjust(), MuonErrorMatrix(), Rms(), and Value().
|
private |
the attached root file, where the parametrization is saved
Definition at line 82 of file MuonErrorMatrix.h.
Referenced by close(), and MuonErrorMatrix().
|
private |
15 TProfile, each holding he parametrization of each term of the 5x5
Definition at line 84 of file MuonErrorMatrix.h.
Referenced by close(), and MuonErrorMatrix().
|
private |
Definition at line 85 of file MuonErrorMatrix.h.
Referenced by getFast(), and MuonErrorMatrix().
|
private |
Definition at line 89 of file MuonErrorMatrix.h.
Referenced by adjust(), and MuonErrorMatrix().
|
static |
names of the variables of the 5x5 error matrix
Definition at line 57 of file MuonErrorMatrix.h.
Referenced by MuonErrorMatrix().