83 cout <<
"Perform the fit y = c0 + c1 * x in four different ways" << endl;
103 cout <<
" - 1. solve through Normal Equations" << endl;
107 cout <<
" - 2. solve through SVD" << endl;
122 cout <<
" - 3. solve with pseudo inverse" << endl;
128 cout <<
" - 4. solve with pseudo inverse, calculated brute force" << endl;
135 cout <<
" - 5. Minuit through TGraph" << endl;
154 cout <<
" All solutions are the same within tolerance of " << eps << endl;
156 cout <<
" Some solutions differ more than the allowed tolerance of " << eps << endl;
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
TVectorD NormalEqn(const TMatrixD &A, const TVectorD &b)
Solve min {(A .
TMatrixTRow< Double_t > TMatrixDRow
TMatrixTColumn< Double_t > TMatrixDColumn
Single Value Decomposition class.
virtual Double_t GetParameter(Int_t ipar) const
A TGraphErrors is a TGraph with error bars.
virtual TFitResultPtr Fit(const char *formula, Option_t *option="", Option_t *goption="", Axis_t xmin=0, Axis_t xmax=0)
Fit this graph with function with name fname.
TVectorT< Element > & Use(Int_t lwb, Int_t upb, Element *data)
Use the array data to fill the vector lwb..upb].
Bool_t VerifyVectorIdentity(const TVectorT< Element > &m1, const TVectorT< Element > &m2, Int_t verbose, Element maxDevAllow)
Verify that elements of the two vectors are equal within maxDevAllow .