#ifndef ROOT_TLinearMinimizer
#define ROOT_TLinearMinimizer
#ifndef ROOT_Math_Minimizer
#include "Math/Minimizer.h"
#endif
#ifndef ROOT_Rtypes
#include "Rtypes.h"
#endif
#include <vector>
class TLinearFitter;
class TLinearMinimizer : public ROOT::Math::Minimizer {
public:
TLinearMinimizer (int type = 0);
TLinearMinimizer ( const char * type );
virtual ~TLinearMinimizer ();
private:
TLinearMinimizer(const TLinearMinimizer &);
TLinearMinimizer & operator = (const TLinearMinimizer & rhs);
public:
virtual void SetFunction(const ROOT::Math::IMultiGenFunction & func);
virtual void SetFunction(const ROOT::Math::IMultiGradFunction & func);
virtual bool SetVariable(unsigned int , const std::string & , double , double ) { return false; }
virtual bool SetFixedVariable(unsigned int , const std::string & , double );
virtual bool Minimize();
virtual double MinValue() const { return fMinVal; }
virtual double Edm() const { return 0; }
virtual const double * X() const { return &fParams.front(); }
virtual const double * MinGradient() const { return 0; }
virtual unsigned int NCalls() const { return 0; }
virtual unsigned int NDim() const { return fDim; }
virtual unsigned int NFree() const { return fNFree; }
virtual bool ProvidesError() const { return true; }
virtual const double * Errors() const { return &fErrors.front(); }
virtual double CovMatrix(unsigned int i, unsigned int j) const {
return fCovar[i + fDim* j];
}
protected:
private:
bool fRobust;
unsigned int fDim;
unsigned int fNFree;
double fMinVal;
std::vector<double> fParams;
std::vector<double> fErrors;
std::vector<double> fCovar;
const ROOT::Math::IMultiGradFunction * fObjFunc;
TLinearFitter * fFitter;
ClassDef(TLinearMinimizer,1)
};
#endif /* ROOT_TLinearMinimizer */
Last change: Wed Dec 17 08:53:15 2008
Last generated: 2008-12-17 08:53
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.