BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Main class to run a specular simulation. More...
Public Member Functions | |
SpecularSimulation * | clone () const override |
void | prepareSimulation () override |
Put into a clean state for running a simulation. | |
void | accept (INodeVisitor *visitor) const override final |
Calls the INodeVisitor's visit method. | |
SimulationResult | result () const override |
Returns the results of the simulation in a format that supports unit conversion and export to numpy arrays. More... | |
void | setScan (const ISpecularScan &scan) |
Sets chosen specular scan to the simulation. | |
const IAxis * | coordinateAxis () const |
Returns a pointer to coordinate axis. | |
const IFootprintFactor * | footprintFactor () const |
Returns a pointer to footprint factor holder. | |
size_t | intensityMapSize () const override |
Returns the total number of the intensity values in the simulation result. | |
const ISpecularScan * | dataHandler () const |
Returns internal data handler. | |
Public Member Functions inherited from Simulation | |
void | runSimulation () |
Run a simulation, possibly averaged over parameter distributions. More... | |
void | runMPISimulation () |
Run a simulation in a MPI environment. | |
void | setInstrument (const Instrument &instrument_) |
const Instrument & | instrument () const |
Instrument & | instrument () |
void | setBeamIntensity (double intensity) |
double | getBeamIntensity () const |
void | setBeamPolarization (const kvector_t bloch_vector) |
Sets the beam polarization according to the given Bloch vector. | |
void | setDetectorResolutionFunction (const IResolutionFunction2D &resolution_function) |
void | removeDetectorResolutionFunction () |
void | setAnalyzerProperties (const kvector_t direction, double efficiency, double total_transmission) |
Sets the polarization analyzer characteristics of the detector. | |
void | setSample (const MultiLayer &sample) |
The MultiLayer object will not be owned by the Simulation object. | |
const MultiLayer * | sample () const |
void | setSampleBuilder (const std::shared_ptr< ISampleBuilder > &sample_builder) |
void | setBackground (const IBackground &bg) |
const IBackground * | background () const |
void | addParameterDistribution (const std::string ¶m_name, const IDistribution1D &distribution, size_t nbr_samples, double sigma_factor=0.0, const RealLimits &limits=RealLimits()) |
void | addParameterDistribution (const ParameterDistribution &par_distr) |
const DistributionHandler & | getDistributionHandler () const |
void | setOptions (const SimulationOptions &options) |
const SimulationOptions & | getOptions () const |
SimulationOptions & | getOptions () |
void | subscribe (ProgressHandler::Callback_t inform) |
void | setTerminalProgressMonitor () |
Initializes a progress monitor that prints to stdout. | |
std::vector< const INode * > | getChildren () const |
Returns a vector of children (const). | |
SimulationResult | convertData (const OutputData< double > &data, bool put_masked_areas_to_zero=true) |
Convert user data to SimulationResult object for later drawing in various axes units. More... | |
Public Member Functions inherited from ICloneable | |
ICloneable (const ICloneable &)=delete | |
ICloneable (ICloneable &&)=default | |
virtual void | transferToCPP () |
Used for Python overriding of clone (see swig/tweaks.py) | |
Public Member Functions inherited from INode | |
INode (const NodeMeta &meta, const std::vector< double > &PValues) | |
virtual std::string | treeToString () const |
Returns multiline string representing tree structure below the node. | |
void | registerChild (INode *node) |
virtual void | setParent (const INode *newParent) |
const INode * | parent () const |
INode * | parent () |
int | copyNumber (const INode *node) const |
Returns copyNumber of child, which takes into account existence of children with same name. | |
std::string | displayName () const |
Returns display name, composed from the name of node and it's copy number. | |
ParameterPool * | createParameterTree () const |
Creates new parameter pool, with all local parameters and those of its children. | |
Public Member Functions inherited from IParameterized | |
IParameterized (const std::string &name="") | |
IParameterized (const IParameterized &other) | |
IParameterized & | operator= (const IParameterized &other)=delete |
ParameterPool * | parameterPool () const |
Returns pointer to the parameter pool. | |
std::string | parametersToString () const |
Returns multiline string representing available parameters. | |
RealParameter & | registerParameter (const std::string &name, double *parpointer) |
void | registerVector (const std::string &base_name, kvector_t *p_vec, const std::string &units="nm") |
void | setParameterValue (const std::string &name, double value) |
void | setVectorValue (const std::string &base_name, kvector_t value) |
RealParameter * | parameter (const std::string &name) const |
Returns parameter with given 'name'. | |
virtual void | onChange () |
Action to be taken in inherited class when a parameter has changed. | |
void | removeParameter (const std::string &name) |
void | removeVector (const std::string &base_name) |
void | setName (const std::string &name) |
const std::string & | getName () const |
Additional Inherited Members | |
Static Public Member Functions inherited from IParameterized | |
static std::string | XComponentName (const std::string &base_name) |
static std::string | YComponentName (const std::string &base_name) |
static std::string | ZComponentName (const std::string &base_name) |
Protected Member Functions inherited from Simulation | |
Simulation (const Simulation &other) | |
virtual void | transferResultsToIntensityMap () |
Creates the appropriate data structure (e.g. More... | |
virtual void | updateIntensityMap () |
const SimulationOptions & | options () const |
ProgressHandler & | progress () |
Protected Attributes inherited from INode | |
const size_t | m_NP |
std::vector< double > | m_P |
Main class to run a specular simulation.
Definition at line 32 of file SpecularSimulation.h.
|
overridevirtual |
Returns the results of the simulation in a format that supports unit conversion and export to numpy arrays.
If simulation was not run, returns an array of proper size filled with zeros.
Implements Simulation.
Definition at line 107 of file SpecularSimulation.cpp.