1 #include <utl/CorrelationMatrix.h>
2 #include <utl/AugerException.h>
3 #include <utl/ErrorLogger.h>
10 int CorrelationMatrix::Index(
const int iPar,
const int jPar)
const
13 if (iPar >= fNParameter || jPar >= fNParameter)
17 return ( (fNParameter-1)*(fNParameter-2) -
18 (fNParameter-1-iPar)*(fNParameter-2-iPar) )/2 +
21 return ( (fNParameter-1)*(fNParameter-2) -
22 (fNParameter-1-jPar)*(fNParameter-2-jPar) )/2 +
26 CorrelationMatrix::CorrelationMatrix(
const int nPar)
27 : fNParameter(nPar), fElements(nPar*(nPar-1)/2)
29 for (Elements::iterator it=
fElements.begin();
40 if (corr < -1 || corr > 1)
43 msg <<
"Value " << corr <<
" is invalid (-1 <= correlation <= 1), convert to 0 (!)";
double operator()(const int iPar, const int jPar) const
Exception for reporting variable out of valid range.
void Set(const int iPar, const int jPar, const double corr)
int Index(const int iPar, const int jPar) const
Base class for inconsistency/illogicality exceptions.
#define ERROR(message)
Macro for logging error messages.