28 double linearDensity) :
30 m_wireLength(wireLength),
31 m_wireTension(wireTension),
32 m_linearDensity(linearDensity)
40 m_wireLength(lsd.m_wireLength),
41 m_wireTension(lsd.m_wireTension),
42 m_linearDensity(lsd.m_linearDensity)
63 double cosLineGrav = s_gravityDirection.dot(lineDirection);
66 cosFi = sqrt( 1 - cosLineGrav*cosLineGrav );
74 sagDir = (s_gravityDirection - cosLineGrav*lineDirection);
75 sagDir = sagDir.unit();
79 double wireLengthSquare= m_wireLength*m_wireLength;
82 double refSagPerMeterSq = 100.0*(m_linearDensity*s_elecStatFactor)/(8.*m_wireTension);
85 double sagMax = refSagPerMeterSq*(wireLengthSquare*1
e-9);
86 double actualSagMax = sagMax*cosFi;
90 double sag=(1.0-4.*((
s*
s)/(wireLengthSquare)))*actualSagMax;
105 rot.col(0) = newLineX;
106 rot.col(1) = newLineY;
107 rot.col(2) = newLineDir;
111 (*newLineTransform) = rot;
112 (*newLineTransform) *= newCenter;
114 return newLineTransform;
121 sl << std::setiosflags(std::ios::fixed);
122 sl << std::setprecision(7);
123 sl <<
"Trk::LineSaggingDescriptor";
124 sl <<
'\t' <<
"- wire length :" << m_wireLength << std::endl;
125 sl <<
'\t' <<
"- wire tension :" << m_wireTension << std::endl;
126 sl <<
'\t' <<
"- linear density :" << m_linearDensity << std::endl;
127 sl << std::setprecision(-1);
133 sl << std::setiosflags(std::ios::fixed);
134 sl << std::setprecision(7);
135 sl <<
"Trk::LineSaggingDescriptor:";
136 sl <<
'\t' <<
"- wire length :" << m_wireLength << std::endl;
137 sl <<
'\t' <<
"- wire tension :" << m_wireTension << std::endl;
138 sl <<
'\t' <<
"- linear density :" << m_linearDensity << std::endl;
139 sl << std::setprecision(-1);