24 assert(cov.
Nrow() > 0);
25 assert(
n < cov.
Nrow());
27 MnPrint print(
"MnCovarianceSqueeze");
30 for (
unsigned int i = 0; i < cov.
Nrow(); i++) {
31 for (
unsigned int j = i; j < cov.
Nrow(); j++) {
32 hess(i, j) = cov(i, j);
39 print.
Warn(
"inversion failed; return diagonal matrix;");
41 for (
unsigned int i = 0, j = 0; i < cov.
Nrow(); i++) {
54 print.
Warn(
"back-inversion failed; return diagonal matrix;");
56 for (
unsigned int i = 0; i < squeezed.
Nrow(); i++) {
57 result(i, i) = 1. / squeezed(i, i);
68 MnPrint print(
"MnCovarianceSqueeze");
76 int ifail2 =
Invert(squeezed);
77 if (ifail1 != 0 && ifail2 == 0){
78 print.
Warn(
"MinimumError inversion fails; return diagonal matrix.");
82 print.
Warn(
"MinimumError back-inversion fails; return diagonal matrix.");
84 for (
unsigned int i = 0; i < squeezed.
Nrow(); i++) {
85 tmp(i, i) = 1. / squeezed(i, i);
96 assert(hess.
Nrow() > 0);
97 assert(
n < hess.
Nrow());
100 for (
unsigned int i = 0, j = 0; i < hess.
Nrow(); i++) {
103 for (
unsigned int k = i,
l = j; k < hess.
Nrow(); k++) {
106 hs(j,
l) = hess(i, k);
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t result
Class describing a symmetric matrix of size n.
const double * Data() const
unsigned int Nrow() const
unsigned int size() const
MinimumError keeps the inv.
static MnAlgebraicSymMatrix InvertMatrix(const MnAlgebraicSymMatrix &matrix, int &ifail)
const MnAlgebraicSymMatrix & InvHessian() const
MnUserCovariance operator()(const MnUserCovariance &, unsigned int) const
void Warn(const Ts &... args)
Class containing the covariance matrix data represented as a vector of size n*(n+1)/2 Used to hide in...
unsigned int Nrow() const
int Invert(LASymMatrix &)
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...