#ifndef ROOT_Fit_FitConfig
#define ROOT_Fit_FitConfig
#ifndef ROOT_Fit_ParameterSettings
#include "Fit/ParameterSettings.h"
#endif
#ifndef ROOT_Fit_MinimizerControlParams
#include "Fit/MinimizerControlParams.h"
#endif
#ifndef ROOT_Math_IParamFunctionfwd
#include "Math/IParamFunctionfwd.h"
#endif
#include <vector>
namespace ROOT {
namespace Math {
class Minimizer;
class MinimizerOptions;
}
namespace Fit {
class FitConfig {
public:
FitConfig (unsigned int npar = 0);
~FitConfig ();
const ParameterSettings & ParSettings(unsigned int i) const { return fSettings.at(i); }
ParameterSettings & ParSettings(unsigned int i) { return fSettings.at(i); }
const std::vector<ROOT::Fit::ParameterSettings> & ParamsSettings() const { return fSettings; }
std::vector<ROOT::Fit::ParameterSettings> & ParamsSettings() { return fSettings; }
void CreateParamsSettings(const ROOT::Math::IParamMultiFunction & func);
void SetParamsSettings(unsigned int npar, const double * params, const double * vstep = 0);
ROOT::Math::Minimizer * CreateMinimizer();
const MinimizerControlParams & MinimizerOptions() const { return fMinimizerOpts; }
MinimizerControlParams & MinimizerOptions() { return fMinimizerOpts; }
#ifndef __CINT__ // this method fails on Windows
void SetMinimizerOptions(const ROOT::Math::MinimizerOptions & minopt);
#endif
void SetMinimizer(const char * type, const char * algo = 0) {
if (type) fMinimizerType = type;
if (algo) fMinimAlgoType = algo;
}
const std::string & MinimizerType() const { return fMinimizerType; }
const std::string & MinimizerAlgoType() const { return fMinimAlgoType; }
bool NormalizeErrors() const { return fNormErrors; }
bool ParabErrors() const { return fParabErrors; }
bool MinosErrors() const { return fMinosErrors; }
void SetNormErrors(bool on) { fNormErrors= on; }
void SetParabErrors(bool on) { fParabErrors = on; }
void SetMinosErrors(bool on) { fMinosErrors = on; }
static void SetDefaultMinimizer(const char * type, const char * algo = 0);
protected:
private:
bool fNormErrors;
bool fParabErrors;
bool fMinosErrors;
std::vector<ROOT::Fit::ParameterSettings> fSettings;
std::string fMinimizerType;
std::string fMinimAlgoType;
MinimizerControlParams fMinimizerOpts;
};
}
}
#endif /* ROOT_Fit_FitConfig */
Last change: Fri Nov 28 16:56:02 2008
Last generated: 2008-11-28 16:56
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.