1D Hierarchy for Lorentz shift correction
More...
#include <Hierarchy.h>
|
|
| LorentShiftHierarchy () |
| | Constructor.
|
| |
|
std::vector< int > | getElementLabels (DetectorLevelElement element) final |
| | Label for lorentz shift parameter.
|
| |
|
template<class LowestLevelDBObject > |
| GlobalDerivativeSet | getGlobalDerivatives (unsigned short sensor, const genfit::StateOnPlane *sop, B2Vector3D bField) |
| | Template function to get globals for given db object and its element (and the rest of hierarchy)
|
| |
|
TMatrixD | getLorentzShiftDerivatives (const genfit::StateOnPlane *sop, B2Vector3D bField) |
| | Derivatives for Lorentz shift in sensor plane.
|
| |
|
template<class ChildDBObjectType , class MotherDBObjectType > |
| void | insertRelation (unsigned short child, unsigned short mother) |
| | Template function to insert hierarchy relation bewteen two DB objects and their elements.
|
| |
|
void | buildConstraints (Constraints &constraints) |
| | Adds constraints from current hierarchy to a constraints vector.
|
| |
|
GlobalDerivativeSet | buildGlobalDerivativesHierarchy (TMatrixD matrixChain, DetectorLevelElement child) |
| | Recursive function which adds labels and derivatives until top element in hierarchy is found.
|
| |
| template<class ChildDBObjectType , class MotherDBObjectType > |
| void | insert (unsigned short child, unsigned short mother, TMatrixD childToMotherParamTransform) |
| | Template function to add relation between two elements (possibly in different objects with constants) First object is the child object, second its hierarchy parent. More...
|
| |
|
void | printHierarchy () |
| | print the lookup map
|
| |
|
const std::set< unsigned short > & | getUsedDBObjUniqueIDs () |
| | Get the global unique ids of DB objects used to construct hierarchy Usefull to update hierarchy only when those changed.
|
| |
|
|
static void | mergeGlobals (GlobalDerivativeSet &main, GlobalDerivativeSet additional) |
| | Merge additional set into main set of global labels and derivatives TODO: move to some utilities.
|
| |
|
|
std::pair< DetectorLevelElement, TMatrixD > | getChildToMotherTransform (DetectorLevelElement child) |
| | Find the transformation in the lookup.
|
| |
|
|
std::map< DetectorLevelElement, std::pair< DetectorLevelElement, TMatrixD > > | m_lookup |
| | Map with all the parameter data (child -> (mother, transform_child2mother))
|
| |
|
std::map< DetectorLevelElement, std::vector< DetectorLevelElement > > | m_hierarchy |
| | Map of hierarchy relations mother-> child.
|
| |
|
std::set< unsigned short > | m_usedUniqueIDs {} |
| | The set of unique id of each DB object used for construction For more efficient updates of hierarchy only when used objects change.
|
| |
1D Hierarchy for Lorentz shift correction
Definition at line 108 of file Hierarchy.h.
◆ insert()
| void insert |
( |
unsigned short |
child, |
|
|
unsigned short |
mother, |
|
|
TMatrixD |
childToMotherParamTransform |
|
) |
| |
|
inlineinherited |
Template function to add relation between two elements (possibly in different objects with constants) First object is the child object, second its hierarchy parent.
- Parameters
-
| child | is the lement numeric id in child obj |
| mother | is the parent object |
| childToMotherParamTransform | is the transformation matrix (placement from geometry of the detector) |
Definition at line 60 of file Hierarchy.h.
The documentation for this class was generated from the following files: