Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
MnCovarianceSqueeze.h
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 
10 #ifndef ROOT_Minuit2_MnCovarianceSqueeze
11 #define ROOT_Minuit2_MnCovarianceSqueeze
12 
13 #include "Minuit2/MnMatrix.h"
14 
15 namespace ROOT {
16 
17  namespace Minuit2 {
18 
19 
20 class MnUserCovariance;
21 class MinimumError;
22 
23 /**
24  class to reduce the covariance matrix when a parameter is fixed by
25  removing the corresponding row and index
26  */
27 class MnCovarianceSqueeze {
28 
29 public:
30 
31  MnCovarianceSqueeze() {}
32 
33  ~MnCovarianceSqueeze() {}
34 
35  MnUserCovariance operator()(const MnUserCovariance&, unsigned int) const;
36 
37  MinimumError operator()(const MinimumError&, unsigned int) const;
38 
39  MnAlgebraicSymMatrix operator()(const MnAlgebraicSymMatrix&, unsigned int) const;
40 
41 private:
42 
43 };
44 
45  } // namespace Minuit2
46 
47 } // namespace ROOT
48 
49 #endif // ROOT_Minuit2_MnCovarianceSqueeze