4 #include <JANA/JObject.h>
5 #include <JANA/JFactory.h>
8 #include <TMatrixFSym.h>
36 float const EErr()
const {
return sqrt(ExyztCovariance(0,0)); }
37 float const xErr()
const {
return sqrt(ExyztCovariance(1,1)); }
38 float const yErr()
const {
return sqrt(ExyztCovariance(2,2)); }
39 float const zErr()
const {
return sqrt(ExyztCovariance(3,3)); }
40 float const tErr()
const {
return sqrt(ExyztCovariance(4,4)); }
42 if (xErr()>0 && yErr()>0)
return ExyztCovariance(1,2)/xErr()/yErr();
46 if (xErr()>0 && zErr()>0)
return ExyztCovariance(1,3)/xErr()/zErr();
50 if (yErr()>0 && zErr()>0)
return ExyztCovariance(2,3)/yErr()/zErr();
54 if (EErr()>0 && xErr()>0)
return ExyztCovariance(0,1)/EErr()/xErr();
58 if (EErr()>0 && yErr()>0)
return ExyztCovariance(0,2)/EErr()/yErr();
62 if (EErr()>0 && zErr()>0)
return ExyztCovariance(0,3)/EErr()/zErr();
66 if (xErr()>0 && tErr()>0)
return ExyztCovariance(1,4)/xErr()/tErr();
70 if (yErr()>0 && tErr()>0)
return ExyztCovariance(2,4)/yErr()/tErr();
74 if (zErr()>0 && tErr()>0)
return ExyztCovariance(3,4)/zErr()/tErr();
78 if (EErr()>0 && tErr()>0)
return ExyztCovariance(0,4)/EErr()/tErr();
82 void toStrings(vector<pair<string,string> > &items)
const{
83 AddString(items,
"E",
"%5.3f", E);
84 AddString(items,
"x",
"%5.2f",
x);
85 AddString(items,
"y",
"%5.2f",
y);
86 AddString(items,
"z",
"%5.1f", z);
87 AddString(items,
"t",
"%5.1f", t);
88 AddString(items,
"r",
"%5.1f",
sqrt(
x*
x+
y*
y));
89 AddString(items,
"phi",
"%5.3f",atan2(y,
x));
90 AddString(items,
"E_preshower",
"%5.3f", E_preshower);
91 AddString(items,
"E_L2",
"%5.3f", E_L2);
92 AddString(items,
"E_L3",
"%5.3f", E_L3);
93 AddString(items,
"E_L4",
"%5.3f", E_L4);
94 AddString(items,
"N_cell",
"%d", N_cell);
95 AddString(items,
"Q",
"%d", Q);
96 AddString(items,
"dE",
"%5.3f", EErr());
97 AddString(items,
"dx",
"%5.3f", xErr());
98 AddString(items,
"dy",
"%5.3f", yErr());
99 AddString(items,
"dz",
"%5.2f", zErr());
100 AddString(items,
"dt",
"%5.3f", tErr());
101 AddString(items,
"EXcorr",
"%5.3f", EXcorr());
102 AddString(items,
"EYcorr",
"%5.3f", EYcorr());
103 AddString(items,
"EZcorr",
"%5.3f", EZcorr());
104 AddString(items,
"ETcorr",
"%5.3f", ETcorr());
105 AddString(items,
"XYcorr",
"%5.3f", XYcorr());
106 AddString(items,
"XZcorr",
"%5.3f", XZcorr());
107 AddString(items,
"XTcorr",
"%5.3f", XTcorr());
108 AddString(items,
"YZcorr",
"%5.3f", YZcorr());
109 AddString(items,
"YTcorr",
"%5.3f", YTcorr());
110 AddString(items,
"ZTcorr",
"%5.3f", ZTcorr());
111 AddString(items,
"sigLong",
"%5.3f", sigLong);
112 AddString(items,
"sigTrans",
"%5.3f", sigTrans);
113 AddString(items,
"sigTheta",
"%5.3f", sigTheta);
115 AddString(items,
"rmsTime",
"%5.3f", rmsTime);
119 #endif // _DBCALShower_
float const YTcorr() const
float const EXcorr() const
DBCALShower()
Constructor initializes matrix to 5x5.
TMatrixFSym ExyztCovariance
float const EZcorr() const
void toStrings(vector< pair< string, string > > &items) const
float const ETcorr() const
float const XZcorr() const
float const XTcorr() const
float const XYcorr() const
float const YZcorr() const
float const EYcorr() const
float const ZTcorr() const