|
ATLAS Offline Software
|
Go to the documentation of this file.
22 if (values1.GetLwb() != invCovMat.GetRowLwb() || values1.GetUpb() != invCovMat.GetRowUpb())
return -1;
23 if (values2.GetLwb() != invCovMat.GetColLwb() || values2.GetUpb() != invCovMat.GetColUpb())
return -1;
27 for (
int i = values1.GetLwb();
i <= values1.GetUpb();
i++) {
28 for (
int j = values2.GetLwb(); j <= values2.GetUpb(); j++) {
29 chi2Val += invCovMat(
i, j)*values1(
i)*values2(j);
41 cout <<
"Chi2Calc::deltas : Could not find overlap region between data and reference in [" <<
lw <<
", " <<
up <<
"]." << endl;
44 m_lwb = refVals.GetLwb();
45 m_upb = refVals.GetUpb();
66 if (
dv.GetNrows() == 0)
return -1;
108 TVectorD
v =
data.values(
r.GetLwb(),
r.GetUpb());
114 chi2 = sumV2 - 2*
k*sumRV +
k*
k*sumR2;
char data[hepevt_bytes_allocation_ATLAS]
TVectorD deltas(const AbsShape &data, const AbsShape &reference, CovMatrix &errors, const ScaledErrorData *shapeError=0, int lwb=-1, int upb=-1, bool noDataError=false)
TMatrixTSym< double > CovMatrix
double scalarProduct(const TVectorD &values1, const TVectorD &values2, const CovMatrix &invCovMat) const
bool bestRescale(const AbsShape &data, const AbsShape &reference, double &k, double &chi2, double deltaT=0, const ScaledErrorData *sed=0, unsigned int minNDof=0) const
double chi2(TH1 *h0, TH1 *h1)
bool providesRange(int lw, int up) const
const ScaledErrorData * sed
const CovMatrix errors(int first=-1, int last=-1) const
const TVectorD offsets(int first=-1, int last=-1) const
double chi2(const AbsShape &data, const AbsShape &reference, const ScaledErrorData *shapeError=0, int lwb=-1, int upb=-1)