BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
Holds pair of simulation/experimental data to fit.
Definition at line 30 of file SimDataPair.h.
Public Member Functions | |
SimDataPair (SimDataPair &&other) | |
SimDataPair (simulation_builder_t builder, const Datafield &raw_data, std::unique_ptr< Datafield > &&raw_stdv, double user_weight=1.0) | |
SimDataPair (simulation_builder_t builder, const Datafield &raw_data, std::unique_ptr< Datafield > &&raw_stdv, std::unique_ptr< Datafield > &&user_weights) | |
~SimDataPair () | |
SimulationResult | absoluteDifference () const |
Returns the absolute difference between simulated and experimental data cut to the ROI area. More... | |
bool | containsUncertainties () const |
void | execSimulation (const mumufit::Parameters ¶ms) |
std::vector< double > | experimental_array () const |
Returns the flattened experimental data cut to the ROI area. More... | |
SimulationResult | experimentalData () const |
Returns the experimental data cut to the ROI area. More... | |
SimulationResult | relativeDifference () const |
Returns the relative difference between simulated and experimental data cut to the ROI area. More... | |
std::vector< double > | simulation_array () const |
Returns the flattened simulated intensities cut to the ROI area. More... | |
SimulationResult | simulationResult () const |
Returns the result of last computed simulation. More... | |
SimulationResult | uncertainties () const |
Returns the data uncertainties cut to the ROI area If no uncertainties present, returns zero-filled SimulationResult. More... | |
std::vector< double > | uncertainties_array () const |
Returns the flattened experimental uncertainties cut to the ROI area. If no uncertainties are available, Returns a zero-filled array sized to the ROI area. More... | |
std::vector< double > | user_weights_array () const |
Returns a flat array of user weights cut to the ROI area. More... | |
SimulationResult | userWeights () const |
Returns the user uncertainties cut to the ROI area. More... | |
Private Member Functions | |
void | validate () const |
Private Attributes | |
SimulationResult | m_exp_data |
Experimental data cut to the ROI. Masked areas are nullified. More... | |
std::unique_ptr< Datafield > | m_raw_data |
Raw experimental data as obtained from the user. More... | |
std::unique_ptr< Datafield > | m_raw_uncertainties |
Data uncertainties as provided by the user. More... | |
std::unique_ptr< Datafield > | m_raw_user_weights |
User-defined weights. More... | |
SimulationResult | m_sim_data |
Current simulation results. Masked areas are nullified. More... | |
simulation_builder_t | m_simulation_builder |
ISimulation builder from the user to construct simulation for given set of parameters. More... | |
SimulationResult | m_uncertainties |
Weights from experimental data uncertainties. Masked areas are nullified. More... | |
SimulationResult | m_user_weights |
Manually defined (user) weights. Masked areas are nullified. More... | |
SimDataPair::SimDataPair | ( | simulation_builder_t | builder, |
const Datafield & | raw_data, | ||
std::unique_ptr< Datafield > && | raw_stdv, | ||
double | user_weight = 1.0 |
||
) |
Definition at line 90 of file SimDataPair.cpp.
References m_raw_data, m_raw_user_weights, and validate().
SimDataPair::SimDataPair | ( | simulation_builder_t | builder, |
const Datafield & | raw_data, | ||
std::unique_ptr< Datafield > && | raw_stdv, | ||
std::unique_ptr< Datafield > && | user_weights | ||
) |
Definition at line 100 of file SimDataPair.cpp.
References m_raw_data, m_raw_user_weights, and validate().
SimDataPair::SimDataPair | ( | SimDataPair && | other | ) |
Definition at line 113 of file SimDataPair.cpp.
References validate().
|
default |
SimulationResult SimDataPair::absoluteDifference | ( | ) | const |
Returns the absolute difference between simulated and experimental data cut to the ROI area.
Definition at line 207 of file SimDataPair.cpp.
References SimulationResult::empty(), Numeric::GetAbsoluteDifference(), m_exp_data, m_sim_data, and SimulationResult::size().
Referenced by FitObjective::absoluteDifference().
bool SimDataPair::containsUncertainties | ( | ) | const |
Definition at line 159 of file SimDataPair.cpp.
References m_raw_uncertainties.
Referenced by FitObjective::allPairsHaveUncertainties(), ObjectiveMetric::compute(), FitObjective::containsUncertainties(), and execSimulation().
void SimDataPair::execSimulation | ( | const mumufit::Parameters & | params | ) |
Definition at line 128 of file SimDataPair.cpp.
References ASSERT, containsUncertainties(), SimulationResult::converter(), ICoordSystem::defaultAxes(), SimulationResult::empty(), m_exp_data, m_raw_data, m_raw_uncertainties, m_raw_user_weights, m_sim_data, m_simulation_builder, m_uncertainties, and m_user_weights.
std::vector< double > SimDataPair::experimental_array | ( | ) | const |
Returns the flattened experimental data cut to the ROI area.
Definition at line 219 of file SimDataPair.cpp.
References SimulationResult::datafield(), SimulationResult::empty(), Datafield::flatVector(), and m_exp_data.
Referenced by ObjectiveMetric::compute(), and FitObjective::experimental_array().
SimulationResult SimDataPair::experimentalData | ( | ) | const |
Returns the experimental data cut to the ROI area.
Definition at line 171 of file SimDataPair.cpp.
References SimulationResult::empty(), and m_exp_data.
Referenced by RQ4Metric::compute(), and FitObjective::experimentalData().
SimulationResult SimDataPair::relativeDifference | ( | ) | const |
Returns the relative difference between simulated and experimental data cut to the ROI area.
Returns relative difference between simulation and experimental data.
Definition at line 195 of file SimDataPair.cpp.
References SimulationResult::empty(), m_exp_data, m_sim_data, Numeric::relativeDifference(), and SimulationResult::size().
Referenced by FitObjective::relativeDifference().
std::vector< double > SimDataPair::simulation_array | ( | ) | const |
Returns the flattened simulated intensities cut to the ROI area.
Definition at line 226 of file SimDataPair.cpp.
References SimulationResult::datafield(), SimulationResult::empty(), Datafield::flatVector(), and m_sim_data.
Referenced by ObjectiveMetric::compute(), and FitObjective::simulation_array().
SimulationResult SimDataPair::simulationResult | ( | ) | const |
Returns the result of last computed simulation.
Definition at line 164 of file SimDataPair.cpp.
References SimulationResult::empty(), and m_sim_data.
Referenced by RQ4Metric::compute(), and FitObjective::simulationResult().
SimulationResult SimDataPair::uncertainties | ( | ) | const |
Returns the data uncertainties cut to the ROI area If no uncertainties present, returns zero-filled SimulationResult.
Definition at line 178 of file SimDataPair.cpp.
References SimulationResult::empty(), and m_uncertainties.
Referenced by FitObjective::uncertaintyData().
std::vector< double > SimDataPair::uncertainties_array | ( | ) | const |
Returns the flattened experimental uncertainties cut to the ROI area. If no uncertainties are available, Returns a zero-filled array sized to the ROI area.
Definition at line 233 of file SimDataPair.cpp.
References SimulationResult::datafield(), SimulationResult::empty(), Datafield::flatVector(), and m_uncertainties.
Referenced by ObjectiveMetric::compute(), and FitObjective::uncertainties().
std::vector< double > SimDataPair::user_weights_array | ( | ) | const |
Returns a flat array of user weights cut to the ROI area.
Definition at line 240 of file SimDataPair.cpp.
References SimulationResult::datafield(), SimulationResult::empty(), Datafield::flatVector(), and m_user_weights.
Referenced by ObjectiveMetric::compute(), RQ4Metric::compute(), and FitObjective::weights_array().
SimulationResult SimDataPair::userWeights | ( | ) | const |
Returns the user uncertainties cut to the ROI area.
Definition at line 186 of file SimDataPair.cpp.
References SimulationResult::empty(), and m_user_weights.
|
private |
Definition at line 247 of file SimDataPair.cpp.
References m_raw_data, m_raw_uncertainties, m_raw_user_weights, and m_simulation_builder.
Referenced by SimDataPair().
|
private |
Experimental data cut to the ROI. Masked areas are nullified.
Definition at line 90 of file SimDataPair.h.
Referenced by absoluteDifference(), execSimulation(), experimental_array(), experimentalData(), and relativeDifference().
|
private |
Raw experimental data as obtained from the user.
Definition at line 97 of file SimDataPair.h.
Referenced by SimDataPair(), execSimulation(), and validate().
|
private |
Data uncertainties as provided by the user.
Definition at line 99 of file SimDataPair.h.
Referenced by containsUncertainties(), execSimulation(), and validate().
|
private |
User-defined weights.
Definition at line 101 of file SimDataPair.h.
Referenced by SimDataPair(), execSimulation(), and validate().
|
private |
Current simulation results. Masked areas are nullified.
Definition at line 88 of file SimDataPair.h.
Referenced by absoluteDifference(), execSimulation(), relativeDifference(), simulation_array(), and simulationResult().
|
private |
ISimulation builder from the user to construct simulation for given set of parameters.
Definition at line 85 of file SimDataPair.h.
Referenced by execSimulation(), and validate().
|
private |
Weights from experimental data uncertainties. Masked areas are nullified.
Definition at line 92 of file SimDataPair.h.
Referenced by execSimulation(), uncertainties(), and uncertainties_array().
|
private |
Manually defined (user) weights. Masked areas are nullified.
Definition at line 94 of file SimDataPair.h.
Referenced by execSimulation(), user_weights_array(), and userWeights().