21 Minimizer::Minimizer() : m_kernel(new
Kernel) {}
23 void Minimizer::setMinimizer(
const std::string& minimizerName,
const std::string& algorithmName,
24 const std::string& options)
26 m_kernel->setMinimizer(minimizerName, algorithmName, options);
29 void Minimizer::setMinimizer(
IMinimizer* minimizer)
31 m_kernel->setMinimizer(minimizer);
34 Minimizer::~Minimizer() =
default;
38 return m_kernel->minimize(fcn, parameters);
43 return m_kernel->minimize(fcn, parameters);
48 if (callback.callback_type() == PyCallback::SCALAR) {
50 return minimize(fcn, parameters);
52 }
else if (callback.callback_type() == PyCallback::RESIDUAL) {
57 throw std::runtime_error(
"Minimizer::minimize() -> Error. Unexpected user function");
Defines class PyCallback.
A main class to run fitting.
Result of minimization round.
MinimizerResult minimize(PyCallback &callback, const Parameters ¶meters)
Finds minimum of user objective function (to be called from Python).
A collection of fit parameters.
Pure virtual interface for all kind minimizers.
Base class to wrap Python callable and pass it to C++.
virtual std::vector< double > call_residuals(Fit::Parameters pars)
Call Python callable and returns its result.
virtual double call_scalar(Fit::Parameters pars)
Call Python callable and returns its result.
Objective function types.