![]() |
BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
Abstract base class, holds the infrastructure to run a simulation.
Base class of SpecularSimulation, ISimulation2D and DepthProbeSimulation.
Holds an instrument and sample model. Provides the common infrastructure to run a simulation: multithreading, batch processing, averaging over parameter distributions, etc.
Simulations are run, and results returned, by the function ISimulation::simulate().
Public Member Functions | |
| ISimulation (const ISimulation &)=delete | |
| ISimulation (const MultiLayer &sample) | |
| ISimulation (ISimulation &&)=default | |
| ~ISimulation () override | |
| void | addParameterDistribution (const ParameterDistribution &par_distr) |
| void | addParameterDistribution (ParameterDistribution::WhichParameter whichParameter, const IDistribution1D &distribution, size_t nbr_samples, double sigma_factor=0.0, const RealLimits &limits=RealLimits()) |
| virtual bool | force_polarized () const =0 |
| Force polarized computation even in absence of sample magnetization or external fields. More... | |
| SimulationOptions & | options () |
| const SimulationOptions & | options () const |
| void | setBackground (const IBackground &bg) |
| void | setTerminalProgressMonitor () |
| SimulationResult | simulate () |
| Run a simulation, and return the result. More... | |
| ISimulation::ISimulation | ( | const MultiLayer & | sample | ) |
|
override |
|
delete |
|
default |
| void ISimulation::addParameterDistribution | ( | const ParameterDistribution & | par_distr | ) |
| void ISimulation::addParameterDistribution | ( | ParameterDistribution::WhichParameter | whichParameter, |
| const IDistribution1D & | distribution, | ||
| size_t | nbr_samples, | ||
| double | sigma_factor = 0.0, |
||
| const RealLimits & | limits = RealLimits() |
||
| ) |
|
pure virtual |
Force polarized computation even in absence of sample magnetization or external fields.
Implemented in SpecularSimulation, ISimulation2D, and DepthProbeSimulation.
| SimulationOptions& ISimulation::options | ( | ) |
| const SimulationOptions& ISimulation::options | ( | ) | const |
| void ISimulation::setBackground | ( | const IBackground & | bg | ) |
| void ISimulation::setTerminalProgressMonitor | ( | ) |
| SimulationResult ISimulation::simulate | ( | ) |
Run a simulation, and return the result.