BornAgain  1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
mumufit::MinimizerResult Class Reference

Result of minimization round. More...

Collaboration diagram for mumufit::MinimizerResult:
[legend]

Public Member Functions

 MinimizerResult ()
 
double minValue () const
 Minimum value of objective function found by minimizer. More...
 
Parameters parameters () const
 
void setDuration (double value)
 
void setMinValue (double value)
 
void setNumberOfCalls (int value)
 
void setNumberOfGradientCalls (int value)
 
void setParameters (const Parameters &parameters)
 
void setReport (const std::string &value)
 
std::string toString () const
 Returns multi-line string representing minimization results. More...
 

Private Attributes

double m_duration
 Duration of minimization in sec.msec. More...
 
double m_min_value
 Found minimum of objective function. More...
 
std::string m_minimizer_report
 
int m_number_of_calls
 Number of objective function calls. More...
 
int m_number_of_gradient_calls
 Number of calls to calculate gradients. More...
 
Parameters m_parameters
 

Detailed Description

Result of minimization round.

Definition at line 25 of file MinimizerResult.h.

Constructor & Destructor Documentation

◆ MinimizerResult()

MinimizerResult::MinimizerResult ( )

Definition at line 58 of file MinimizerResult.cpp.

60 {
61 }
double m_duration
Duration of minimization in sec.msec.
int m_number_of_gradient_calls
Number of calls to calculate gradients.
int m_number_of_calls
Number of objective function calls.
double m_min_value
Found minimum of objective function.

Member Function Documentation

◆ minValue()

double MinimizerResult::minValue ( ) const

Minimum value of objective function found by minimizer.

Definition at line 80 of file MinimizerResult.cpp.

81 {
82  return m_min_value;
83 }

References m_min_value.

◆ parameters()

Parameters MinimizerResult::parameters ( ) const

Definition at line 68 of file MinimizerResult.cpp.

69 {
70  return m_parameters;
71 }

References m_parameters.

Referenced by setParameters().

◆ setDuration()

void MinimizerResult::setDuration ( double  value)

Definition at line 111 of file MinimizerResult.cpp.

112 {
113  m_duration = value;
114 }

References m_duration.

◆ setMinValue()

void MinimizerResult::setMinValue ( double  value)

Definition at line 73 of file MinimizerResult.cpp.

74 {
75  m_min_value = value;
76 }

References m_min_value.

Referenced by MinimizerAdapter::minimize(), and TestMinimizer::minimize_scalar().

◆ setNumberOfCalls()

void MinimizerResult::setNumberOfCalls ( int  value)

Definition at line 116 of file MinimizerResult.cpp.

117 {
118  m_number_of_calls = value;
119 }

References m_number_of_calls.

Referenced by MinimizerAdapter::minimize(), and TestMinimizer::minimize_scalar().

◆ setNumberOfGradientCalls()

void MinimizerResult::setNumberOfGradientCalls ( int  value)

Definition at line 121 of file MinimizerResult.cpp.

122 {
124 }

References m_number_of_gradient_calls.

Referenced by MinimizerAdapter::minimize().

◆ setParameters()

void MinimizerResult::setParameters ( const Parameters parameters)

Definition at line 63 of file MinimizerResult.cpp.

64 {
66 }
Parameters parameters() const

References m_parameters, and parameters().

Referenced by MinimizerAdapter::minimize(), and TestMinimizer::minimize_scalar().

Here is the call graph for this function:

◆ setReport()

void MinimizerResult::setReport ( const std::string &  value)

Definition at line 106 of file MinimizerResult.cpp.

107 {
108  m_minimizer_report = value;
109 }

References m_minimizer_report.

Referenced by MinimizerAdapter::minimize(), and TestMinimizer::minimize_scalar().

◆ toString()

std::string MinimizerResult::toString ( ) const

Returns multi-line string representing minimization results.

Definition at line 87 of file MinimizerResult.cpp.

88 {
89  std::ostringstream result;
90  if (m_minimizer_report.empty()) {
91  result << "Don't know anything about external minimizer. "
92  << "Use minimizer API to get result of minimization.\n";
93 
94  } else {
96  result << "Run time (sec) : " << m_duration << "\n";
97  result << "Objective function calls : " << m_number_of_calls << "\n";
98  result << "Gradient calls : " << m_number_of_gradient_calls << "\n";
99  result << m_minimizer_report;
100  result << reportParameters(m_parameters);
101  }
102 
103  return result.str();
104 }
std::string sectionString(const std::string &sectionName="", size_t report_width=80)
Returns horizontal line of 80 characters length with section name in it.

References m_duration, m_minimizer_report, m_number_of_calls, m_number_of_gradient_calls, m_parameters, and mumufit::utils::sectionString().

Referenced by FitPrintService::fitResultString(), and GUIFitObserver::update().

Here is the call graph for this function:

Member Data Documentation

◆ m_duration

double mumufit::MinimizerResult::m_duration
private

Duration of minimization in sec.msec.

Definition at line 49 of file MinimizerResult.h.

Referenced by setDuration(), and toString().

◆ m_min_value

double mumufit::MinimizerResult::m_min_value
private

Found minimum of objective function.

Definition at line 46 of file MinimizerResult.h.

Referenced by minValue(), and setMinValue().

◆ m_minimizer_report

std::string mumufit::MinimizerResult::m_minimizer_report
private

Definition at line 50 of file MinimizerResult.h.

Referenced by setReport(), and toString().

◆ m_number_of_calls

int mumufit::MinimizerResult::m_number_of_calls
private

Number of objective function calls.

Definition at line 47 of file MinimizerResult.h.

Referenced by setNumberOfCalls(), and toString().

◆ m_number_of_gradient_calls

int mumufit::MinimizerResult::m_number_of_gradient_calls
private

Number of calls to calculate gradients.

Definition at line 48 of file MinimizerResult.h.

Referenced by setNumberOfGradientCalls(), and toString().

◆ m_parameters

Parameters mumufit::MinimizerResult::m_parameters
private

Definition at line 51 of file MinimizerResult.h.

Referenced by parameters(), setParameters(), and toString().


The documentation for this class was generated from the following files: