Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 10:22:12

0001 // @(#)root/minuit2:$Id$
0002 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei   2003-2005
0003 
0004 /**********************************************************************
0005  *                                                                    *
0006  * Copyright (c) 2005 LCG ROOT Math team,  CERN/PH-SFT                *
0007  *                                                                    *
0008  **********************************************************************/
0009 
0010 #ifndef ROOT_Minuit2_MnCovarianceSqueeze
0011 #define ROOT_Minuit2_MnCovarianceSqueeze
0012 
0013 #include "Minuit2/MnMatrix.h"
0014 
0015 namespace ROOT {
0016 
0017 namespace Minuit2 {
0018 
0019 class MnUserCovariance;
0020 class MinimumError;
0021 
0022 /**
0023    class to reduce the covariance matrix when a parameter is fixed by
0024    removing the corresponding row and index
0025  */
0026 class MnCovarianceSqueeze {
0027 
0028 public:
0029    MnCovarianceSqueeze() {}
0030 
0031    ~MnCovarianceSqueeze() {}
0032 
0033    MnUserCovariance operator()(const MnUserCovariance &, unsigned int) const;
0034 
0035    MinimumError operator()(const MinimumError &, unsigned int) const;
0036 
0037    MnAlgebraicSymMatrix operator()(const MnAlgebraicSymMatrix &, unsigned int) const;
0038 
0039 private:
0040 };
0041 
0042 } // namespace Minuit2
0043 
0044 } // namespace ROOT
0045 
0046 #endif // ROOT_Minuit2_MnCovarianceSqueeze