BornAgain  1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
MinimizerResultUtils Namespace Reference

Functions

std::string reportToString (const RootMinimizerAdapter &minimizer)
 
std::string reportParameters (const Fit::Parameters &parameters)
 

Detailed Description

Utility functions to generate reports.

Function Documentation

◆ reportToString()

std::string MinimizerResultUtils::reportToString ( const RootMinimizerAdapter minimizer)

Reports results of minimization in the form of multi-line string.

Definition at line 42 of file MinimizerResultUtils.cpp.

43 {
44  std::ostringstream result;
45 
47  result << reportDescription(minimizer);
48  result << reportOption(minimizer);
49  result << reportStatus(minimizer);
50 
51  return result.str();
52 }
std::string sectionString(const std::string &sectionName="", size_t report_width=80)
Returns horizontal line of 80 characters length with section name in it.
std::string reportDescription(const RootMinimizerAdapter &minimizer)
std::string reportStatus(const RootMinimizerAdapter &minimizer)
std::string reportOption(const RootMinimizerAdapter &minimizer)

References anonymous_namespace{MinimizerResultUtils.cpp}::reportDescription(), anonymous_namespace{MinimizerResultUtils.cpp}::reportOption(), anonymous_namespace{MinimizerResultUtils.cpp}::reportStatus(), and MinimizerUtils::sectionString().

Referenced by RootMinimizerAdapter::minimize().

Here is the call graph for this function:

◆ reportParameters()

std::string MinimizerResultUtils::reportParameters ( const Fit::Parameters parameters)

Reports fit parameters settings and final results.

Definition at line 54 of file MinimizerResultUtils.cpp.

55 {
56  std::ostringstream result;
57 
58  result << MinimizerUtils::sectionString("FitParameters");
59 
60  result << "Name StartValue Limits FitValue"
61  << " Error" << std::endl;
62 
63  for (const auto& par : parameters) {
64  result << boost::format("%-26.26s %-8.3e %-28s %-8.3e %8.3e \n") % par.name()
65  % par.startValue() % par.limits().toString() % par.value() % par.error();
66  }
67 
68  Fit::Parameters::corr_matrix_t matrix = parameters.correlationMatrix();
69  if (!matrix.empty()) {
70  result << MinimizerUtils::sectionString("Correlations");
71  for (size_t i = 0; i < matrix.size(); ++i) {
72  result << boost::format("#%-2d ") % i;
73  for (size_t j = 0; j < matrix[i].size(); ++j)
74  result << boost::format("%_7.4f ") % matrix[i][j];
75  result << std::endl;
76  }
77  }
78 
79  return result.str();
80 }
std::vector< std::vector< double > > corr_matrix_t
Definition: Parameters.h:33

References Fit::Parameters::correlationMatrix(), and MinimizerUtils::sectionString().

Referenced by Fit::MinimizerResult::toString().

Here is the call graph for this function: