#include <AlignmentParameters.h>
Public Types | |
typedef AlignmentParametersData::DataContainer | DataContainer |
Public Member Functions | |
Alignable * | alignable (void) const |
Get pointer to corresponding alignable. More... | |
AlignmentParameters () | |
Default constructor. More... | |
AlignmentParameters (Alignable *object, const AlgebraicVector &par, const AlgebraicSymMatrix &cov) | |
Constructor from given input. More... | |
AlignmentParameters (Alignable *object, const AlgebraicVector &par, const AlgebraicSymMatrix &cov, const std::vector< bool > &sel) | |
Constructor including selection of active parameters. More... | |
AlignmentParameters (Alignable *object, const DataContainer &data) | |
Constructor. More... | |
virtual void | apply ()=0 |
apply parameters to alignable More... | |
virtual AlignmentParameters * | clone (const AlgebraicVector &par, const AlgebraicSymMatrix &cov) const =0 |
Enforce clone methods in derived classes. More... | |
virtual AlignmentParameters * | cloneFromSelected (const AlgebraicVector &par, const AlgebraicSymMatrix &cov) const =0 |
const AlgebraicSymMatrix & | covariance (void) const |
Get parameter covariance matrix. More... | |
virtual AlgebraicMatrix | derivatives (const TrajectoryStateOnSurface &tsos, const AlignableDetOrUnitPtr &alidet) const =0 |
Get derivatives of selected parameters. More... | |
virtual unsigned int | hierarchyLevel () const |
bool | isValid (void) const |
Get validity flag. More... | |
int | numSelected (void) const |
Get number of selected parameters. More... | |
const AlgebraicVector & | parameters (void) const |
Get alignment parameters. More... | |
AlgebraicSymMatrix | selectedCovariance (void) const |
Get covariance matrix of selected parameters. More... | |
virtual AlgebraicMatrix | selectedDerivatives (const TrajectoryStateOnSurface &tsos, const AlignableDetOrUnitPtr &alidet) const |
AlgebraicVector | selectedParameters (void) const |
Get selected parameters. More... | |
const std::vector< bool > & | selector (void) const |
Get alignment parameter selector vector. More... | |
void | setUserVariables (AlignmentUserVariables *auv) |
Set pointer to user variables. More... | |
void | setValid (bool v) |
Set validity flag. More... | |
int | size (void) const |
Get number of parameters. More... | |
virtual int | type () const =0 |
tell type (AlignmentParametersFactory::ParametersType - but no circular dependency) More... | |
AlignmentUserVariables * | userVariables (void) const |
Get pointer to user variables. More... | |
virtual | ~AlignmentParameters () |
Destructor. More... | |
Protected Member Functions | |
AlgebraicSymMatrix | collapseSymMatrix (const AlgebraicSymMatrix &m, const std::vector< bool > &sel) const |
AlgebraicVector | collapseVector (const AlgebraicVector &m, const std::vector< bool > &sel) const |
AlgebraicSymMatrix | expandSymMatrix (const AlgebraicSymMatrix &m, const std::vector< bool > &sel) const |
AlgebraicVector | expandVector (const AlgebraicVector &m, const std::vector< bool > &sel) const |
Protected Attributes | |
bool | bValid |
True if parameters are valid. More... | |
Alignable * | theAlignable |
DataContainer | theData |
AlignmentUserVariables * | theUserVariables |
Base class for alignment parameters
It contains a parameter vector of size N and a covariance matrix of size NxN. There is a pointer to the Alignable to which the parameters belong. There is also a pointer to UserVariables. Parameters can be enabled/disabled using theSelector. bValid declares if the parameters are 'valid'. The methods selected set/return only the active parameters/derivatives/covariance as subvector/submatrix of reduced size.
(last update by
)
Definition at line 35 of file AlignmentParameters.h.
Definition at line 40 of file AlignmentParameters.h.
AlignmentParameters::AlignmentParameters | ( | ) |
Default constructor.
Definition at line 10 of file AlignmentParameters.cc.
AlignmentParameters::AlignmentParameters | ( | Alignable * | object, |
const AlgebraicVector & | par, | ||
const AlgebraicSymMatrix & | cov | ||
) |
Constructor from given input.
Definition at line 18 of file AlignmentParameters.cc.
References theData.
AlignmentParameters::AlignmentParameters | ( | Alignable * | object, |
const AlgebraicVector & | par, | ||
const AlgebraicSymMatrix & | cov, | ||
const std::vector< bool > & | sel | ||
) |
Constructor including selection of active parameters.
Definition at line 31 of file AlignmentParameters.cc.
References theData.
AlignmentParameters::AlignmentParameters | ( | Alignable * | object, |
const DataContainer & | data | ||
) |
Constructor.
Definition at line 45 of file AlignmentParameters.cc.
References theData.
|
virtual |
Destructor.
Definition at line 58 of file AlignmentParameters.cc.
References theUserVariables.
Alignable * AlignmentParameters::alignable | ( | void | ) | const |
Get pointer to corresponding alignable.
Definition at line 146 of file AlignmentParameters.cc.
References theAlignable.
Referenced by BeamSpotAlignmentParameters::apply(), RigidBodyAlignmentParameters::apply(), BowedSurfaceAlignmentParameters::apply(), TwoBowedSurfacesAlignmentParameters::apply(), AlignmentParameterStore::attachAlignmentParameters(), BeamSpotAlignmentParameters::clone(), RigidBodyAlignmentParameters::clone(), RigidBodyAlignmentParameters4D::clone(), BowedSurfaceAlignmentParameters::clone(), TwoBowedSurfacesAlignmentParameters::clone(), RigidBodyAlignmentParameters::cloneFromSelected(), BeamSpotAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters4D::cloneFromSelected(), RigidBodyAlignmentParameters4D::derivatives(), BeamSpotAlignmentParameters::derivatives(), RigidBodyAlignmentParameters::derivatives(), BowedSurfaceAlignmentParameters::derivatives(), TwoBowedSurfacesAlignmentParameters::derivatives(), and BowedSurfaceAlignmentParameters::rotation().
|
pure virtual |
apply parameters to alignable
Implemented in TwoBowedSurfacesAlignmentParameters, BowedSurfaceAlignmentParameters, BeamSpotAlignmentParameters, RigidBodyAlignmentParameters, and SurveyParameters.
Referenced by heavyIonTools.ConfigureHeavyIons::__call__(), editorTools.UserCodeTool::__call__(), HiCoreTools.RestrictInputToAOD::__call__(), coreTools.RunOnData::__call__(), trackTools.MakeAODTrackCandidates::__call__(), metTools.AddMETCollection::__call__(), heavyIonTools.ProductionDefaults::__call__(), editorTools.ChangeSource::__call__(), jetTools.AddJetCollection::__call__(), HiCoreTools.RemoveMCMatching::__call__(), cmsswVersionTools.PickRelValInputFiles::__call__(), coreTools.RemoveMCMatching::__call__(), trackTools.MakePATTrackCandidates::__call__(), trigTools.SwitchOnTrigger::__call__(), heavyIonTools.SelectionDefaults::__call__(), HiCoreTools.RemoveAllPATObjectsBut::__call__(), heavyIonTools.DisbaleMonteCarloDeps::__call__(), HiCoreTools.RemoveSpecificPATObjects::__call__(), trigTools.SwitchOnTriggerStandAlone::__call__(), tauTools.AddTauCollection::__call__(), trackTools.MakeTrackCandidates::__call__(), trigTools.SwitchOnTriggerMatching::__call__(), HiCoreTools.RemoveCleaning::__call__(), HiCoreTools.AddCleaning::__call__(), trigTools.SwitchOnTriggerMatchingStandAlone::__call__(), jetTools.SwitchJetCollection::__call__(), jetTools.AddJetID::__call__(), trigTools.SwitchOnTriggerMatchEmbedding::__call__(), jetTools.SetTagInfos::__call__(), metUncertaintyTools.RunMEtUncertainties::__call__(), and AlignmentParameterStore::applyParameters().
|
pure virtual |
Enforce clone methods in derived classes.
Implemented in TwoBowedSurfacesAlignmentParameters, BowedSurfaceAlignmentParameters, RigidBodyAlignmentParameters4D, BeamSpotAlignmentParameters, RigidBodyAlignmentParameters, and SurveyParameters.
Referenced by KalmanAlignmentUserVariables::fixAlignable(), KalmanAlignmentAlgorithm::initializeAlignmentParameters(), KalmanAlignmentAlgorithm::mergeResults(), AlignmentParametersIORoot::readOne(), PedeReader::setParameter(), KalmanAlignmentUserVariables::unfixAlignable(), and AlignmentParametersIO::writeOneOrigRigidBody().
|
pure virtual |
Implemented in TwoBowedSurfacesAlignmentParameters, BowedSurfaceAlignmentParameters, RigidBodyAlignmentParameters4D, BeamSpotAlignmentParameters, RigidBodyAlignmentParameters, and SurveyParameters.
Referenced by CSCAlignmentCorrections::applyAlignment(), HIPAlignmentAlgorithm::calcParameters(), MuonAlignmentFromReference::fitAndAlign(), CSCChamberFitter::radiusCorrection(), AlignmentParameterStore::resetParameters(), and AlignmentParameterStore::updateParameters().
|
protected |
Definition at line 199 of file AlignmentParameters.cc.
References edm::hlt::Exception, i, j, query::result, and size().
Referenced by selectedCovariance().
|
protected |
Definition at line 227 of file AlignmentParameters.cc.
References edm::hlt::Exception, i, query::result, and size().
Referenced by selectedParameters().
const AlgebraicSymMatrix & AlignmentParameters::covariance | ( | void | ) | const |
Get parameter covariance matrix.
Definition at line 99 of file AlignmentParameters.cc.
References theData.
Referenced by KalmanAlignmentAlgorithm::applyAlignmentParameters(), MillePedeAlignmentAlgorithm::areEmptyParams(), KalmanAlignmentUserVariables::fixAlignable(), KalmanAlignmentAlgorithm::initializeAlignmentParameters(), SurveyAlignment::iterate(), PedeReader::setParameter(), KalmanAlignmentUserVariables::unfixAlignable(), KalmanAlignmentUserVariables::update(), AlignmentParametersIORoot::writeOne(), and AlignmentParametersIO::writeOneOrigRigidBody().
|
pure virtual |
Get derivatives of selected parameters.
Implemented in TwoBowedSurfacesAlignmentParameters, BowedSurfaceAlignmentParameters, BeamSpotAlignmentParameters, RigidBodyAlignmentParameters, RigidBodyAlignmentParameters4D, and SurveyParameters.
Referenced by MillePedeAlignmentAlgorithm::globalDerivativesHierarchy(), and selectedDerivatives().
|
protected |
Definition at line 254 of file AlignmentParameters.cc.
References edm::hlt::Exception, i, j, query::result, and size().
Referenced by BeamSpotAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters4D::cloneFromSelected(), BowedSurfaceAlignmentParameters::cloneFromSelected(), and TwoBowedSurfacesAlignmentParameters::cloneFromSelected().
|
protected |
Definition at line 280 of file AlignmentParameters.cc.
References edm::hlt::Exception, i, query::result, and size().
Referenced by BeamSpotAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters4D::cloneFromSelected(), BowedSurfaceAlignmentParameters::cloneFromSelected(), and TwoBowedSurfacesAlignmentParameters::cloneFromSelected().
|
virtual |
How many levels of Alignables with parameters can be found in the substructures of the Alignable of these parameters? E.g. 0: lowest level, i.e. no components of hte Alignable have parameters, n: up to n generations of components have parameters (some 'branches' may have less)
Definition at line 152 of file AlignmentParameters.cc.
References Alignable::firstCompsWithParams(), and theAlignable.
Referenced by AlignmentParametersIORoot::writeOne().
bool AlignmentParameters::isValid | ( | void | ) | const |
Get validity flag.
Definition at line 184 of file AlignmentParameters.cc.
References bValid.
Referenced by BeamSpotAlignmentParameters::clone(), RigidBodyAlignmentParameters::clone(), RigidBodyAlignmentParameters4D::clone(), BowedSurfaceAlignmentParameters::clone(), TwoBowedSurfacesAlignmentParameters::clone(), RigidBodyAlignmentParameters::cloneFromSelected(), BeamSpotAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters4D::cloneFromSelected(), HIPAlignmentAlgorithm::fillRoot(), AlignmentCorrelationsIORoot::write(), AlignableDataIO::writeAbsPos(), AlignableDataIO::writeOrgPos(), and AlignableDataIO::writeRelPos().
int AlignmentParameters::numSelected | ( | void | ) | const |
Get number of selected parameters.
Definition at line 71 of file AlignmentParameters.cc.
References theData.
Referenced by AlignmentCorrelationsStore::fillCorrelationsTable(), AlignmentExtendedCorrelationsStore::fillCorrelationsTable(), AlignmentParameterStore::resetParameters(), RigidBodyAlignmentParameters::selectedDerivatives(), BeamSpotAlignmentParameters::selectedDerivatives(), selectedDerivatives(), AlignmentParameterStore::selectParameters(), HIPAlignmentAlgorithm::startNewLoop(), and AlignmentParameterStore::updateParameters().
const AlgebraicVector & AlignmentParameters::parameters | ( | void | ) | const |
Get alignment parameters.
Definition at line 92 of file AlignmentParameters.cc.
References theData.
Referenced by MillePedeAlignmentAlgorithm::areEmptyParams(), AlignmentProducer::endOfJob(), HIPAlignmentAlgorithm::fillRoot(), KalmanAlignmentUserVariables::fixAlignable(), PedeSteerer::fixParameter(), KalmanAlignmentUserVariables::histogramParameters(), KalmanAlignmentAlgorithm::initializeAlignmentParameters(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::inputTags(), SurveyAlignment::iterate(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::properties(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::recursePSetProperties(), PedeReader::setParameter(), SurveyAlignment::shiftSensors(), KalmanAlignmentUserVariables::unfixAlignable(), KalmanAlignmentUserVariables::update(), AlignmentParametersIORoot::writeOne(), and AlignmentParametersIO::writeOneOrigRigidBody().
AlgebraicSymMatrix AlignmentParameters::selectedCovariance | ( | void | ) | const |
Get covariance matrix of selected parameters.
Definition at line 85 of file AlignmentParameters.cc.
References collapseSymMatrix(), and theData.
Referenced by KalmanAlignmentUserVariables::histogramParameters(), CurrentAlignmentKFUpdator::includeCurrentAlignmentEstimate(), AlignmentParameterStore::selectParameters(), and KalmanAlignmentUserVariables::update().
|
virtual |
Reimplemented in BeamSpotAlignmentParameters, RigidBodyAlignmentParameters, and SurveyParameters.
Definition at line 106 of file AlignmentParameters.cc.
References derivatives(), numSelected(), and selector().
Referenced by CompositeAlignmentParameters::derivativesLegacy(), CurrentAlignmentKFUpdator::includeCurrentAlignmentEstimate(), HIPAlignmentAlgorithm::processHit1D(), HIPAlignmentAlgorithm::processHit2D(), and MuonMillepedeAlgorithm::run().
AlgebraicVector AlignmentParameters::selectedParameters | ( | void | ) | const |
Get selected parameters.
Definition at line 78 of file AlignmentParameters.cc.
References collapseVector(), and theData.
Referenced by KalmanAlignmentUserVariables::histogramParameters(), CurrentAlignmentKFUpdator::includeCurrentAlignmentEstimate(), AlignmentParameterStore::selectParameters(), and KalmanAlignmentUserVariables::update().
const std::vector< bool > & AlignmentParameters::selector | ( | void | ) | const |
Get alignment parameter selector vector.
Definition at line 65 of file AlignmentParameters.cc.
References theData.
Referenced by BeamSpotAlignmentParameters::clone(), RigidBodyAlignmentParameters::clone(), RigidBodyAlignmentParameters4D::clone(), BowedSurfaceAlignmentParameters::clone(), TwoBowedSurfacesAlignmentParameters::clone(), BeamSpotAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters4D::cloneFromSelected(), BowedSurfaceAlignmentParameters::cloneFromSelected(), TwoBowedSurfacesAlignmentParameters::cloneFromSelected(), MillePedeAlignmentAlgorithm::globalDerivativesHierarchy(), AlignmentParameterStore::hierarchyConstraints(), KalmanAlignmentUserVariables::histogramParameters(), AlignmentParametersIORoot::readOne(), BeamSpotAlignmentParameters::selectedDerivatives(), RigidBodyAlignmentParameters::selectedDerivatives(), selectedDerivatives(), AlignmentProducer::simpleMisalignment_(), and KalmanAlignmentUserVariables::update().
void AlignmentParameters::setUserVariables | ( | AlignmentUserVariables * | auv | ) |
Set pointer to user variables.
Definition at line 131 of file AlignmentParameters.cc.
References theUserVariables.
Referenced by AlignmentParameterBuilder::addFullParamSel(), AlignmentParameterStore::attachUserVariables(), MillePedeAlignmentAlgorithm::buildUserVariables(), PedeReader::checkAliParams(), BeamSpotAlignmentParameters::clone(), RigidBodyAlignmentParameters::clone(), RigidBodyAlignmentParameters4D::clone(), BowedSurfaceAlignmentParameters::clone(), TwoBowedSurfacesAlignmentParameters::clone(), BeamSpotAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters4D::cloneFromSelected(), KalmanAlignmentAlgorithm::initializeAlignmentParameters(), and HIPAlignmentAlgorithm::startNewLoop().
void AlignmentParameters::setValid | ( | bool | v | ) |
Set validity flag.
Definition at line 191 of file AlignmentParameters.cc.
References bValid, and findQualityFiles::v.
Referenced by CSCAlignmentCorrections::applyAlignment(), HIPAlignmentAlgorithm::calcParameters(), RigidBodyAlignmentParameters::clone(), BeamSpotAlignmentParameters::clone(), RigidBodyAlignmentParameters4D::clone(), BowedSurfaceAlignmentParameters::clone(), TwoBowedSurfacesAlignmentParameters::clone(), BeamSpotAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters4D::cloneFromSelected(), KalmanAlignmentAlgorithm::initializeAlignmentParameters(), CSCChamberFitter::radiusCorrection(), AlignmentParametersIORoot::readOne(), AlignmentParameterStore::resetParameters(), PedeReader::setParameter(), MuonMillepedeAlgorithm::terminate(), and HIPAlignmentAlgorithm::terminate().
int AlignmentParameters::size | ( | void | ) | const |
Get number of parameters.
Definition at line 177 of file AlignmentParameters.cc.
References theData.
Referenced by AlignmentParameterStore::acquireRelativeParameters(), MomentumDependentPedeLabeler::buildMomentumDependencyMap(), PedeSteerer::buildNoHierarchyCollection(), RunRangeDependentPedeLabeler::buildRunRangeDependencyMap(), MillePedeAlignmentAlgorithm::buildUserVariables(), PedeReader::checkAliParams(), PedeSteerer::checkParameterChoices(), collapseSymMatrix(), collapseVector(), expandSymMatrix(), expandVector(), PedeSteerer::fixParameters(), and PedeSteerer::selectCoordinateAlis().
|
pure virtual |
tell type (AlignmentParametersFactory::ParametersType - but no circular dependency)
Implemented in TwoBowedSurfacesAlignmentParameters, BowedSurfaceAlignmentParameters, BeamSpotAlignmentParameters, RigidBodyAlignmentParameters, RigidBodyAlignmentParameters4D, and SurveyParameters.
Referenced by cuy.ValElement::__init__(), PedeSteerer::fixParameter(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::inputCommands(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::outputCommands(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::outputEventContent(), ParametersToParametersDerivatives::ParametersToParametersDerivatives(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::properties(), and AlignmentParametersIORoot::writeOne().
AlignmentUserVariables * AlignmentParameters::userVariables | ( | void | ) | const |
Get pointer to user variables.
Definition at line 139 of file AlignmentParameters.cc.
References theUserVariables.
Referenced by MillePedeAlignmentAlgorithm::addHitCount(), MillePedeAlignmentAlgorithm::addHits(), PedeSteerer::buildNoHierarchyCollection(), MillePedeAlignmentAlgorithm::buildUserVariables(), HIPAlignmentAlgorithm::calcParameters(), PedeReader::checkAliParams(), PedeSteerer::checkParameterChoices(), RigidBodyAlignmentParameters::clone(), BeamSpotAlignmentParameters::clone(), RigidBodyAlignmentParameters4D::clone(), BowedSurfaceAlignmentParameters::clone(), TwoBowedSurfacesAlignmentParameters::clone(), BeamSpotAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters::cloneFromSelected(), RigidBodyAlignmentParameters4D::cloneFromSelected(), HIPAlignmentAlgorithm::collector(), HIPAlignmentAlgorithm::fillRoot(), PedeSteerer::fixParameters(), HIPAlignmentAlgorithm::processHit1D(), HIPAlignmentAlgorithm::processHit2D(), PedeSteerer::selectCoordinateAlis(), PedeReader::setParameter(), HIPAlignmentAlgorithm::terminate(), KalmanAlignmentAlgorithm::terminate(), KalmanAlignmentUpdator::updateUserVariables(), HIPUserVariablesIORoot::writeOne(), and MillePedeVariablesIORoot::writeOne().
|
protected |
True if parameters are valid.
Definition at line 136 of file AlignmentParameters.h.
Referenced by isValid(), and setValid().
|
protected |
Definition at line 130 of file AlignmentParameters.h.
Referenced by alignable(), RigidBodyAlignmentParameters::globalParameters(), BeamSpotAlignmentParameters::globalParameters(), and hierarchyLevel().
|
protected |
Definition at line 132 of file AlignmentParameters.h.
Referenced by AlignmentParameters(), BowedSurfaceAlignmentParameters::apply(), TwoBowedSurfacesAlignmentParameters::apply(), covariance(), numSelected(), parameters(), BeamSpotAlignmentParameters::print(), RigidBodyAlignmentParameters::print(), BowedSurfaceAlignmentParameters::print(), TwoBowedSurfacesAlignmentParameters::print(), RigidBodyAlignmentParameters::rotation(), BeamSpotAlignmentParameters::rotation(), BowedSurfaceAlignmentParameters::rotation(), selectedCovariance(), selectedParameters(), selector(), size(), BeamSpotAlignmentParameters::translation(), RigidBodyAlignmentParameters::translation(), and BowedSurfaceAlignmentParameters::translation().
|
protected |
Definition at line 134 of file AlignmentParameters.h.
Referenced by setUserVariables(), userVariables(), and ~AlignmentParameters().