10 #ifndef ROOT_Minuit2_MnUserCovariance 11 #define ROOT_Minuit2_MnUserCovariance 36 assert(data.size() == nrow*(nrow+1)/2);
41 fData(
std::vector<double>(data,data+nrow*(nrow+1)/2)),
60 double operator()(
unsigned int row,
unsigned int col)
const {
63 return fData[col+row*(row+1)/2];
65 return fData[row+col*(col+1)/2];
71 return fData[col+row*(row+1)/2];
73 return fData[row+col*(col+1)/2];
77 for(
unsigned int i = 0; i <
fData.size(); i++)
fData[i] *= f;
80 const std::vector<double>&
Data()
const {
return fData;}
86 {
return static_cast <
unsigned int > (
fData.size() );
99 #endif // ROOT_Minuit2_MnUserCovariance std::vector< double > fData
Namespace for new ROOT classes and functions.
const std::vector< double > & Data() const
unsigned int Nrow() const
MnUserCovariance(const MnUserCovariance &cov)
MnUserCovariance(const std::vector< double > &data, unsigned int nrow)
double operator()(unsigned int row, unsigned int col) const
MnUserCovariance & operator=(const MnUserCovariance &cov)
MnUserCovariance(const double *data, unsigned int nrow)
MnUserCovariance(unsigned int n)
unsigned int size() const
double & operator()(unsigned int row, unsigned int col)
Class containing the covariance matrix data represented as a vector of size n*(n+1)/2 Used to hide in...