Logo ROOT  
Reference Guide
BasicMinimumError.cxx
Go to the documentation of this file.
1 // @(#)root/minuit2:$Id$
2 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005
3 
4 /**********************************************************************
5  * *
6  * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
7  * *
8  **********************************************************************/
9 
11 
12 #include "Minuit2/MnMatrix.h"
13 
14 #include "Minuit2/MnPrint.h"
15 
16 namespace ROOT {
17 
18 namespace Minuit2 {
19 
21 {
22  // calculate Heassian: inverse of error matrix
24  int ifail = Invert(tmp);
25  if (ifail != 0) {
26  MnPrint print("BasicMinimumError::Hessian");
27  print.Warn("Inversion fails; return diagonal matrix");
29  for (unsigned int i = 0; i < fMatrix.Nrow(); i++) {
30  tmp2(i, i) = 1. / fMatrix(i, i);
31  }
32  return tmp2;
33  }
34  return tmp;
35 }
36 
37 } // namespace Minuit2
38 
39 } // namespace ROOT
ROOT::Minuit2::Invert
int Invert(LASymMatrix &)
Definition: LaInverse.cxx:21
ROOT::Minuit2::LASymMatrix
Class describing a symmetric matrix of size n.
Definition: LASymMatrix.h:45
MnMatrix.h
ROOT::Minuit2::MnPrint::Warn
void Warn(const Ts &... args)
Definition: MnPrint.h:126
ROOT::Minuit2::BasicMinimumError::Hessian
MnAlgebraicSymMatrix Hessian() const
Definition: BasicMinimumError.cxx:20
BasicMinimumError.h
ROOT::Minuit2::LASymMatrix::Nrow
unsigned int Nrow() const
Definition: LASymMatrix.h:274
MnPrint.h
ROOT
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
Definition: EExecutionPolicy.hxx:4
ROOT::Minuit2::BasicMinimumError::fMatrix
MnAlgebraicSymMatrix fMatrix
Definition: BasicMinimumError.h:120
ROOT::Minuit2::MnPrint
Definition: MnPrint.h:73