CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
Conv4HitsReco Class Reference

#include <Conv4HitsReco.h>

Public Member Functions

int ComputeMaxLimits ()
 
int ComputeMinLimits ()
 
 Conv4HitsReco (TVector3 &, TVector3 &, TVector3 &, TVector3 &, TVector3 &)
 
int ConversionCandidate (TVector3 &, double &, double &)
 
void Dump ()
 
TVector3 GetConvVertexFromParams (double &, double &)
 
double GetDm ()
 
double GetDq ()
 
TVector3 GetIntersection (TVector3 &, TVector3 &, TVector3 &, TVector3 &)
 
TVector3 GetMinusCenter (double &)
 
TVector3 GetPlusCenter (double &)
 
double GetPtFromParamAndHitPair (double &, double &)
 
double GetPtMinusFromParam (double &)
 
double GetPtPlusFromParam (double &)
 
int GuessStartingValues (double &, double &)
 
int IsNotValidForPtLimit (double, double, double, double)
 
int IsNotValidForVtxPosition (double &)
 
int mqFindByIteration (double &, double &)
 
double qFromM (double)
 
std::string qFromM_print (double m)
 
void Set (double)
 
void SetIterationStopRelThreshold (double val)
 
void SetLinSystCoeff (double, double)
 
void SetMaxNumberOfIterations (int val)
 
void SetMaxVtxDistance (int val)
 
void SetPtLegMaxCut (double val)
 
void SetPtLegMinCut (double val)
 
void SetPtPhotMaxCut (double val)
 
 ~Conv4HitsReco ()
 

Public Attributes

double _eta
 
double _eta2
 
double _pi
 
double _pi2
 
TVector3 convVtx
 
TVector3 hit1
 
TVector3 hit2
 
TVector3 hit3
 
TVector3 hit4
 
double iterationStopRelThreshold
 
int maxNumberOfIterations
 
double maxVtxDistance
 
TVector3 minusCenter
 
double minusRadius
 
double mMaxLimit
 
double mMinLimit
 
double nNV
 
double nPN
 
double O0
 
double Om
 
double Oq
 
TVector3 plusCenter
 
double plusRadius
 
double pn
 
double PN
 
double PN2
 
double pNV
 
double pPN
 
double ptLegMaxCut
 
double ptLegMinCut
 
double ptPhotMaxCut
 
double qMaxLimit
 
double qMinLimit
 
double T0
 
double Tm
 
double Tq
 
TVector3 unitVn
 
TVector3 unitVp
 
TVector3 v1minus2
 
TVector3 v3minus4
 
TVector3 vMMaxLimit
 
TVector3 vN
 
TVector3 vNminusV
 
TVector3 vP
 
TVector3 vPminusN
 
TVector3 vPminusV
 
TVector3 vQMaxLimit
 
TVector3 vV
 

Detailed Description

Definition at line 10 of file Conv4HitsReco.h.

Constructor & Destructor Documentation

◆ Conv4HitsReco()

Conv4HitsReco::Conv4HitsReco ( TVector3 &  ,
TVector3 &  ,
TVector3 &  ,
TVector3 &  ,
TVector3 &   
)

◆ ~Conv4HitsReco()

Conv4HitsReco::~Conv4HitsReco ( )

Member Function Documentation

◆ ComputeMaxLimits()

int Conv4HitsReco::ComputeMaxLimits ( )

Definition at line 185 of file Conv4HitsReco.cc.

185  {
186  // Q max limit
187  TVector3 vVminusHit2Orthogonal = (vV - hit2).Orthogonal();
188  TVector3 medianPointHit2V = 0.5 * (vV + hit2);
189  vQMaxLimit = GetIntersection(vVminusHit2Orthogonal, medianPointHit2V, unitVp, vP);
190  qMaxLimit = (vQMaxLimit - vP).Mag();
191 
192  // M max limit
193  TVector3 vVminusHit3Orthogonal = (vV - hit3).Orthogonal();
194  TVector3 medianPointHit3V = 0.5 * (vV + hit3);
195  vMMaxLimit = GetIntersection(vVminusHit3Orthogonal, medianPointHit3V, unitVn, vN);
196  mMaxLimit = (vMMaxLimit - vN).Mag();
197 
198  LogDebug("Conv4HitsReco") << " >>>>>> Limits: qMax= " << qMaxLimit << " ==>pt "
199  << GetPtFromParamAndHitPair(qMaxLimit, _pi) << " mMax= " << mMaxLimit << " ==>pt "
201 
202  return IsNotValidForPtLimit(mMaxLimit, qMaxLimit, ptLegMinCut, 100000.); //Max limit not applied here
203 }

References _eta, _pi, GetIntersection(), GetPtFromParamAndHitPair(), hit2, hit3, IsNotValidForPtLimit(), LogDebug, mMaxLimit, ptLegMinCut, qMaxLimit, unitVn, unitVp, vMMaxLimit, vN, vP, vQMaxLimit, and vV.

Referenced by ConversionCandidate().

◆ ComputeMinLimits()

int Conv4HitsReco::ComputeMinLimits ( )

Definition at line 224 of file Conv4HitsReco.cc.

224  {
225  //Evaluate if quad is valid and compute min limits
226  if (((vV - vQMaxLimit).Cross(vMMaxLimit - vQMaxLimit)).Z() > 0.) {
227  //
228  //Quad is invalid
229  LogDebug("Conv4HitsReco") << " >>>>>> Quad is invalid\n";
230  return 1;
231  } else {
232  //
233  // Compute q and m Min limits
234  TVector3 vQMinLimit = GetIntersection(v1minus2, vMMaxLimit, unitVp, vP);
235  qMinLimit = (vQMinLimit - vP) * unitVp;
236  TVector3 vMMinLimit = GetIntersection(v3minus4, vQMaxLimit, unitVn, vN);
237  mMinLimit = (vMMinLimit - vN) * unitVn;
238  if (mMinLimit > mMaxLimit || qMinLimit > qMaxLimit) {
239  LogDebug("Conv4HitsReco") << " >>>>>> Quad is invalid. qMin= " << qMinLimit << " mMin= " << mMinLimit << "\n";
240  return 2;
241  }
242  if (IsNotValidForPtLimit(mMinLimit, qMinLimit, -1000., ptLegMaxCut)) { //Min limit not applied here
243  return 2;
244  }
245 
246  LogDebug("Conv4HitsReco") << " >>>>>> Quad is valid. qMin= " << qMinLimit << " mMin= " << mMinLimit << "\n";
247  return 0;
248  }
249 }

References GetIntersection(), IsNotValidForPtLimit(), LogDebug, mMaxLimit, mMinLimit, ptLegMaxCut, qMaxLimit, qMinLimit, unitVn, unitVp, v1minus2, v3minus4, vMMaxLimit, vN, vP, vQMaxLimit, vV, and DOFs::Z.

Referenced by ConversionCandidate().

◆ ConversionCandidate()

int Conv4HitsReco::ConversionCandidate ( TVector3 &  vtx,
double &  ptplus,
double &  ptminus 
)

Definition at line 112 of file Conv4HitsReco.cc.

112  {
113  double m;
114  double q;
115  int nits = 0;
116 
117  int isNotValidBefore = ComputeMaxLimits() + ComputeMinLimits();
118  int isNotValidAfter = 0;
119  if (!isNotValidBefore) {
121  nits = mqFindByIteration(m, q);
122 
123  if (q > qMaxLimit || q < qMinLimit) {
124  isNotValidAfter = 1;
125  LogDebug("Conv4HitsReco") << ">>>>>>>> quad result not valid for q: qMin= " << qMinLimit << " q= " << q
126  << " qMax= " << qMaxLimit << "\n";
127  }
128  if (m > mMaxLimit || m < mMinLimit) {
129  isNotValidAfter = 1;
130  LogDebug("Conv4HitsReco") << ">>>>>>>> quad result not valid for m: mMin= " << mMinLimit << " m= " << m
131  << " mMax= " << mMaxLimit << "\n";
132  }
133 
134  ptminus = GetPtMinusFromParam(m);
135  ptplus = GetPtPlusFromParam(q);
136  minusCenter = vN + m * unitVn;
137  minusRadius = (hit4 - minusCenter).Mag();
138  plusCenter = vP + q * unitVp;
139  plusRadius = (hit1 - plusCenter).Mag();
141  vtx = convVtx;
142  }
143 
144  if (isNotValidBefore)
145  return 0;
147  return -1000;
149  return -2000;
150  if (isNotValidAfter)
151  return -1 * nits;
152  return nits;
153 }

References ComputeMaxLimits(), ComputeMinLimits(), convVtx, GetConvVertexFromParams(), GetPtMinusFromParam(), GetPtPlusFromParam(), GuessStartingValues(), hit1, hit4, IsNotValidForPtLimit(), IsNotValidForVtxPosition(), LogDebug, visualization-live-secondInstance_cfg::m, maxVtxDistance, minusCenter, minusRadius, mMaxLimit, mMinLimit, mqFindByIteration(), plusCenter, plusRadius, ptLegMaxCut, ptLegMinCut, data-class-funcs::q, qMaxLimit, qMinLimit, unitVn, unitVp, vN, vP, and badGlobalMuonTaggersAOD_cff::vtx.

◆ Dump()

void Conv4HitsReco::Dump ( void  )

Definition at line 265 of file Conv4HitsReco.cc.

265  {
266  LogDebug("Conv4HitsReco") << " ======================================= "
267  << "\n"
268  << " Photon Vertex: " << vV.x() << "," << vV.y() << "," << vV.z() << " Hit1: " << hit1.x()
269  << "," << hit1.y() << "," << hit1.z() << " Hit2: " << hit2.x() << "," << hit2.y() << ","
270  << hit2.z() << " Hit3: " << hit3.x() << "," << hit3.y() << "," << hit3.z()
271  << " Hit4: " << hit4.x() << "," << hit4.y() << "," << hit4.z() << " N: " << vN.x() << ","
272  << vN.y() << "," << vN.z() << " P: " << vP.x() << "," << vP.y() << "," << vP.z()
273  << " P-N: " << vPminusN.x() << "," << vP.y() << "," << vP.z() << " n: " << unitVn.x() << ","
274  << unitVn.y() << "," << unitVn.z() << " p: " << unitVp.x() << "," << unitVp.y() << ","
275  << unitVp.z() << " eta: " << _eta << " pi: " << _pi << "\n";
276 }

References _eta, _pi, hit1, hit2, hit3, hit4, LogDebug, unitVn, unitVp, vN, vP, vPminusN, and vV.

◆ GetConvVertexFromParams()

TVector3 Conv4HitsReco::GetConvVertexFromParams ( double &  m,
double &  q 
)

Definition at line 98 of file Conv4HitsReco.cc.

98  {
99  TVector3 unitVQminusM = (plusCenter - minusCenter).Unit();
100  TVector3 vtxViaPlus = vP + q * unitVp - plusRadius * unitVQminusM;
101  TVector3 vtxViaMinus = vN + m * unitVn + minusRadius * unitVQminusM;
102 
103  // return 0.5*(vN+m*unitVn+m*unitVQminusM+vP+q*unitVp-q*unitVQminusM);
104  LogDebug("Conv4HitsReco") << ">>>>>>>> Conversion vertex computed via Plus pair\n"
105  << vtxViaPlus.x() << "," << vtxViaPlus.y() << "," << vtxViaPlus.z()
106  << ">>>>>>>> Conversion vertex computed via Minus pair\n"
107  << vtxViaMinus.x() << "," << vtxViaMinus.y() << "," << vtxViaMinus.z();
108 
109  return 0.5 * (vtxViaPlus + vtxViaMinus);
110 }

References LogDebug, visualization-live-secondInstance_cfg::m, minusCenter, minusRadius, plusCenter, plusRadius, data-class-funcs::q, unitVn, unitVp, vN, and vP.

Referenced by ConversionCandidate().

◆ GetDm()

double Conv4HitsReco::GetDm ( )

Definition at line 10 of file Conv4HitsReco.cc.

10  {
11  return (Tq * O0 - T0 * Oq) / (Tq * Om - Tm * Oq); //dm
12 }

References O0, Om, Oq, T0, and Tq.

Referenced by mqFindByIteration().

◆ GetDq()

double Conv4HitsReco::GetDq ( )

Definition at line 14 of file Conv4HitsReco.cc.

14  {
15  return (Tm * O0 - T0 * Om) / (Tm * Oq - Tq * Om); //dq
16 }

References O0, Om, Oq, T0, and Tq.

Referenced by mqFindByIteration().

◆ GetIntersection()

TVector3 Conv4HitsReco::GetIntersection ( TVector3 &  V1,
TVector3 &  p1,
TVector3 &  V2,
TVector3 &  p2 
)

Definition at line 82 of file Conv4HitsReco.cc.

82  {
83  TVector3 v1 = V1.Unit();
84  TVector3 v2 = V2.Unit();
85 
86  double v1v2 = v1 * v2;
87  return v2 * ((p1 - p2) * (v1v2 * v1 - v2) / (v1v2 * v1v2 - 1.)) + p2;
88 }

References p1, and p2.

Referenced by ComputeMaxLimits(), and ComputeMinLimits().

◆ GetMinusCenter()

TVector3 Conv4HitsReco::GetMinusCenter ( double &  radius)

Definition at line 75 of file Conv4HitsReco.cc.

75  {
77  return minusCenter;
78 }

References minusCenter, minusRadius, and CosmicsPD_Skims::radius.

◆ GetPlusCenter()

TVector3 Conv4HitsReco::GetPlusCenter ( double &  radius)

Definition at line 70 of file Conv4HitsReco.cc.

70  {
72  return plusCenter;
73 }

References plusCenter, plusRadius, and CosmicsPD_Skims::radius.

◆ GetPtFromParamAndHitPair()

double Conv4HitsReco::GetPtFromParamAndHitPair ( double &  m,
double &  eta 
)

Definition at line 90 of file Conv4HitsReco.cc.

90  {
91  return 0.01 * 0.3 * 3.8 * sqrt(m * m + eta * eta);
92 }

References PVValHelper::eta, visualization-live-secondInstance_cfg::m, and mathSSE::sqrt().

Referenced by ComputeMaxLimits(), GetPtMinusFromParam(), GetPtPlusFromParam(), and IsNotValidForPtLimit().

◆ GetPtMinusFromParam()

double Conv4HitsReco::GetPtMinusFromParam ( double &  m)

◆ GetPtPlusFromParam()

double Conv4HitsReco::GetPtPlusFromParam ( double &  q)

Definition at line 96 of file Conv4HitsReco.cc.

96 { return GetPtFromParamAndHitPair(q, _pi); }

References _pi, GetPtFromParamAndHitPair(), and data-class-funcs::q.

Referenced by ConversionCandidate().

◆ GuessStartingValues()

int Conv4HitsReco::GuessStartingValues ( double &  m,
double &  q 
)

Definition at line 251 of file Conv4HitsReco.cc.

251  {
252  /*
253  m = 0.5*(mMinLimit+mMaxLimit);
254  q = 0.5*(qMinLimit+qMaxLimit);
255  */
256 
257  m = mMaxLimit;
258  q = qMaxLimit;
259 
260  LogDebug("Conv4HitsReco") << " >>>>>> Starting values: q= " << q << " m= " << m << "\n";
261 
262  return 0;
263 }

References LogDebug, visualization-live-secondInstance_cfg::m, mMaxLimit, data-class-funcs::q, and qMaxLimit.

Referenced by ConversionCandidate().

◆ IsNotValidForPtLimit()

int Conv4HitsReco::IsNotValidForPtLimit ( double  m,
double  q,
double  ptmin,
double  ptmax 
)

Definition at line 205 of file Conv4HitsReco.cc.

205  {
207  return 1;
209  return 1;
211  return 1;
213  return 1;
214  return 0;
215 }

References _eta, _pi, GetPtFromParamAndHitPair(), visualization-live-secondInstance_cfg::m, muonTiming_cfi::ptmax, ptmin, and data-class-funcs::q.

Referenced by ComputeMaxLimits(), ComputeMinLimits(), and ConversionCandidate().

◆ IsNotValidForVtxPosition()

int Conv4HitsReco::IsNotValidForVtxPosition ( double &  maxDist)

Definition at line 217 of file Conv4HitsReco.cc.

217  {
218  TVector3 hitAve = 0.25 * (hit1 + hit2 + hit3 + hit4);
219  if ((convVtx - hitAve).Mag() > maxDist)
220  return 1;
221  return 0;
222 }

References convVtx, hit1, hit2, hit3, hit4, and TtFullHadJetPartonMatch_cfi::maxDist.

Referenced by ConversionCandidate().

◆ mqFindByIteration()

int Conv4HitsReco::mqFindByIteration ( double &  m,
double &  q 
)

Definition at line 155 of file Conv4HitsReco.cc.

155  {
156  int maxIte = maxNumberOfIterations;
158  double edm = 1.;
159  double edq = 1.;
160  int i = 0;
161  while (((edq > err) || (edm > err)) && (i < maxIte)) {
162  SetLinSystCoeff(m, q);
163  double dm = GetDm();
164  double dq = GetDq();
165  /*
166  while( m+dm > mMaxLimit || m+dm < mMinLimit || q+dq > qMaxLimit || q+dq < qMinLimit ){
167 
168  LogDebug("Conv4HitsReco")<<">>>>>>>> Going outside limits, reducing increments \n";
169  dm=dm/2.;
170  dq=dq/2.;
171  }
172  */
173  m += dm;
174  q += dq;
175  edm = fabs(dm / m);
176  edq = fabs(dq / q);
177  LogDebug("Conv4HitsReco") << ">>>>>>>> Iteration " << i << " m: " << m << " q: " << q << " dm: " << dm
178  << " dq: " << dq << " edm: " << edm << " edq: " << edq << "\n";
179  i++;
180  }
181 
182  return i;
183 }

References symbols::dm, runTheMatrix::err, GetDm(), GetDq(), mps_fire::i, iterationStopRelThreshold, LogDebug, visualization-live-secondInstance_cfg::m, maxNumberOfIterations, data-class-funcs::q, and SetLinSystCoeff().

Referenced by ConversionCandidate().

◆ qFromM()

double Conv4HitsReco::qFromM ( double  m)

Definition at line 65 of file Conv4HitsReco.cc.

65  {
66  LogDebug("Conv4HitsReco") << qFromM_print(m);
67  return 0.;
68 }

References LogDebug, visualization-live-secondInstance_cfg::m, and qFromM_print().

◆ qFromM_print()

std::string Conv4HitsReco::qFromM_print ( double  m)

Definition at line 44 of file Conv4HitsReco.cc.

44  {
45  std::stringstream ss;
46  TVector3 vPminusM = vPminusN - m * unitVn;
47  double m2 = m * m;
48  double nPM = unitVn * vPminusM;
49  double pPM = unitVp * vPminusM;
50  double NVPM = vNminusV * vPminusM;
51 
52  double alpha = (m * pn + pNV) * (m * pn + pNV) - _eta2 - m2;
53  double beta = m2 * pn * nPM + m * pn * NVPM + m * nPM * pNV - pPM * (_eta2 + m2) + pNV * NVPM;
54  double gamma = m2 * nPM * nPM + NVPM * NVPM + 2. * m * nPM * NVPM - vPminusM.Mag2() * (_eta2 + m2);
55 
56  double disc = sqrt(beta * beta - alpha * gamma);
57 
58  double q01 = (-beta + disc) / alpha;
59  double q02 = (-beta - disc) / alpha;
60 
61  ss << " m: " << m << " q01: " << std::setw(20) << q01 << " q02: " << std::setw(20) << q02 << "/n";
62  return ss.str();
63 }

References _eta2, zMuMuMuonUserData::alpha, zMuMuMuonUserData::beta, TtSemiLepEvtBuilder_cfi::disc, CustomPhysics_cfi::gamma, visualization-live-secondInstance_cfg::m, pn, pNV, mathSSE::sqrt(), contentValuesCheck::ss, unitVn, unitVp, vNminusV, and vPminusN.

Referenced by qFromM().

◆ Set()

void Conv4HitsReco::Set ( double  )

◆ SetIterationStopRelThreshold()

void Conv4HitsReco::SetIterationStopRelThreshold ( double  val)
inline

Definition at line 77 of file Conv4HitsReco.h.

References iterationStopRelThreshold, and heppy_batch::val.

◆ SetLinSystCoeff()

void Conv4HitsReco::SetLinSystCoeff ( double  m,
double  q 
)

Definition at line 18 of file Conv4HitsReco.cc.

18  {
19  // dq*Tq + dm*Tm = T0 // Tangent condition
20  // dq*Oq + dm*Om = O0 // Orthogonality condition
21 
22  double sqrtEta2mm = sqrt(_eta2 + m * m);
23  double sqrtPi2qq = sqrt(_pi2 + q * q);
24 
25  double signT = 1.;
26 
27  Tq = -2. * pPN + 2. * m * pn + signT * 2. * q * sqrtEta2mm / sqrtPi2qq;
28  Tm = 2. * nPN + 2. * q * pn + signT * 2. * m * sqrtPi2qq / sqrtEta2mm;
29  T0 = PN2 - _eta2 - _pi2 - 2. * q * m * pn + 2. * q * pPN - 2. * m * nPN - signT * 2. * sqrtEta2mm * sqrtPi2qq;
30 
31  TVector3 vQminusM = q * unitVp - m * unitVn + vPminusN;
32  double QM = vQminusM.Mag();
33  double pQM = unitVp * vQminusM;
34  double nQM = unitVn * vQminusM;
35  double NVQM = vNminusV * vQminusM;
36 
37  double signO = 1.;
38 
39  Oq = sqrtEta2mm * pQM / QM + m * pn + pNV;
40  Om = m * QM / sqrtEta2mm - signO * sqrtEta2mm * nQM / QM + nQM - nNV - m;
41  O0 = -signO * sqrtEta2mm * QM - m * nQM - NVQM;
42 }

References _eta2, _pi2, visualization-live-secondInstance_cfg::m, nNV, nPN, O0, Om, Oq, pn, PN2, pNV, pPN, data-class-funcs::q, mathSSE::sqrt(), T0, Tq, unitVn, unitVp, vNminusV, and vPminusN.

Referenced by mqFindByIteration().

◆ SetMaxNumberOfIterations()

void Conv4HitsReco::SetMaxNumberOfIterations ( int  val)
inline

Definition at line 78 of file Conv4HitsReco.h.

References maxNumberOfIterations, and heppy_batch::val.

◆ SetMaxVtxDistance()

void Conv4HitsReco::SetMaxVtxDistance ( int  val)
inline

Definition at line 79 of file Conv4HitsReco.h.

79 { maxVtxDistance = val; };

References maxVtxDistance, and heppy_batch::val.

◆ SetPtLegMaxCut()

void Conv4HitsReco::SetPtLegMaxCut ( double  val)
inline

Definition at line 73 of file Conv4HitsReco.h.

73 { ptLegMaxCut = val; };

References ptLegMaxCut, and heppy_batch::val.

◆ SetPtLegMinCut()

void Conv4HitsReco::SetPtLegMinCut ( double  val)
inline

Definition at line 72 of file Conv4HitsReco.h.

72 { ptLegMinCut = val; };

References ptLegMinCut, and heppy_batch::val.

◆ SetPtPhotMaxCut()

void Conv4HitsReco::SetPtPhotMaxCut ( double  val)
inline

Definition at line 74 of file Conv4HitsReco.h.

74 { ptPhotMaxCut = val; };

References ptPhotMaxCut, and heppy_batch::val.

Member Data Documentation

◆ _eta

double Conv4HitsReco::_eta

Definition at line 36 of file Conv4HitsReco.h.

Referenced by ComputeMaxLimits(), Dump(), GetPtMinusFromParam(), and IsNotValidForPtLimit().

◆ _eta2

double Conv4HitsReco::_eta2

Definition at line 38 of file Conv4HitsReco.h.

Referenced by qFromM_print(), and SetLinSystCoeff().

◆ _pi

double Conv4HitsReco::_pi

Definition at line 37 of file Conv4HitsReco.h.

Referenced by ComputeMaxLimits(), Dump(), GetPtPlusFromParam(), and IsNotValidForPtLimit().

◆ _pi2

double Conv4HitsReco::_pi2

Definition at line 39 of file Conv4HitsReco.h.

Referenced by SetLinSystCoeff().

◆ convVtx

TVector3 Conv4HitsReco::convVtx

Definition at line 48 of file Conv4HitsReco.h.

Referenced by ConversionCandidate(), and IsNotValidForVtxPosition().

◆ hit1

TVector3 Conv4HitsReco::hit1

Definition at line 17 of file Conv4HitsReco.h.

Referenced by ConversionCandidate(), Dump(), and IsNotValidForVtxPosition().

◆ hit2

TVector3 Conv4HitsReco::hit2

Definition at line 16 of file Conv4HitsReco.h.

Referenced by ComputeMaxLimits(), Dump(), and IsNotValidForVtxPosition().

◆ hit3

TVector3 Conv4HitsReco::hit3

Definition at line 15 of file Conv4HitsReco.h.

Referenced by ComputeMaxLimits(), Dump(), and IsNotValidForVtxPosition().

◆ hit4

TVector3 Conv4HitsReco::hit4

Definition at line 14 of file Conv4HitsReco.h.

Referenced by ConversionCandidate(), Dump(), and IsNotValidForVtxPosition().

◆ iterationStopRelThreshold

double Conv4HitsReco::iterationStopRelThreshold

Definition at line 52 of file Conv4HitsReco.h.

Referenced by mqFindByIteration(), and SetIterationStopRelThreshold().

◆ maxNumberOfIterations

int Conv4HitsReco::maxNumberOfIterations

Definition at line 53 of file Conv4HitsReco.h.

Referenced by mqFindByIteration(), and SetMaxNumberOfIterations().

◆ maxVtxDistance

double Conv4HitsReco::maxVtxDistance

Definition at line 54 of file Conv4HitsReco.h.

Referenced by ConversionCandidate(), and SetMaxVtxDistance().

◆ minusCenter

TVector3 Conv4HitsReco::minusCenter

Definition at line 47 of file Conv4HitsReco.h.

Referenced by ConversionCandidate(), GetConvVertexFromParams(), and GetMinusCenter().

◆ minusRadius

double Conv4HitsReco::minusRadius

Definition at line 50 of file Conv4HitsReco.h.

Referenced by ConversionCandidate(), GetConvVertexFromParams(), and GetMinusCenter().

◆ mMaxLimit

double Conv4HitsReco::mMaxLimit

◆ mMinLimit

double Conv4HitsReco::mMinLimit

Definition at line 45 of file Conv4HitsReco.h.

Referenced by ComputeMinLimits(), and ConversionCandidate().

◆ nNV

double Conv4HitsReco::nNV

Definition at line 35 of file Conv4HitsReco.h.

Referenced by SetLinSystCoeff().

◆ nPN

double Conv4HitsReco::nPN

Definition at line 31 of file Conv4HitsReco.h.

Referenced by SetLinSystCoeff().

◆ O0

double Conv4HitsReco::O0

Definition at line 64 of file Conv4HitsReco.h.

Referenced by GetDm(), GetDq(), and SetLinSystCoeff().

◆ Om

double Conv4HitsReco::Om

Definition at line 64 of file Conv4HitsReco.h.

Referenced by GetDm(), GetDq(), and SetLinSystCoeff().

◆ Oq

double Conv4HitsReco::Oq

Definition at line 64 of file Conv4HitsReco.h.

Referenced by GetDm(), GetDq(), and SetLinSystCoeff().

◆ plusCenter

TVector3 Conv4HitsReco::plusCenter

Definition at line 46 of file Conv4HitsReco.h.

Referenced by ConversionCandidate(), GetConvVertexFromParams(), and GetPlusCenter().

◆ plusRadius

double Conv4HitsReco::plusRadius

Definition at line 49 of file Conv4HitsReco.h.

Referenced by ConversionCandidate(), GetConvVertexFromParams(), and GetPlusCenter().

◆ pn

double Conv4HitsReco::pn

Definition at line 29 of file Conv4HitsReco.h.

Referenced by qFromM_print(), and SetLinSystCoeff().

◆ PN

double Conv4HitsReco::PN

Definition at line 32 of file Conv4HitsReco.h.

◆ PN2

double Conv4HitsReco::PN2

Definition at line 33 of file Conv4HitsReco.h.

Referenced by SetLinSystCoeff().

◆ pNV

double Conv4HitsReco::pNV

Definition at line 34 of file Conv4HitsReco.h.

Referenced by qFromM_print(), and SetLinSystCoeff().

◆ pPN

double Conv4HitsReco::pPN

Definition at line 30 of file Conv4HitsReco.h.

Referenced by SetLinSystCoeff().

◆ ptLegMaxCut

double Conv4HitsReco::ptLegMaxCut

Definition at line 56 of file Conv4HitsReco.h.

Referenced by ComputeMinLimits(), ConversionCandidate(), and SetPtLegMaxCut().

◆ ptLegMinCut

double Conv4HitsReco::ptLegMinCut

Definition at line 55 of file Conv4HitsReco.h.

Referenced by ComputeMaxLimits(), ConversionCandidate(), and SetPtLegMinCut().

◆ ptPhotMaxCut

double Conv4HitsReco::ptPhotMaxCut

Definition at line 57 of file Conv4HitsReco.h.

Referenced by SetPtPhotMaxCut().

◆ qMaxLimit

double Conv4HitsReco::qMaxLimit

◆ qMinLimit

double Conv4HitsReco::qMinLimit

Definition at line 44 of file Conv4HitsReco.h.

Referenced by ComputeMinLimits(), and ConversionCandidate().

◆ T0

double Conv4HitsReco::T0

Definition at line 63 of file Conv4HitsReco.h.

Referenced by GetDm(), GetDq(), and SetLinSystCoeff().

◆ Tm

double Conv4HitsReco::Tm

Definition at line 63 of file Conv4HitsReco.h.

◆ Tq

double Conv4HitsReco::Tq

Definition at line 63 of file Conv4HitsReco.h.

Referenced by GetDm(), GetDq(), and SetLinSystCoeff().

◆ unitVn

TVector3 Conv4HitsReco::unitVn

◆ unitVp

TVector3 Conv4HitsReco::unitVp

◆ v1minus2

TVector3 Conv4HitsReco::v1minus2

Definition at line 21 of file Conv4HitsReco.h.

Referenced by ComputeMinLimits().

◆ v3minus4

TVector3 Conv4HitsReco::v3minus4

Definition at line 20 of file Conv4HitsReco.h.

Referenced by ComputeMinLimits().

◆ vMMaxLimit

TVector3 Conv4HitsReco::vMMaxLimit

Definition at line 40 of file Conv4HitsReco.h.

Referenced by ComputeMaxLimits(), and ComputeMinLimits().

◆ vN

TVector3 Conv4HitsReco::vN

◆ vNminusV

TVector3 Conv4HitsReco::vNminusV

Definition at line 26 of file Conv4HitsReco.h.

Referenced by qFromM_print(), and SetLinSystCoeff().

◆ vP

TVector3 Conv4HitsReco::vP

◆ vPminusN

TVector3 Conv4HitsReco::vPminusN

Definition at line 24 of file Conv4HitsReco.h.

Referenced by Dump(), qFromM_print(), and SetLinSystCoeff().

◆ vPminusV

TVector3 Conv4HitsReco::vPminusV

Definition at line 25 of file Conv4HitsReco.h.

◆ vQMaxLimit

TVector3 Conv4HitsReco::vQMaxLimit

Definition at line 41 of file Conv4HitsReco.h.

Referenced by ComputeMaxLimits(), and ComputeMinLimits().

◆ vV

TVector3 Conv4HitsReco::vV

Definition at line 13 of file Conv4HitsReco.h.

Referenced by ComputeMaxLimits(), ComputeMinLimits(), and Dump().

Conv4HitsReco::nNV
double nNV
Definition: Conv4HitsReco.h:35
mps_fire.i
i
Definition: mps_fire.py:355
Conv4HitsReco::GetPtMinusFromParam
double GetPtMinusFromParam(double &)
Definition: Conv4HitsReco.cc:94
Conv4HitsReco::v1minus2
TVector3 v1minus2
Definition: Conv4HitsReco.h:21
zMuMuMuonUserData.alpha
alpha
zGenParticlesMatch = cms.InputTag(""),
Definition: zMuMuMuonUserData.py:9
edm
HLT enums.
Definition: AlignableModifier.h:19
zMuMuMuonUserData.beta
beta
Definition: zMuMuMuonUserData.py:10
Conv4HitsReco::GuessStartingValues
int GuessStartingValues(double &, double &)
Definition: Conv4HitsReco.cc:251
Conv4HitsReco::nPN
double nPN
Definition: Conv4HitsReco.h:31
data-class-funcs.q
q
Definition: data-class-funcs.py:169
Conv4HitsReco::GetDq
double GetDq()
Definition: Conv4HitsReco.cc:14
CustomPhysics_cfi.gamma
gamma
Definition: CustomPhysics_cfi.py:17
Conv4HitsReco::convVtx
TVector3 convVtx
Definition: Conv4HitsReco.h:48
Conv4HitsReco::hit3
TVector3 hit3
Definition: Conv4HitsReco.h:15
Conv4HitsReco::qMaxLimit
double qMaxLimit
Definition: Conv4HitsReco.h:42
Conv4HitsReco::IsNotValidForVtxPosition
int IsNotValidForVtxPosition(double &)
Definition: Conv4HitsReco.cc:217
Conv4HitsReco::maxNumberOfIterations
int maxNumberOfIterations
Definition: Conv4HitsReco.h:53
TtSemiLepEvtBuilder_cfi.disc
disc
Definition: TtSemiLepEvtBuilder_cfi.py:60
Conv4HitsReco::T0
double T0
Definition: Conv4HitsReco.h:63
Conv4HitsReco::GetDm
double GetDm()
Definition: Conv4HitsReco.cc:10
Conv4HitsReco::hit2
TVector3 hit2
Definition: Conv4HitsReco.h:16
contentValuesCheck.ss
ss
Definition: contentValuesCheck.py:33
Conv4HitsReco::pPN
double pPN
Definition: Conv4HitsReco.h:30
Conv4HitsReco::ComputeMaxLimits
int ComputeMaxLimits()
Definition: Conv4HitsReco.cc:185
PVValHelper::eta
Definition: PVValidationHelpers.h:69
Conv4HitsReco::GetPtFromParamAndHitPair
double GetPtFromParamAndHitPair(double &, double &)
Definition: Conv4HitsReco.cc:90
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:72
Conv4HitsReco::_eta
double _eta
Definition: Conv4HitsReco.h:36
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
Conv4HitsReco::SetLinSystCoeff
void SetLinSystCoeff(double, double)
Definition: Conv4HitsReco.cc:18
p2
double p2[4]
Definition: TauolaWrapper.h:90
Conv4HitsReco::GetIntersection
TVector3 GetIntersection(TVector3 &, TVector3 &, TVector3 &, TVector3 &)
Definition: Conv4HitsReco.cc:82
Conv4HitsReco::plusCenter
TVector3 plusCenter
Definition: Conv4HitsReco.h:46
Conv4HitsReco::ptPhotMaxCut
double ptPhotMaxCut
Definition: Conv4HitsReco.h:57
Conv4HitsReco::v3minus4
TVector3 v3minus4
Definition: Conv4HitsReco.h:20
Conv4HitsReco::mqFindByIteration
int mqFindByIteration(double &, double &)
Definition: Conv4HitsReco.cc:155
Tm
Definition: Tm.h:13
badGlobalMuonTaggersAOD_cff.vtx
vtx
Definition: badGlobalMuonTaggersAOD_cff.py:5
Conv4HitsReco::pNV
double pNV
Definition: Conv4HitsReco.h:34
Conv4HitsReco::vP
TVector3 vP
Definition: Conv4HitsReco.h:23
Conv4HitsReco::GetPtPlusFromParam
double GetPtPlusFromParam(double &)
Definition: Conv4HitsReco.cc:96
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:670
Conv4HitsReco::ComputeMinLimits
int ComputeMinLimits()
Definition: Conv4HitsReco.cc:224
Conv4HitsReco::vQMaxLimit
TVector3 vQMaxLimit
Definition: Conv4HitsReco.h:41
runTheMatrix.err
err
Definition: runTheMatrix.py:288
Conv4HitsReco::minusCenter
TVector3 minusCenter
Definition: Conv4HitsReco.h:47
Conv4HitsReco::hit4
TVector3 hit4
Definition: Conv4HitsReco.h:14
DOFs::Z
Definition: AlignPCLThresholdsWriter.cc:37
symbols.dm
dm
Definition: symbols.py:66
p1
double p1[4]
Definition: TauolaWrapper.h:89
Conv4HitsReco::hit1
TVector3 hit1
Definition: Conv4HitsReco.h:17
Conv4HitsReco::O0
double O0
Definition: Conv4HitsReco.h:64
Conv4HitsReco::iterationStopRelThreshold
double iterationStopRelThreshold
Definition: Conv4HitsReco.h:52
Conv4HitsReco::qFromM_print
std::string qFromM_print(double m)
Definition: Conv4HitsReco.cc:44
Conv4HitsReco::Tq
double Tq
Definition: Conv4HitsReco.h:63
Conv4HitsReco::plusRadius
double plusRadius
Definition: Conv4HitsReco.h:49
TtFullHadJetPartonMatch_cfi.maxDist
maxDist
Definition: TtFullHadJetPartonMatch_cfi.py:35
Conv4HitsReco::Oq
double Oq
Definition: Conv4HitsReco.h:64
Conv4HitsReco::Om
double Om
Definition: Conv4HitsReco.h:64
Conv4HitsReco::_pi2
double _pi2
Definition: Conv4HitsReco.h:39
muonTiming_cfi.ptmax
ptmax
Definition: muonTiming_cfi.py:22
heppy_batch.val
val
Definition: heppy_batch.py:351
Conv4HitsReco::ptLegMinCut
double ptLegMinCut
Definition: Conv4HitsReco.h:55
Conv4HitsReco::mMinLimit
double mMinLimit
Definition: Conv4HitsReco.h:45
Conv4HitsReco::vNminusV
TVector3 vNminusV
Definition: Conv4HitsReco.h:26
CosmicsPD_Skims.radius
radius
Definition: CosmicsPD_Skims.py:135
ptmin
double ptmin
Definition: HydjetWrapper.h:84
Conv4HitsReco::unitVn
TVector3 unitVn
Definition: Conv4HitsReco.h:27
Conv4HitsReco::pn
double pn
Definition: Conv4HitsReco.h:29
Conv4HitsReco::vMMaxLimit
TVector3 vMMaxLimit
Definition: Conv4HitsReco.h:40
Conv4HitsReco::vPminusN
TVector3 vPminusN
Definition: Conv4HitsReco.h:24
Conv4HitsReco::ptLegMaxCut
double ptLegMaxCut
Definition: Conv4HitsReco.h:56
Conv4HitsReco::vV
TVector3 vV
Definition: Conv4HitsReco.h:13
Conv4HitsReco::PN2
double PN2
Definition: Conv4HitsReco.h:33
Conv4HitsReco::IsNotValidForPtLimit
int IsNotValidForPtLimit(double, double, double, double)
Definition: Conv4HitsReco.cc:205
Conv4HitsReco::mMaxLimit
double mMaxLimit
Definition: Conv4HitsReco.h:43
Conv4HitsReco::vN
TVector3 vN
Definition: Conv4HitsReco.h:22
Conv4HitsReco::minusRadius
double minusRadius
Definition: Conv4HitsReco.h:50
Conv4HitsReco::unitVp
TVector3 unitVp
Definition: Conv4HitsReco.h:28
Conv4HitsReco::_eta2
double _eta2
Definition: Conv4HitsReco.h:38
Conv4HitsReco::GetConvVertexFromParams
TVector3 GetConvVertexFromParams(double &, double &)
Definition: Conv4HitsReco.cc:98
Conv4HitsReco::_pi
double _pi
Definition: Conv4HitsReco.h:37
Conv4HitsReco::maxVtxDistance
double maxVtxDistance
Definition: Conv4HitsReco.h:54
Conv4HitsReco::qMinLimit
double qMinLimit
Definition: Conv4HitsReco.h:44