Belle II Software development
AlignableSVDRecoHit Class Reference

This class is used to transfer SVD information to the track fit. More...

#include <AlignableSVDRecoHit.h>

Inheritance diagram for AlignableSVDRecoHit:
SVDRecoHit

Public Member Functions

virtual ~AlignableSVDRecoHit ()
 Destructor.
 
genfit::AbsMeasurement * clone () const override
 Creating a deep copy of this hit.
 
virtual std::pair< std::vector< int >, TMatrixD > globalDerivatives (const genfit::StateOnPlane *sop) override
 Labels and derivatives of residuals (local measurement coordinates) w.r.t.
 
 SVDRecoHit ()
 Inherit constructors.
 
 SVDRecoHit (const SVDTrueHit *hit, bool uDirection, float sigma=-1)
 Inherit constructors.
 
 SVDRecoHit (const SVDCluster *hit, const genfit::TrackCandHit *trackCandHit=nullptr)
 Inherit constructors.
 
VxdID getSensorID () const
 Get the compact ID.
 
const SVDTrueHitgetTrueHit () const
 Get pointer to the TrueHit used when creating this RecoHit, can be nullptr if created from something else.
 
const SVDClustergetCluster () const
 Get pointer to the Cluster used when creating this RecoHit, can be nullptr if created from something else.
 
bool isU () const
 Is the coordinate u or v?
 
float getPosition () const
 Get coordinate.
 
float getPositionVariance () const
 Get coordinate variance.
 
float getEnergyDep () const
 Get deposited energy.
 
float getRotation () const
 Get rotation angle.
 
virtual std::vector< genfit::MeasurementOnPlane * > constructMeasurementsOnPlane (const genfit::StateOnPlane &state) const override
 Methods that actually interface to Genfit.
 
virtual const genfit::AbsHMatrix * constructHMatrix (const genfit::AbsTrackRep *) const override
 Methods that actually interface to Genfit.
 

Static Public Attributes

static bool s_enableLorentzGlobalDerivatives = false
 Static enabling(true) or disabling(false) addition of global derivatives for Lorentz shift.
 

Private Types

enum  { HIT_DIMENSIONS = 1 }
 

Private Member Functions

 ClassDefOverride (AlignableSVDRecoHit, 2)
 ROOT Macro.
 
void setDetectorPlane ()
 Set up Detector plane information.
 
TVectorD applyPlanarDeformation (TVectorD rawHit, std::vector< double > planarParameters, const genfit::StateOnPlane &state) const
 Apply planar deformation of sensors.
 

Private Attributes

unsigned short m_sensorID
 Unique sensor identifier.
 
const SVDTrueHitm_trueHit
 Pointer to the Truehit used to generate this hit.
 
const SVDClusterm_cluster
 transient member (not written out during streaming)
 
bool m_isU
 transient member (not written out during streaming)
 
float m_energyDep
 deposited energy.
 
float m_rotationPhi
 angle of the plane rotation, for u in wedge sensors.
 

Friends

class SVDRecoHit
 

Detailed Description

This class is used to transfer SVD information to the track fit.

Definition at line 28 of file AlignableSVDRecoHit.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
privateinherited
Enumerator
HIT_DIMENSIONS 

sensitive Dimensions of the Hit

Definition at line 115 of file SVDRecoHit.h.

115{ HIT_DIMENSIONS = 1 };
@ HIT_DIMENSIONS
sensitive Dimensions of the Hit
Definition: SVDRecoHit.h:115

Constructor & Destructor Documentation

◆ ~AlignableSVDRecoHit()

virtual ~AlignableSVDRecoHit ( )
inlinevirtual

Destructor.

Definition at line 38 of file AlignableSVDRecoHit.h.

38{}

Member Function Documentation

◆ applyPlanarDeformation()

TVectorD applyPlanarDeformation ( TVectorD  rawHit,
std::vector< double >  planarParameters,
const genfit::StateOnPlane &  state 
) const
privateinherited

Apply planar deformation of sensors.

Definition at line 115 of file SVDRecoHit.cc.

117{
118 // Legendre parametrization of deformation
119 auto L1 = [](double x) {return x;};
120 auto L2 = [](double x) {return (3 * x * x - 1) / 2;};
121 auto L3 = [](double x) {return (5 * x * x * x - 3 * x) / 2;};
122 auto L4 = [](double x) {return (35 * x * x * x * x - 30 * x * x + 3) / 8;};
123
124 const SVD::SensorInfo& geometry = dynamic_cast<const SVD::SensorInfo&>(VXD::GeoCache::getInstance().getSensorInfo(m_sensorID));
125
126 double u = 0;
127 double v = 0;
128 double length = 0;
129 double width = 0;
130
131 if (m_isU) {
132 u = rawHit[0]; // U coordinate of hit
133 v = state.getState()(4); // V coordinate of hit
134 width = geometry.getWidth(v); // Width of sensor (U side) is function of V (slanted)
135 length = geometry.getLength(); // Length of sensor (V side)
136
137 u = u * 2 / width; // Legendre parametrization required U in (-1, 1)
138 v = v * 2 / length; // Legendre parametrization required V in (-1, 1)
139
140 } else {
141 v = rawHit[0]; // V coordinate of hit
142 u = state.getState()(3); // U coordinate of hit
143 length = geometry.getLength(); // Length of sensor (V side) is fuction of V (slanted)
144 width = geometry.getWidth(v); // Width of sensor (U side)
145
146 v = v * 2 / length; // Legendre parametrization required V in (-1, 1)
147 u = u * 2 / width; // Legendre parametrization required U in (-1, 1)
148
149 }
150
151 /* Planar deformation using Legendre parametrization
152 w(u, v) = L_{31} * L2(u) + L_{32} * L1(u) * L1(v) + L_{33} * L2(v) +
153 L_{41} * L3(u) + L_{42} * L2(u) * L1(v) + L_{43} * L1(u) * L2(v) + L_{44} * L3(v) +
154 L_{51} * L4(u) + L_{52} * L3(u) * L1(v) + L_{53} * L2(u) * L2(v) + L_{54} * L1(u) * L3(v) + L_{55} * L4(v); */
155 double dw =
156 planarParameters[0] * L2(u) + planarParameters[1] * L1(u) * L1(v) + planarParameters[2] * L2(v) +
157 planarParameters[3] * L3(u) + planarParameters[4] * L2(u) * L1(v) + planarParameters[5] * L1(u) * L2(v) + planarParameters[6] * L3(
158 v) +
159 planarParameters[7] * L4(u) + planarParameters[8] * L3(u) * L1(v) + planarParameters[9] * L2(u) * L2(v) + planarParameters[10] * L1(
160 u) * L3(v) + planarParameters[11] * L4(v);
161
162 double du_dw = state.getState()[1]; // slope in U direction
163 double dv_dw = state.getState()[2]; // slope in V direction
164
165 u = u * width / 2; // from Legendre to Local parametrization
166 v = v * length / 2; // from Legendre to Local parametrization
167
168 TVectorD pos(1);
169
170 if (m_isU) {
171 pos[0] = u + dw * du_dw;
172 } else {
173 pos[0] = v + dw * dv_dw;
174 }
175
176 return pos;
177}
bool m_isU
transient member (not written out during streaming)
Definition: SVDRecoHit.h:122
unsigned short m_sensorID
Unique sensor identifier.
Definition: SVDRecoHit.h:117
Specific implementation of SensorInfo for SVD Sensors which provides additional sensor specific infor...
Definition: SensorInfo.h:25
const SensorInfoBase & getSensorInfo(Belle2::VxdID id) const
Return a referecne to the SensorInfo of a given SensorID.
Definition: GeoCache.cc:67
static GeoCache & getInstance()
Return a reference to the singleton instance.
Definition: GeoCache.cc:214

◆ clone()

genfit::AbsMeasurement * clone ( ) const
inlineoverride

Creating a deep copy of this hit.

Definition at line 41 of file AlignableSVDRecoHit.h.

42 {
43 return new AlignableSVDRecoHit(*this);
44 }

◆ constructHMatrix()

virtual const genfit::AbsHMatrix * constructHMatrix ( const genfit::AbsTrackRep *  ) const
inlineoverridevirtualinherited

Methods that actually interface to Genfit.


Definition at line 111 of file SVDRecoHit.h.

111{ if (m_isU) return new genfit::HMatrixU(); else return new genfit::HMatrixV(); }

◆ constructMeasurementsOnPlane()

std::vector< genfit::MeasurementOnPlane * > constructMeasurementsOnPlane ( const genfit::StateOnPlane &  state) const
overridevirtualinherited

Methods that actually interface to Genfit.


Definition at line 179 of file SVDRecoHit.cc.

180{
181 if (!m_isU || m_rotationPhi == 0.0) {
182
183 // Apply planar deformation to rectangular sensor or V coordinate of slanted sensor
184 TVectorD pos = applyPlanarDeformation(rawHitCoords_, VXD::GeoCache::getInstance().getSensorInfo(m_sensorID).getSurfaceParameters(),
185 state);
186
187 return std::vector<genfit::MeasurementOnPlane*>(1, new genfit::MeasurementOnPlane(pos, rawHitCov_, state.getPlane(),
188 state.getRep(), this->constructHMatrix(state.getRep())));
189 }
190
191 // Wedged sensor: the measured coordinate in U depends on V and the
192 // rotation angle. Namely, it needs to be scaled.
193 double u = rawHitCoords_(0);
194 double v = state.getState()(4);
195 double uPrime = u - v * tan(m_rotationPhi);
196 double scale = uPrime / u;
197
198 TVectorD coords(1);
199 coords(0) = uPrime;
200
201 // Apply planar deformation to U coordinate of slanted sensor
202 TVectorD pos = applyPlanarDeformation(coords, VXD::GeoCache::getInstance().getSensorInfo(m_sensorID).getSurfaceParameters(), state);
203
204 TMatrixDSym cov(scale * scale * rawHitCov_);
205
206 return std::vector<genfit::MeasurementOnPlane*>(1, new genfit::MeasurementOnPlane(pos, cov, state.getPlane(), state.getRep(),
207 this->constructHMatrix(state.getRep())));
208}
TVectorD applyPlanarDeformation(TVectorD rawHit, std::vector< double > planarParameters, const genfit::StateOnPlane &state) const
Apply planar deformation of sensors.
Definition: SVDRecoHit.cc:115
float m_rotationPhi
angle of the plane rotation, for u in wedge sensors.
Definition: SVDRecoHit.h:125

◆ getCluster()

const SVDCluster * getCluster ( ) const
inlineinherited

Get pointer to the Cluster used when creating this RecoHit, can be nullptr if created from something else.

Definition at line 88 of file SVDRecoHit.h.

88{ return m_cluster; }
const SVDCluster * m_cluster
transient member (not written out during streaming)
Definition: SVDRecoHit.h:121

◆ getEnergyDep()

float getEnergyDep ( ) const
inlineinherited

Get deposited energy.

Definition at line 100 of file SVDRecoHit.h.

100{ return m_energyDep; }
float m_energyDep
deposited energy.
Definition: SVDRecoHit.h:123

◆ getPosition()

float getPosition ( ) const
inlineinherited

Get coordinate.

Definition at line 94 of file SVDRecoHit.h.

94{ return rawHitCoords_(0); }

◆ getPositionVariance()

float getPositionVariance ( ) const
inlineinherited

Get coordinate variance.

Definition at line 97 of file SVDRecoHit.h.

97{ return rawHitCov_(0, 0); }

◆ getRotation()

float getRotation ( ) const
inlineinherited

Get rotation angle.

Definition at line 103 of file SVDRecoHit.h.

103{ return m_rotationPhi; }

◆ getSensorID()

VxdID getSensorID ( ) const
inlineinherited

Get the compact ID.

Definition at line 82 of file SVDRecoHit.h.

82{ return m_sensorID; }

◆ getTrueHit()

const SVDTrueHit * getTrueHit ( ) const
inlineinherited

Get pointer to the TrueHit used when creating this RecoHit, can be nullptr if created from something else.

Definition at line 85 of file SVDRecoHit.h.

85{ return m_trueHit; }
const SVDTrueHit * m_trueHit
Pointer to the Truehit used to generate this hit.
Definition: SVDRecoHit.h:119

◆ globalDerivatives()

std::pair< std::vector< int >, TMatrixD > globalDerivatives ( const genfit::StateOnPlane *  sop)
overridevirtual

Labels and derivatives of residuals (local measurement coordinates) w.r.t.

alignment/calibration parameters Matrix "G" of derivatives valid for given prediction of track state:

G(i, j) = d_residual_i/d_parameter_j

For 2D measurement (u,v):

G = ( du/da du/db du/dc ... ) ( dv/da dv/db dv/dc ... )

for calibration parameters a, b, c.

For 1D measurement:

G = ( 0 0 0 ... ) ( dv/da dv/db dv/dc ... ) for V-strip,

G = ( du/da du/db du/dc ... ) ( 0 0 0 ... ) for U-strip,

Measurements with more dimesions (slopes, curvature) should provide full 4-5Dx(n params) matrix (state as (q/p, u', v', u, v) or (u', v', u, v))

Parameters
sopPredicted state of the track as linearization point around which derivatives of alignment/calibration parameters shall be computed
Returns
pair<vector<int>, TMatrixD> With matrix with number of rows = dimension of residual, number of columns = number of parameters. number of columns must match vector<int>.size().

Definition at line 25 of file AlignableSVDRecoHit.cc.

26{
27 auto alignment = GlobalCalibrationManager::getInstance().getAlignmentHierarchy().getGlobalDerivatives<VXDAlignment>(getPlaneId(),
28 sop);
29
30 auto globals = GlobalDerivatives(alignment);
31
33 auto lorentz = GlobalCalibrationManager::getInstance().getLorentzShiftHierarchy().getGlobalDerivatives<VXDAlignment>(getPlaneId(),
34 sop, BFieldManager::getInstance().getField(ROOT::Math::XYZVector(sop->getPos())));
35 globals.add(lorentz);
36 }
37
38 const SVD::SensorInfo& geometry = dynamic_cast<const SVD::SensorInfo&>(VXD::GeoCache::getInstance().getSensorInfo(getSensorID()));
39
40 // Legendre parametrization of deformation
41 auto L1 = [](double x) {return x;};
42 auto L2 = [](double x) {return (3 * x * x - 1) / 2;};
43 auto L3 = [](double x) {return (5 * x * x * x - 3 * x) / 2;};
44 auto L4 = [](double x) {return (35 * x * x * x * x - 30 * x * x + 3) / 8;};
45
46 double du_dw = sop->getState()[1]; // slope in U direction
47 double dv_dw = sop->getState()[2]; // slope in V direction
48 double u = 0.0;
49 double v = 0.0;
50
51 if (isU()) {
52 u = getPosition(); // U coordinate of hit
53 v = sop->getState()[4]; // V coordinate of hit
54 } else {
55 v = getPosition(); // V coordinate of hit
56 u = sop->getState()[3]; // U coordinate of hit
57 }
58
59 double width = geometry.getWidth(v); // Width of sensor (U side)
60 double length = geometry.getLength(); // Length of sensor (V side)
61 u = u * 2 / width; // Legendre parametrization required U in (-1, 1)
62 v = v * 2 / length; // Legendre parametrization required V in (-1, 1)
63
64 // Add parameters of surface deformation to alignment
65 // Numbering of VXD alignment parameters:
66 // -> 0-6: Rigid body alignment
67 // -> 31-33: First level of surface deformation
68 // -> 41-44: Second level of surface deformation
69 // -> 51-55: Third level of surface deformation
70
71 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 31), std::vector<double> {L2(u)*du_dw, L2(u)*dv_dw});
72 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 32), std::vector<double> {L1(u)*L1(v)*du_dw, L1(u)*L1(v)*dv_dw});
73 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 33), std::vector<double> {L2(v)*du_dw, L2(v)*dv_dw});
74
75 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 41), std::vector<double> {L3(u)*du_dw, L3(u)*dv_dw});
76 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 42), std::vector<double> {L2(u)*L1(v)*du_dw, L2(u)*L1(v)*dv_dw});
77 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 43), std::vector<double> {L1(u)*L2(v)*du_dw, L1(u)*L2(v)*dv_dw});
78 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 44), std::vector<double> {L3(v)*du_dw, L3(v)*dv_dw});
79
80 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 51), std::vector<double> {L4(u)*du_dw, L4(u)*dv_dw});
81 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 52), std::vector<double> {L3(u)*L1(v)*du_dw, L3(u)*L1(v)*dv_dw});
82 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 53), std::vector<double> {L2(u)*L2(v)*du_dw, L2(u)*L2(v)*dv_dw});
83 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 54), std::vector<double> {L1(u)*L3(v)*du_dw, L1(u)*L3(v)*dv_dw});
84 globals.add(GlobalLabel::construct<VXDAlignment>(getSensorID(), 55), std::vector<double> {L4(v)*du_dw, L4(v)*dv_dw});
85
86 return globals;
87}
static bool s_enableLorentzGlobalDerivatives
Static enabling(true) or disabling(false) addition of global derivatives for Lorentz shift.
static BFieldManager & getInstance()
Return the instance of the magnetic field manager.
virtual double add(baseType id, baseType param, double value, bool subtractInsteadOfAdd=false)
Add correction to already stored (or to 0. if not set yet) constant value (optionaly with minus sign)
bool isU() const
Is the coordinate u or v?
Definition: SVDRecoHit.h:91
float getPosition() const
Get coordinate.
Definition: SVDRecoHit.h:94
VxdID getSensorID() const
Get the compact ID.
Definition: SVDRecoHit.h:82
VXD alignment (and maybe some calibration) parameters.
Definition: VXDAlignment.h:19
static void getField(const double *pos, double *field)
return the magnetic field at a given position.
Definition: BFieldManager.h:91

◆ isU()

bool isU ( ) const
inlineinherited

Is the coordinate u or v?

Definition at line 91 of file SVDRecoHit.h.

91{ return m_isU; }

◆ setDetectorPlane()

void setDetectorPlane ( )
privateinherited

Set up Detector plane information.

Definition at line 89 of file SVDRecoHit.cc.

90{
91 // Construct a finite detector plane and set it.
93 bool isWedgeU = m_isU && (geometry.getBackwardWidth() > geometry.getForwardWidth());
94
95 // Construct vectors o, u, v
96 ROOT::Math::XYZVector uLocal(1, 0, 0);
97 ROOT::Math::XYZVector vLocal(0, 1, 0);
98 ROOT::Math::XYZVector origin = geometry.pointToGlobal(ROOT::Math::XYZVector(0, 0, 0), true);
99 ROOT::Math::XYZVector uGlobal = geometry.vectorToGlobal(uLocal, true);
100 ROOT::Math::XYZVector vGlobal = geometry.vectorToGlobal(vLocal, true);
101
102 //Construct the detector plane
103 VXD::SensorPlane* finitePlane = new VXD::SensorPlane(m_sensorID, 20.0, 20.0);
104 if (isWedgeU) finitePlane->setRotation(m_rotationPhi);
105 genfit::SharedPlanePtr detPlane(new genfit::DetPlane(XYZToTVector(origin), XYZToTVector(uGlobal), XYZToTVector(vGlobal),
106 finitePlane));
107 setPlane(detPlane, m_sensorID);
108}
A Finite plane of one VXD Sensor.
Definition: SensorPlane.h:34
void setRotation(double phi)
Set plane rotation angle.
Definition: SensorPlane.h:49
static constexpr auto XYZToTVector
Helper function to convert XYZVector to TVector3.
Definition: VectorUtil.h:24

◆ SVDRecoHit() [1/3]

Inherit constructors.

Definition at line 50 of file SVDRecoHit.cc.

23 :
24 genfit::PlanarMeasurement(HIT_DIMENSIONS), m_sensorID(0), m_trueHit(0),
26{
27 setStripV(!m_isU);
28}

◆ SVDRecoHit() [2/3]

SVDRecoHit ( const SVDCluster hit,
const genfit::TrackCandHit *  trackCandHit = nullptr 
)
explicit

Inherit constructors.

Definition at line 71 of file SVDRecoHit.cc.

58 :
59 genfit::PlanarMeasurement(HIT_DIMENSIONS), m_sensorID(0), m_trueHit(0),
61{
62 // Set the sensor UID
63 m_sensorID = hit->getSensorID();
64 m_isU = hit->isUCluster();
65
66 setStripV(!m_isU);
67
68 // Determine if we have a wedge sensor.
70
71 bool isWedgeU = m_isU && (geometry.getBackwardWidth() > geometry.getForwardWidth());
72
73 // Set positions
74 rawHitCoords_(0) = hit->getPosition();
75 if (isWedgeU) {
76 // For u coordinate in a wedge sensor, the position line is not u = const.
77 // We have to rotate the coordinate system to achieve this.
78 m_rotationPhi = atan2((geometry.getBackwardWidth() - geometry.getForwardWidth()) / geometry.getWidth(0) * hit->getPosition(),
79 geometry.getLength());
80 }
81 // Set the error covariance matrix (this does not scale with position)
82 rawHitCov_(0, 0) = hit->getPositionSigma() * hit->getPositionSigma();
83 // Set physical parameters
84 m_energyDep = hit->getCharge();
85 // Setup geometry information
87}
void setDetectorPlane()
Set up Detector plane information.
Definition: SVDRecoHit.cc:89

◆ SVDRecoHit() [3/3]

SVDRecoHit ( const SVDTrueHit hit,
bool  uDirection,
float  sigma = -1 
)

Inherit constructors.

Definition at line 63 of file SVDRecoHit.cc.

30 :
31 genfit::PlanarMeasurement(HIT_DIMENSIONS), m_sensorID(0), m_trueHit(hit),
32 m_cluster(0), m_isU(uDirection), m_energyDep(0), m_rotationPhi(0)
33{
34 setStripV(!m_isU);
35
36 // Smear the coordinate when constructing from a TrueHit.
37 if (!gRandom) B2FATAL("gRandom not initialized, please set up gRandom first");
38
39 // Set the sensor UID
40 m_sensorID = hit->getSensorID();
41
42 //If no error is given, estimate the error to pitch/sqrt(12)
43 if (sigma < 0) {
45 sigma = (m_isU) ? geometry.getUPitch(hit->getV()) / sqrt(12) : geometry.getVPitch() / sqrt(12);
46 }
47
48 // Set positions
49 rawHitCoords_(0) = (m_isU) ? gRandom->Gaus(hit->getU(), sigma) : gRandom->Gaus(hit->getV(), sigma);
50 // Set the error covariance matrix
51 rawHitCov_(0, 0) = sigma * sigma;
52 // Set physical parameters
53 m_energyDep = hit->getEnergyDep();
54 // Setup geometry information
56}
double sqrt(double a)
sqrt for double
Definition: beamHelpers.h:28

Friends And Related Function Documentation

◆ SVDRecoHit

friend class SVDRecoHit
friend

Definition at line 29 of file AlignableSVDRecoHit.h.

Member Data Documentation

◆ m_cluster

const SVDCluster* m_cluster
privateinherited

transient member (not written out during streaming)

Pointer to the Cluster used to generate this hit

Definition at line 121 of file SVDRecoHit.h.

◆ m_energyDep

float m_energyDep
privateinherited

deposited energy.

Definition at line 123 of file SVDRecoHit.h.

◆ m_isU

bool m_isU
privateinherited

transient member (not written out during streaming)

True if the hit has u-coordinate, false if v.

Definition at line 122 of file SVDRecoHit.h.

◆ m_rotationPhi

float m_rotationPhi
privateinherited

angle of the plane rotation, for u in wedge sensors.

Definition at line 125 of file SVDRecoHit.h.

◆ m_sensorID

unsigned short m_sensorID
privateinherited

Unique sensor identifier.

Definition at line 117 of file SVDRecoHit.h.

◆ m_trueHit

const SVDTrueHit* m_trueHit
privateinherited

Pointer to the Truehit used to generate this hit.

Definition at line 119 of file SVDRecoHit.h.

◆ s_enableLorentzGlobalDerivatives

bool s_enableLorentzGlobalDerivatives = false
static

Static enabling(true) or disabling(false) addition of global derivatives for Lorentz shift.

Definition at line 32 of file AlignableSVDRecoHit.h.


The documentation for this class was generated from the following files: