23 double myY = tsosPar[4];
24 double myLengthV = vLength;
29 const double sign = (tsosPar[4] < ySplit ? +1. : -1.);
30 const double yMiddle = ySplit * 0.5 -
sign * vLength * .25;
31 myY = tsosPar[4] - yMiddle;
32 myLengthV = vLength * 0.5 +
sign * ySplit;
43 const double aScale =
gammaScale(uWidth, myLengthV);
47 double uRel = 2. * tsosPar[3] / uWidth;
48 double vRel = 2. * myY / myLengthV;
50 const double cutOff = 1.5;
53 }
else if (uRel > cutOff) {
58 }
else if (vRel > cutOff) {
63 const double uLP0 = 1.0;
64 const double uLP1 = uRel;
65 const double uLP2 = uRel * uRel - 1. / 3.;
66 const double vLP0 = 1.0;
67 const double vLP1 = vRel;
68 const double vLP2 = vRel * vRel - 1. / 3.;
91 return 0.5 * (
width + splitLength);
const LocalTrajectoryParameters & localParameters() const
CLHEP::HepMatrix AlgebraicMatrix
static double gammaScale(double width, double splitLength)
ROOT::Math::SVector< double, 5 > AlgebraicVector5
AlgebraicVector5 mixedFormatVector() const
AlgebraicMatrix operator()(const TrajectoryStateOnSurface &tsos, double uWidth, double vLength, bool doSplit=false, double ySplit=0.) const
Returns 9x2 jacobian matrix.