#include <MdcSegInfoCsmc.h>
◆ MdcSegInfoCsmc() [1/3]
| MdcSegInfoCsmc::MdcSegInfoCsmc |
( |
| ) |
|
|
inline |
◆ ~MdcSegInfoCsmc() [1/3]
| MdcSegInfoCsmc::~MdcSegInfoCsmc |
( |
| ) |
|
|
inline |
◆ MdcSegInfoCsmc() [2/3]
| MdcSegInfoCsmc::MdcSegInfoCsmc |
( |
| ) |
|
|
inline |
◆ ~MdcSegInfoCsmc() [2/3]
| MdcSegInfoCsmc::~MdcSegInfoCsmc |
( |
| ) |
|
|
inline |
◆ MdcSegInfoCsmc() [3/3]
| MdcSegInfoCsmc::MdcSegInfoCsmc |
( |
| ) |
|
|
inline |
◆ ~MdcSegInfoCsmc() [3/3]
| MdcSegInfoCsmc::~MdcSegInfoCsmc |
( |
| ) |
|
|
inline |
◆ calcStraight() [1/6]
| void MdcSegInfoCsmc::calcStraight |
( |
const MdcSeg * | parentSeg | ) |
|
Definition at line 95 of file MdcSegInfoCsmc.cxx.
95 {
96
97 double slope = parentSeg->
slope();
99 double phi = parentSeg->
phi();
100 const double* inErr = parentSeg->
errmat();
101
103}
void calcStraight(double phi, double slope, double rad, const double *inErr)
const MdcSuperLayer * superlayer() const
const double * errmat() const
◆ calcStraight() [2/6]
| void MdcSegInfoCsmc::calcStraight |
( |
const MdcSeg * | parentSeg | ) |
|
◆ calcStraight() [3/6]
| void MdcSegInfoCsmc::calcStraight |
( |
const MdcSeg * | parentSeg | ) |
|
◆ calcStraight() [4/6]
| void MdcSegInfoCsmc::calcStraight |
( |
double | phi, |
|
|
double | slope, |
|
|
double | rad, |
|
|
const double * | inErr ) |
Definition at line 36 of file MdcSegInfoCsmc.cxx.
37 {
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59 double d0ovSlope = -
rad *
rad / sqrt( 1. + slope * slope *
rad *
rad );
60 double d0 = slope * d0ovSlope;
62
63 double d0ovRad =
d0 /
rad;
64
65 d0ovRad =
66 ( d0ovRad > 1.0 || d0ovRad < -1.0 ) ? ( d0ovRad + 0.00001 ) / fabs( d0ovRad ) : d0ovRad;
67 BesAngle
phi0 = phi - asin( d0ovRad );
69
70
71
72 double dphi0ds = -d0ovSlope * sqrt( 1. - d0ovRad * d0ovRad ) /
rad;
73 double dd0ds = d0ovSlope * ( 1. - d0ovRad * d0ovRad );
74
75
76 _errmat[0] = inErr[2] * dd0ds * dd0ds;
78
79
80 _errmat[2] = inErr[2] * dphi0ds * dphi0ds + inErr[0] + inErr[1] * 2. * dphi0ds;
82
83 _errmat[1] = inErr[2] * dd0ds * dphi0ds + inErr[1] * dd0ds;
84
86 if ( error )
87 {
88 std::cout << " ErrMsg(warning) "
89 << "Failed to invert matrix -- MdcSegInfo::calcStraight" << endl
91 }
92}
int mdcTwoInv(double matrix[3], double invmat[3])
Referenced by calcStraight(), and MdcSegGrouperCsmc::fillWithSegs().
◆ calcStraight() [5/6]
| void MdcSegInfoCsmc::calcStraight |
( |
double | phi, |
|
|
double | slope, |
|
|
double | rad, |
|
|
const double * | inErr ) |
◆ calcStraight() [6/6]
| void MdcSegInfoCsmc::calcStraight |
( |
double | phi, |
|
|
double | slope, |
|
|
double | rad, |
|
|
const double * | inErr ) |
◆ d0() [1/3]
| double MdcSegInfoCsmc::d0 |
( |
| ) |
const |
|
inline |
◆ d0() [2/3]
| double MdcSegInfoCsmc::d0 |
( |
| ) |
const |
|
inline |
◆ d0() [3/3]
| double MdcSegInfoCsmc::d0 |
( |
| ) |
const |
|
inline |
◆ parIsAngle() [1/3]
| bool MdcSegInfoCsmc::parIsAngle |
( |
int | i | ) |
const |
|
virtual |
◆ parIsAngle() [2/3]
| bool MdcSegInfoCsmc::parIsAngle |
( |
int | i | ) |
const |
|
virtual |
◆ parIsAngle() [3/3]
| bool MdcSegInfoCsmc::parIsAngle |
( |
int | i | ) |
const |
|
virtual |
◆ phi0() [1/3]
| double MdcSegInfoCsmc::phi0 |
( |
| ) |
const |
|
inline |
◆ phi0() [2/3]
| double MdcSegInfoCsmc::phi0 |
( |
| ) |
const |
|
inline |
◆ phi0() [3/3]
| double MdcSegInfoCsmc::phi0 |
( |
| ) |
const |
|
inline |
◆ sigD0() [1/3]
| double MdcSegInfoCsmc::sigD0 |
( |
| ) |
const |
◆ sigD0() [2/3]
| double MdcSegInfoCsmc::sigD0 |
( |
| ) |
const |
◆ sigD0() [3/3]
| double MdcSegInfoCsmc::sigD0 |
( |
| ) |
const |
◆ sigPhi0() [1/3]
| double MdcSegInfoCsmc::sigPhi0 |
( |
| ) |
const |
◆ sigPhi0() [2/3]
| double MdcSegInfoCsmc::sigPhi0 |
( |
| ) |
const |
◆ sigPhi0() [3/3]
| double MdcSegInfoCsmc::sigPhi0 |
( |
| ) |
const |
The documentation for this class was generated from the following files: