10 #ifndef ROOT_Minuit2_MnSimplex
11 #define ROOT_Minuit2_MnSimplex
34 class MnSimplex :
public MnApplication {
39 MnSimplex(
const FCNBase& fcn,
const std::vector<double>& par,
const std::vector<double>& err,
unsigned int stra = 1) : MnApplication(fcn, MnUserParameterState(par,err), MnStrategy(stra)), fMinimizer(SimplexMinimizer()) {}
42 MnSimplex(
const FCNBase& fcn,
const std::vector<double>& par,
unsigned int nrow,
const std::vector<double>& cov,
unsigned int stra = 1) : MnApplication(fcn, MnUserParameterState(par, cov, nrow), MnStrategy(stra)), fMinimizer(SimplexMinimizer()) {}
45 MnSimplex(
const FCNBase& fcn,
const std::vector<double>& par,
const MnUserCovariance& cov,
unsigned int stra = 1) : MnApplication(fcn, MnUserParameterState(par, cov), MnStrategy(stra)), fMinimizer(SimplexMinimizer()) {}
48 MnSimplex(
const FCNBase& fcn,
const MnUserParameters& par,
unsigned int stra = 1) : MnApplication(fcn, MnUserParameterState(par), MnStrategy(stra)), fMinimizer(SimplexMinimizer()) {}
51 MnSimplex(
const FCNBase& fcn,
const MnUserParameters& par,
const MnUserCovariance& cov,
unsigned int stra = 1) : MnApplication(fcn, MnUserParameterState(par, cov), MnStrategy(stra)), fMinimizer(SimplexMinimizer()) {}
54 MnSimplex(
const FCNBase& fcn,
const MnUserParameterState& par,
const MnStrategy& str) : MnApplication(fcn, MnUserParameterState(par), str), fMinimizer(SimplexMinimizer()) {}
56 MnSimplex(
const MnSimplex& migr) : MnApplication(migr.Fcnbase(), migr.State(), migr.Strategy(), migr.NumOfCalls()), fMinimizer(migr.fMinimizer) {}
60 ModularFunctionMinimizer& Minimizer() {
return fMinimizer;}
61 const ModularFunctionMinimizer& Minimizer()
const {
return fMinimizer;}
65 SimplexMinimizer fMinimizer;
70 MnSimplex& operator=(
const MnSimplex&) {
return *
this;}
77 #endif // ROOT_Minuit2_MnSimplex