23 , m_fit_objective(fit_objective)
78 throw std::runtime_error(
"FitStatus::minimizerResult() -> Minimizer result wasn't set. "
79 "Make sure that FitObjective::finalize() was called.");
Defines class FitPrintService.
std::function< void(const FitObjective &)> fit_observer_t
Defines class MinimizerResult.
Holds vector of SimDataPairs (experimental data and simulation results) for use in fitting....
Contains collection of observers and call them at specified intervals. Each observer will be called a...
void notify(const T &data)
Notifies all observers at their personally specified intervals.
void addObserver(int every_nth, observer_t &&observer)
Adds observer to the list.
void notify_all(const T &data)
void update(const mumufit::Parameters ¶ms, double chi2)
IterationInfo iterationInfo() const
void initPrint(int every_nth)
FitStatus(const FitObjective *fit_objective)
std::unique_ptr< mumufit::MinimizerResult > m_minimizer_result
const FitObjective * m_fit_objective
mumufit::MinimizerResult minimizerResult() const
void finalize(const mumufit::MinimizerResult &result)
Should be explicitly called on last iteration to notify all observers.
IterationInfo m_iterationInfo
FitObserver< FitObjective > m_observers
std::unique_ptr< FitPrintService > m_print_service
bool isInterrupted() const
void addObserver(int every_nth, fit_observer_t &&)
Stores fit iteration info to track fit flow from various observers. Used in context of FitObjective.
void update(const mumufit::Parameters ¶ms, double chi2)
Result of minimization round.
A collection of fit parameters.