#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 31 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 34 of file MuonErrorMatrix.h.
|
private |
decide whether to scale of to assigne terms
Enumerator | |
---|---|
error | |
scale | |
assign |
Definition at line 90 of file MuonErrorMatrix.h.
MuonErrorMatrix::MuonErrorMatrix | ( | const edm::ParameterSet & | pset | ) |
constructor from a parameter set
Definition at line 16 of file MuonErrorMatrix.cc.
References a, assign, constructor, data, TrackerOfflineValidation_Dqm_cff::dirName, error, edm::ParameterSet::exists(), cmsRelvalreport::exit, convertXMLtoSQLite_cfg::fileName, edm::FileInPath::fullPath(), edm::ParameterSet::getParameter(), i, j, LogDebug, LogTrace, maxEta, benchmark_cfg::minEta, gsfElectronCkfTrackCandidateMaker_cff::minPt, Pi, Pindex(), scale, AlCaHLTBitMon_QueryRunRegistry::string, theCategory, theD, theData, theData_fast, theTermAction, use, makeHLTPrescaleTable::values, and vars.
MuonErrorMatrix::~MuonErrorMatrix | ( | ) |
destructor
Definition at line 224 of file MuonErrorMatrix.cc.
References close().
void MuonErrorMatrix::adjust | ( | FreeTrajectoryState & | state | ) |
adjust the error matrix on the state
Definition at line 445 of file MuonErrorMatrix.cc.
References assign, complicatedTerm(), FreeTrajectoryState::curvilinearError(), error, i, j, LogDebug, makeMuonMisalignmentScenario::matrix, FreeTrajectoryState::momentum(), FreeTrajectoryState::parameters(), Pindex(), scale, simpleTerm(), evf::utils::state, 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 488 of file MuonErrorMatrix.cc.
References assign, complicatedTerm(), TrajectoryStateOnSurface::curvilinearError(), error, TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalParameters(), i, j, LogDebug, makeMuonMisalignmentScenario::matrix, Pindex(), scale, simpleTerm(), evf::utils::state, TrajectoryStateOnSurface::surface(), TrajectoryStateOnSurface::surfaceSide(), theCategory, theTermAction, and TrajectoryStateOnSurface::weight().
void MuonErrorMatrix::close | ( | void | ) |
close the root file attached to the class
Definition at line 214 of file MuonErrorMatrix.cc.
References i, theD, and theData.
Referenced by lumiQTWidget.ApplicationWindow::fileQuit(), 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 433 of file MuonErrorMatrix.cc.
References i, LaserDQM_cfg::input, j, and convertSQLitetoXML_cfg::output.
Referenced by adjust().
|
static |
divide term by term the two matrix
Definition at line 410 of file MuonErrorMatrix.cc.
References i, j, and CurvilinearTrajectoryError::matrix().
Referenced by cuy.FindIssue::__init__().
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 288 of file MuonErrorMatrix.cc.
References query::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 230 of file MuonErrorMatrix.cc.
Referenced by Options.Options::__getitem__(), betterConfigParser.BetterConfigParser::__updateDict(), TSGFromPropagation::adjust(), FastTSGFromPropagation::adjust(), MuonErrorMatrixAdjuster::fix_cov_matrix(), betterConfigParser.BetterConfigParser::getCompares(), betterConfigParser.BetterConfigParser::getGeneral(), betterConfigParser.BetterConfigParser::getResultingSection(), TSGFromPropagation::init(), and FastTSGFromPropagation::init().
|
inline |
actually get access to the TProfile3D used for the parametrization
Definition at line 55 of file MuonErrorMatrix.h.
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 237 of file MuonErrorMatrix.cc.
References PV3DBase< T, PVType, FrameType >::eta(), eta(), findBin(), i, j, PV3DBase< T, PVType, FrameType >::perp(), phi, PV3DBase< T, PVType, FrameType >::phi(), theData_fast, and makeHLTPrescaleTable::values.
|
inline |
Definition at line 56 of file MuonErrorMatrix.h.
References Pindex().
|
inlineprivate |
internal method to get access to the profiles
Definition at line 98 of file MuonErrorMatrix.h.
References Pindex(), and theData.
Referenced by get(), Rms(), and Value().
|
static |
multiply term by term the two matrix
Definition at line 399 of file MuonErrorMatrix.cc.
References i, j, and CurvilinearTrajectoryError::matrix().
Referenced by TSGFromPropagation::adjust(), and FastTSGFromPropagation::adjust().
|
inlineprivate |
internal methods to get the index of a matrix term.
Definition at line 94 of file MuonErrorMatrix.h.
References abs, i, and evf::evtn::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 353 of file MuonErrorMatrix.cc.
References PV3DBase< T, PVType, FrameType >::eta(), eta(), Index(), LogDebug, PV3DBase< T, PVType, FrameType >::perp(), phi, PV3DBase< T, PVType, FrameType >::phi(), query::result, and theCategory.
void MuonErrorMatrix::simpleTerm | ( | const AlgebraicSymMatrix55 & | input, |
AlgebraicSymMatrix55 & | output | ||
) |
convert sigma2/COV -> sigma/rho
Definition at line 424 of file MuonErrorMatrix.cc.
References i, LaserDQM_cfg::input, j, convertSQLitetoXML_cfg::output, and mathSSE::sqrt().
Referenced by adjust().
|
static |
provide the numerical value used. sigma or correlation factor
Definition at line 370 of file MuonErrorMatrix.cc.
References query::result, and mathSSE::sqrt().
|
private |
internal method that retreives the value of the parametrization for term i,j
Definition at line 296 of file MuonErrorMatrix.cc.
References corr, PV3DBase< T, PVType, FrameType >::eta(), eta(), findBin(), cuy::ii, Index(), findQualityFiles::jj, LogDebug, PV3DBase< T, PVType, FrameType >::perp(), phi, PV3DBase< T, PVType, FrameType >::phi(), query::result, and theCategory.
Referenced by get().
|
private |
log category: "MuonErrorMatrix"
Definition at line 81 of file MuonErrorMatrix.h.
Referenced by adjust(), MuonErrorMatrix(), Rms(), and Value().
|
private |
the attached root file, where the parametrization is saved
Definition at line 84 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 86 of file MuonErrorMatrix.h.
Referenced by close(), Index(), and MuonErrorMatrix().
|
private |
Definition at line 87 of file MuonErrorMatrix.h.
Referenced by getFast(), and MuonErrorMatrix().
|
private |
Definition at line 91 of file MuonErrorMatrix.h.
Referenced by adjust(), and MuonErrorMatrix().
|
static |
names of the variables of the 5x5 error matrix
Definition at line 59 of file MuonErrorMatrix.h.
Referenced by MuonErrorMatrix().