BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Public Member Functions | |
SpecularSimulation () | |
~SpecularSimulation () override | |
SpecularSimulation * | clone () const override |
void | prepareSimulation () override |
void | accept (INodeVisitor *visitor) const override final |
SimulationResult | result () const override |
void | setScan (const ISpecularScan &scan) |
const IAxis * | coordinateAxis () const |
const IFootprintFactor * | footprintFactor () const |
size_t | intensityMapSize () const override |
const ISpecularScan * | dataHandler () const |
void | runSimulation () |
void | runMPISimulation () |
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) |
void | setDetectorResolutionFunction (const IResolutionFunction2D &resolution_function) |
void | removeDetectorResolutionFunction () |
void | setAnalyzerProperties (const kvector_t direction, double efficiency, double total_transmission) |
void | setSample (const MultiLayer &sample) |
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 () |
std::vector< const INode * > | getChildren () const |
SimulationResult | convertData (const OutputData< double > &data, bool put_masked_areas_to_zero=true) |
virtual void | transferToCPP () |
virtual std::string | treeToString () const |
void | registerChild (INode *node) |
virtual void | setParent (const INode *newParent) |
const INode * | parent () const |
INode * | parent () |
int | copyNumber (const INode *node) const |
std::string | displayName () const |
ParameterPool * | createParameterTree () const |
ParameterPool * | parameterPool () const |
std::string | parametersToString () const |
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 |
virtual void | onChange () |
void | removeParameter (const std::string &name) |
void | removeVector (const std::string &base_name) |
void | setName (const std::string &name) |
const std::string & | getName () const |
Static Public Member Functions | |
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 | |
virtual void | transferResultsToIntensityMap () |
virtual void | updateIntensityMap () |
const SimulationOptions & | options () const |
ProgressHandler & | progress () |
Protected Attributes | |
const size_t | m_NP |
std::vector< double > | m_P |
Private Member Functions | |
SpecularSimulation (const SpecularSimulation &other) | |
void | initSimulationElementVector () override |
std::unique_ptr< IComputation > | generateSingleThreadedComputation (size_t start, size_t n_elements) override |
void | checkCache () const |
void | validateParametrization (const ParameterDistribution &par_distr) const override |
void | initialize () |
void | normalize (size_t start_ind, size_t n_elements) override |
void | addBackgroundIntensity (size_t start_ind, size_t n_elements) override |
void | addDataToCache (double weight) override |
void | moveDataFromCache () override |
size_t | numberOfSimulationElements () const override |
std::vector< double > | rawResults () const override |
void | setRawResults (const std::vector< double > &raw_data) override |
void | runSingleSimulation (size_t batch_start, size_t batch_size, double weight=1.0) |
Private Attributes | |
std::unique_ptr< ISpecularScan > | m_scan |
std::vector< SpecularSimulationElement > | m_sim_elements |
std::vector< double > | m_cache |
SimulationOptions | m_options |
ProgressHandler | m_progress |
SampleProvider | m_sample_provider |
DistributionHandler | m_distribution_handler |
Instrument | m_instrument |
std::unique_ptr< IBackground > | m_background |
const INode * | m_parent {nullptr} |
std::string | m_name |
std::unique_ptr< ParameterPool > | m_pool |
Main class to run a specular simulation.
Definition at line 32 of file SpecularSimulation.h.
SpecularSimulation::SpecularSimulation | ( | ) |
Definition at line 74 of file SpecularSimulation.cpp.
References initialize().
Referenced by clone().
|
overridedefault |
|
private |
Definition at line 79 of file SpecularSimulation.cpp.
References initialize().
|
overridevirtual |
Implements Simulation.
Definition at line 88 of file SpecularSimulation.cpp.
References SpecularSimulation().
|
overridevirtual |
Put into a clean state for running a simulation.
Reimplemented from Simulation.
Definition at line 93 of file SpecularSimulation.cpp.
References Instrument::initDetector(), Simulation::instrument(), and Simulation::prepareSimulation().
|
inlinefinaloverridevirtual |
Calls the INodeVisitor's visit method.
Implements INode.
Definition at line 43 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.
References OutputData< T >::addAxis(), coordinateAxis(), UnitConverter1D::createUnitConverter(), m_scan, m_sim_elements, OutputData< T >::setAllTo(), and OutputData< T >::setRawDataVector().
Referenced by rawResults().
void SpecularSimulation::setScan | ( | const ISpecularScan & | scan | ) |
Sets chosen specular scan to the simulation.
Definition at line 121 of file SpecularSimulation.cpp.
References ISpecularScan::clone(), ISpecularScan::coordinateAxis(), IAxis::getMin(), Simulation::instrument(), m_scan, Instrument::setBeamParameters(), and Instrument::setDetector().
Referenced by StandardSimulations::BasicSpecularQ(), StandardSimulations::SpecularDivergentBeam(), StandardSimulations::SpecularWithGaussianBeam(), StandardSimulations::SpecularWithSquareBeam(), StandardSimulations::TOFRWithPointwiseResolution(), and StandardSimulations::TOFRWithRelativeResolution().
const IAxis * SpecularSimulation::coordinateAxis | ( | ) | const |
Returns a pointer to coordinate axis.
Definition at line 138 of file SpecularSimulation.cpp.
References m_scan.
Referenced by result().
const IFootprintFactor * SpecularSimulation::footprintFactor | ( | ) | const |
Returns a pointer to footprint factor holder.
Definition at line 146 of file SpecularSimulation.cpp.
References m_scan.
|
overridevirtual |
Returns the total number of the intensity values in the simulation result.
Implements Simulation.
Definition at line 151 of file SpecularSimulation.cpp.
References m_scan.
|
inline |
Returns internal data handler.
Definition at line 64 of file SpecularSimulation.h.
References m_scan.
Referenced by SimulationToPython::defineSpecularScan().
|
overrideprivatevirtual |
Initializes the vector of Simulation elements.
Implements Simulation.
Definition at line 156 of file SpecularSimulation.cpp.
References anonymous_namespace{SpecularSimulation.cpp}::generateSimulationElements(), Simulation::instrument(), m_cache, m_scan, and m_sim_elements.
Referenced by setRawResults().
|
overrideprivatevirtual |
Generate a single threaded computation for a given range of simulation elements.
start | Index of the first element to include into computation |
n_elements | Number of elements to process |
Implements Simulation.
Definition at line 168 of file SpecularSimulation.cpp.
References ASSERT, m_sim_elements, Simulation::options(), Simulation::progress(), and Simulation::sample().
|
private |
Definition at line 176 of file SpecularSimulation.cpp.
References m_cache, and m_sim_elements.
Referenced by addDataToCache(), and moveDataFromCache().
|
overrideprivatevirtual |
Checks the distribution validity for simulation.
Reimplemented from Simulation.
Definition at line 183 of file SpecularSimulation.cpp.
References INode::createParameterTree(), ParameterDistribution::getDistribution(), ParameterDistribution::getMainParameterName(), and IDistribution1D::getMean().
|
private |
Initializes simulation.
Definition at line 198 of file SpecularSimulation.cpp.
References Instrument::getBeam(), Simulation::instrument(), RealLimits::limited(), M_PI_2, IParameterized::parameter(), RealParameter::setLimits(), and IParameterized::setName().
Referenced by SpecularSimulation().
|
overrideprivatevirtual |
Normalize the detector counts to beam intensity, to solid angle, and to exposure angle.
start_ind | Index of the first element to operate on |
n_elements | Number of elements to process |
Implements Simulation.
Definition at line 210 of file SpecularSimulation.cpp.
References Simulation::getBeamIntensity(), Simulation::instrument(), m_scan, m_sim_elements, and anonymous_namespace{SpecularSimulation.cpp}::mangledScan().
|
overrideprivatevirtual |
Implements Simulation.
Definition at line 229 of file SpecularSimulation.cpp.
References Simulation::background(), and m_sim_elements.
|
overrideprivatevirtual |
Implements Simulation.
Definition at line 239 of file SpecularSimulation.cpp.
References checkCache(), m_cache, and m_sim_elements.
|
overrideprivatevirtual |
Implements Simulation.
Definition at line 246 of file SpecularSimulation.cpp.
References checkCache(), m_cache, and m_sim_elements.
|
overrideprivatevirtual |
Gets the number of elements this simulation needs to calculate.
Implements Simulation.
Definition at line 102 of file SpecularSimulation.cpp.
References m_scan.
|
overrideprivatevirtual |
Implements Simulation.
Definition at line 255 of file SpecularSimulation.cpp.
References m_sim_elements, and result().
|
overrideprivatevirtual |
Implements Simulation.
Definition at line 264 of file SpecularSimulation.cpp.
References initSimulationElementVector(), m_sim_elements, and Simulation::transferResultsToIntensityMap().
|
inherited |
Run a simulation, possibly averaged over parameter distributions.
Run simulation with possible averaging over parameter distributions.
Definition at line 200 of file Simulation.cpp.
References INode::createParameterTree(), SimulationOptions::getCurrentBatch(), SimulationOptions::getNumberOfBatches(), anonymous_namespace{Simulation.cpp}::getNumberOfElements(), anonymous_namespace{Simulation.cpp}::getStartIndex(), DistributionHandler::getTotalNumberOfSamples(), Simulation::m_distribution_handler, Simulation::m_options, Simulation::m_progress, Simulation::moveDataFromCache(), Simulation::numberOfSimulationElements(), Simulation::prepareSimulation(), ProgressHandler::reset(), Simulation::runSingleSimulation(), ProgressHandler::setExpectedNTicks(), DistributionHandler::setParameterToMeans(), DistributionHandler::setParameterValues(), and Simulation::transferResultsToIntensityMap().
|
inherited |
Run a simulation in a MPI environment.
Definition at line 229 of file Simulation.cpp.
References MPISimulation::runSimulation().
|
inherited |
Definition at line 235 of file Simulation.cpp.
References Simulation::m_instrument, and Simulation::updateIntensityMap().
|
inlineinherited |
Definition at line 55 of file Simulation.h.
References Simulation::m_instrument.
Referenced by Simulation2D::addMask(), OffSpecSimulation::checkInitialization(), Simulation::convertData(), DepthProbeSimulation::createUnitConverter(), OffSpecSimulation::createUnitConverter(), SimulationToPython::defineDetector(), SimulationToPython::defineDetectorPolarizationAnalysis(), SimulationToPython::defineDetectorResolutionFunction(), SimulationToPython::defineGISASBeam(), SimulationToPython::defineMasks(), SimulationToPython::defineOffSpecBeam(), SimulationToPython::defineSpecularScan(), Simulation2D::generateSimulationElements(), Simulation::getBeamIntensity(), Simulation::getChildren(), DepthProbeSimulation::initialize(), initialize(), DepthProbeSimulation::initSimulationElementVector(), GISASSimulation::initSimulationElementVector(), OffSpecSimulation::initSimulationElementVector(), initSimulationElementVector(), GISASSimulation::intensityMapSize(), OffSpecSimulation::intensityMapSize(), Simulation2D::maskAll(), DepthProbeSimulation::normalize(), normalize(), GISASSimulation::prepareSimulation(), Simulation2D::prepareSimulation(), prepareSimulation(), Simulation::removeDetectorResolutionFunction(), Simulation2D::removeMasks(), GISASSimulation::result(), OffSpecSimulation::result(), Simulation::setAnalyzerProperties(), Simulation::setBeamIntensity(), DepthProbeSimulation::setBeamParameters(), OffSpecSimulation::setBeamParameters(), GISASSimulation::setBeamParameters(), Simulation::setBeamPolarization(), Simulation2D::setDetector(), Simulation2D::setDetectorParameters(), Simulation::setDetectorResolutionFunction(), Simulation2D::setRegionOfInterest(), setScan(), OffSpecSimulation::transferDetectorImage(), OffSpecSimulation::transferResultsToIntensityMap(), and OffSpecSimulation::updateIntensityMap().
|
inlineinherited |
|
inherited |
Definition at line 173 of file Simulation.cpp.
References Simulation::instrument(), and Instrument::setBeamIntensity().
Referenced by StandardSimulations::GISASWithMasks().
|
inherited |
Definition at line 178 of file Simulation.cpp.
References Instrument::getBeamIntensity(), and Simulation::instrument().
Referenced by DepthProbeSimulation::normalize(), Simulation2D::normalize(), and normalize().
|
inherited |
Sets the beam polarization according to the given Bloch vector.
Definition at line 184 of file Simulation.cpp.
References Simulation::instrument(), and Instrument::setBeamPolarization().
Referenced by StandardSimulations::BasicGISAS00(), StandardSimulations::BasicPolarizedGISAS(), StandardSimulations::MaxiGISAS00(), StandardSimulations::MiniGISASPolarizationMM(), StandardSimulations::MiniGISASPolarizationMP(), StandardSimulations::MiniGISASPolarizationPM(), and StandardSimulations::MiniGISASPolarizationPP().
|
inherited |
Definition at line 156 of file Simulation.cpp.
References Simulation::instrument(), and Instrument::setDetectorResolutionFunction().
Referenced by StandardSimulations::MiniGISASDetectorResolution().
|
inherited |
Definition at line 161 of file Simulation.cpp.
References Simulation::instrument(), and Instrument::removeDetectorResolution().
|
inherited |
Sets the polarization analyzer characteristics of the detector.
Definition at line 167 of file Simulation.cpp.
References Simulation::instrument(), and Instrument::setAnalyzerProperties().
Referenced by StandardSimulations::BasicGISAS00(), StandardSimulations::BasicPolarizedGISAS(), StandardSimulations::MaxiGISAS00(), StandardSimulations::MiniGISASPolarizationMM(), StandardSimulations::MiniGISASPolarizationMP(), StandardSimulations::MiniGISASPolarizationPM(), and StandardSimulations::MiniGISASPolarizationPP().
|
inherited |
The MultiLayer object will not be owned by the Simulation object.
Definition at line 242 of file Simulation.cpp.
References Simulation::m_sample_provider, Simulation::sample(), and SampleProvider::setSample().
|
inherited |
Definition at line 247 of file Simulation.cpp.
References Simulation::m_sample_provider, and SampleProvider::sample().
Referenced by SimulationToPython::generateSimulationCode(), DepthProbeSimulation::generateSingleThreadedComputation(), Simulation2D::generateSingleThreadedComputation(), generateSingleThreadedComputation(), Simulation::setSample(), and DepthProbeSimulation::validityCheck().
|
inherited |
Definition at line 252 of file Simulation.cpp.
References Simulation::m_sample_provider, and SampleProvider::setBuilder().
|
inherited |
Definition at line 257 of file Simulation.cpp.
References IBackground::clone(), Simulation::m_background, and INode::registerChild().
Referenced by StandardSimulations::ConstantBackgroundGISAS(), and Simulation::Simulation().
|
inlineinherited |
Definition at line 75 of file Simulation.h.
References Simulation::m_background.
Referenced by DepthProbeSimulation::addBackgroundIntensity(), Simulation2D::addBackgroundIntensity(), addBackgroundIntensity(), and SimulationToPython::defineBackground().
|
inherited |
Definition at line 273 of file Simulation.cpp.
Referenced by StandardSimulations::MiniGISASBeamDivergence().
|
inherited |
Definition at line 281 of file Simulation.cpp.
References DistributionHandler::addParameterDistribution(), Simulation::m_distribution_handler, and Simulation::validateParametrization().
|
inlineinherited |
Definition at line 89 of file Simulation.h.
References Simulation::m_distribution_handler.
Referenced by SimulationToPython::defineParameterDistributions().
|
inlineinherited |
Definition at line 91 of file Simulation.h.
References Simulation::m_options, and Simulation::options().
|
inlineinherited |
Definition at line 92 of file Simulation.h.
References Simulation::m_options.
Referenced by SimulationToPython::defineSimulationOptions(), StandardSimulations::MiniGISASMonteCarlo(), and StandardSimulations::MiniGISASSpecularPeak().
|
inlineinherited |
|
inlineinherited |
Definition at line 95 of file Simulation.h.
References Simulation::m_progress, and ProgressHandler::subscribe().
|
inherited |
Initializes a progress monitor that prints to stdout.
Definition at line 145 of file Simulation.cpp.
References Simulation::m_progress, and ProgressHandler::subscribe().
|
virtualinherited |
Returns a vector of children (const).
Reimplemented from INode.
Definition at line 263 of file Simulation.cpp.
References SampleProvider::getChildren(), Simulation::instrument(), Simulation::m_background, Simulation::m_sample_provider, and Simulation::result().
|
inherited |
Convert user data to SimulationResult object for later drawing in various axes units.
User data will be cropped to the ROI defined in the simulation, amplitudes in areas corresponding to the masked areas of the detector will be set to zero.
Definition at line 317 of file Simulation.cpp.
References UnitConverterUtils::createConverter(), UnitConverterUtils::createOutputData(), Instrument::detector(), SimulationAreaIterator::detectorIndex(), anonymous_namespace{Simulation.cpp}::detHasSameDimensions(), OutputData< T >::getRawDataVector(), Simulation::instrument(), IDetector::iterate(), and SimulationAreaIterator::roiIndex().
|
inlineprotectedvirtualinherited |
Creates the appropriate data structure (e.g.
2D intensity map) from the calculated SimulationElement objects
Reimplemented in OffSpecSimulation.
Definition at line 110 of file Simulation.h.
Referenced by Simulation::runSimulation(), Simulation2D::setRawResults(), and setRawResults().
|
inlineprotectedvirtualinherited |
Reimplemented in OffSpecSimulation.
Definition at line 115 of file Simulation.h.
Referenced by Simulation2D::setDetectorParameters(), and Simulation::setInstrument().
|
inlineprotectedinherited |
Definition at line 120 of file Simulation.h.
References Simulation::m_options.
Referenced by DepthProbeSimulation::generateSingleThreadedComputation(), Simulation2D::generateSingleThreadedComputation(), generateSingleThreadedComputation(), and Simulation::setOptions().
|
inlineprotectedinherited |
Definition at line 121 of file Simulation.h.
References Simulation::m_progress.
Referenced by DepthProbeSimulation::generateSingleThreadedComputation(), Simulation2D::generateSingleThreadedComputation(), and generateSingleThreadedComputation().
|
privateinherited |
Runs a single simulation with fixed parameter values.
If desired, the simulation is run in several threads.
Definition at line 289 of file Simulation.cpp.
References Simulation::addBackgroundIntensity(), Simulation::addDataToCache(), ASSERT, Simulation::generateSingleThreadedComputation(), anonymous_namespace{Simulation.cpp}::getNumberOfElements(), SimulationOptions::getNumberOfThreads(), anonymous_namespace{Simulation.cpp}::getStartIndex(), Simulation::initSimulationElementVector(), Simulation::m_options, Simulation::normalize(), and anonymous_namespace{Simulation.cpp}::runComputations().
Referenced by Simulation::runSimulation().
|
inlinevirtualinherited |
Used for Python overriding of clone (see swig/tweaks.py)
Definition at line 34 of file ICloneable.h.
|
virtualinherited |
Returns multiline string representing tree structure below the node.
Definition at line 53 of file INode.cpp.
References NodeUtils::nodeToString().
|
inherited |
Definition at line 58 of file INode.cpp.
References ASSERT, and INode::setParent().
Referenced by ParticleLayout::addAndRegisterAbstractParticle(), ParticleCoreShell::addAndRegisterCore(), MultiLayer::addAndRegisterInterface(), MultiLayer::addAndRegisterLayer(), ParticleCoreShell::addAndRegisterShell(), Layer::addLayout(), ParticleComposition::addParticlePointer(), Beam::Beam(), Crystal::Crystal(), IDetector::IDetector(), Simulation::initialize(), MesoCrystal::initialize(), Instrument::Instrument(), Beam::operator=(), Instrument::operator=(), Particle::Particle(), ParticleDistribution::ParticleDistribution(), IParticle::rotate(), ParticleLayout::setAndRegisterInterferenceFunction(), Simulation::setBackground(), InterferenceFunction1DLattice::setDecayFunction(), InterferenceFunction2DLattice::setDecayFunction(), Instrument::setDetector(), IDetector::setDetectorResolution(), Beam::setFootprintFactor(), Particle::setFormFactor(), InterferenceFunctionFinite3DLattice::setLattice(), InterferenceFunction2DLattice::setLattice(), InterferenceFunction2DParaCrystal::setLattice(), InterferenceFunction2DSuperLattice::setLattice(), InterferenceFunctionFinite2DLattice::setLattice(), InterferenceFunctionRadialParaCrystal::setProbabilityDistribution(), InterferenceFunction2DParaCrystal::setProbabilityDistributions(), ConvolutionDetectorResolution::setResolutionFunction(), IParticle::setRotation(), LayerInterface::setRoughness(), and InterferenceFunction2DSuperLattice::setSubstructureIFF().
|
virtualinherited |
Reimplemented in SampleProvider.
Definition at line 69 of file INode.cpp.
References INode::m_parent.
Referenced by INode::registerChild(), SampleProvider::setBuilder(), and SampleProvider::setParent().
|
inherited |
Definition at line 74 of file INode.cpp.
References INode::m_parent.
Referenced by INode::copyNumber(), INode::createParameterTree(), NodeUtils::nodePath(), Lattice2D::onChange(), SampleProvider::setBuilder(), SampleProvider::setParent(), and SampleProvider::setSample().
|
inherited |
|
inherited |
Returns copyNumber of child, which takes into account existence of children with same name.
Definition at line 84 of file INode.cpp.
References INode::getChildren(), IParameterized::getName(), and INode::parent().
Referenced by INode::displayName().
|
inherited |
Returns display name, composed from the name of node and it's copy number.
Definition at line 105 of file INode.cpp.
References INode::copyNumber(), IParameterized::getName(), and INode::m_parent.
Referenced by NodeUtils::nodePath(), and anonymous_namespace{NodeUtils.cpp}::nodeString().
|
virtualinherited |
Creates new parameter pool, with all local parameters and those of its children.
Reimplemented from IParameterized.
Definition at line 116 of file INode.cpp.
References ParameterPool::copyToExternalPool(), NodeIterator< Strategy >::first(), NodeIterator< Strategy >::getCurrent(), NodeIterator< Strategy >::isDone(), NodeIterator< Strategy >::next(), NodeUtils::nodePath(), IParameterized::parameterPool(), and INode::parent().
Referenced by ParticleDistribution::generateParticles(), Simulation::runSimulation(), DepthProbeSimulation::validateParametrization(), OffSpecSimulation::validateParametrization(), and validateParametrization().
|
inlineinherited |
Returns pointer to the parameter pool.
Definition at line 38 of file IParameterized.h.
References IParameterized::m_pool.
Referenced by pyfmt2::argumentList(), SampleBuilderNode::borrow_builder_parameters(), INode::createParameterTree(), INode::INode(), IParameterized::IParameterized(), anonymous_namespace{NodeUtils.cpp}::poolToString(), SampleBuilderNode::reset(), and IDistribution1D::setUnits().
|
inherited |
Returns multiline string representing available parameters.
Definition at line 40 of file IParameterized.cpp.
References IParameterized::createParameterTree().
|
inherited |
Definition at line 48 of file IParameterized.cpp.
References IParameterized::getName(), IParameterized::m_pool, and IParameterized::onChange().
Referenced by BasicLattice::BasicLattice(), Beam::Beam(), CylindersInBABuilder::CylindersInBABuilder(), DetectionProperties::DetectionProperties(), HexagonalLattice::HexagonalLattice(), IInterferenceFunction::IInterferenceFunction(), INode::INode(), InterferenceFunction1DLattice::InterferenceFunction1DLattice(), InterferenceFunction2DParaCrystal::InterferenceFunction2DParaCrystal(), InterferenceFunctionHardDisk::InterferenceFunctionHardDisk(), InterferenceFunctionRadialParaCrystal::InterferenceFunctionRadialParaCrystal(), InterferenceFunctionTwin::InterferenceFunctionTwin(), Lattice2D::Lattice2D(), LayerRoughness::LayerRoughness(), MultiLayer::MultiLayer(), ParticleDistribution::ParticleDistribution(), PlainMultiLayerBySLDBuilder::PlainMultiLayerBySLDBuilder(), IParticle::registerAbundance(), ParticleLayout::registerParticleDensity(), Layer::registerThickness(), IParameterized::registerVector(), ParticleLayout::registerWeight(), ResolutionFunction2DGaussian::ResolutionFunction2DGaussian(), ResonatorBuilder::ResonatorBuilder(), Lattice2D::setRotationEnabled(), SquareLattice::SquareLattice(), and TriangularRippleBuilder::TriangularRippleBuilder().
|
inherited |
Definition at line 54 of file IParameterized.cpp.
References IParameterized::registerParameter(), RealParameter::setUnit(), IParameterized::XComponentName(), IParameterized::YComponentName(), and IParameterized::ZComponentName().
Referenced by Beam::Beam(), DetectionProperties::DetectionProperties(), InterferenceFunctionTwin::InterferenceFunctionTwin(), MultiLayer::MultiLayer(), Lattice::registerBasisVectors(), and IParticle::registerPosition().
|
inherited |
Definition at line 62 of file IParameterized.cpp.
References IParameterized::createParameterTree(), IParameterized::m_pool, and ParameterPool::setMatchedParametersValue().
Referenced by AsymRippleBuilder::buildSample(), and IParameterized::setVectorValue().
|
inherited |
Definition at line 75 of file IParameterized.cpp.
References IParameterized::setParameterValue(), BasicVector3D< T >::x(), IParameterized::XComponentName(), BasicVector3D< T >::y(), IParameterized::YComponentName(), BasicVector3D< T >::z(), and IParameterized::ZComponentName().
|
inherited |
Returns parameter with given 'name'.
Definition at line 83 of file IParameterized.cpp.
References IParameterized::m_pool.
Referenced by DepthProbeSimulation::initialize(), initialize(), IParticle::registerAbundance(), Lattice::registerBasisVectors(), ParticleLayout::registerParticleDensity(), IParticle::registerPosition(), Layer::registerThickness(), Lattice2D::setRotationEnabled(), and DistributionLogNormal::setUnits().
|
inlinevirtualinherited |
Action to be taken in inherited class when a parameter has changed.
Reimplemented in IProfileRipple, FormFactorSphereLogNormalRadius, FormFactorSphereGaussianRadius, FormFactorGaussSphere, ISawtoothRipple, ICosineRipple, IProfileRectangularRipple, FormFactorTruncatedSpheroid, FormFactorTruncatedSphere, FormFactorTruncatedCube, FormFactorTetrahedron, FormFactorPyramid, FormFactorPrism6, FormFactorPrism3, FormFactorLongBoxLorentz, FormFactorLongBoxGauss, FormFactorIcosahedron, FormFactorHollowSphere, FormFactorHemiEllipsoid, FormFactorFullSpheroid, FormFactorFullSphere, FormFactorEllipsoidalCylinder, FormFactorDodecahedron, FormFactorCylinder, FormFactorCuboctahedron, FormFactorCone6, FormFactorCone, FormFactorCantellatedCube, FormFactorBox, FormFactorAnisoPyramid, InterferenceFunction3DLattice, InterferenceFunction2DLattice, Lattice, and Lattice2D.
Definition at line 58 of file IParameterized.h.
Referenced by Lattice2D::onChange(), and IParameterized::registerParameter().
|
inherited |
Definition at line 88 of file IParameterized.cpp.
References IParameterized::m_pool.
Referenced by IParticle::registerAbundance(), ParticleLayout::registerParticleDensity(), Layer::registerThickness(), IParameterized::removeVector(), and Lattice2D::setRotationEnabled().
|
inherited |
Definition at line 93 of file IParameterized.cpp.
References IParameterized::removeParameter(), IParameterized::XComponentName(), IParameterized::YComponentName(), and IParameterized::ZComponentName().
Referenced by IParticle::registerPosition().
|
staticinherited |
Definition at line 100 of file IParameterized.cpp.
Referenced by Lattice::registerBasisVectors(), IParticle::registerPosition(), IParameterized::registerVector(), IParameterized::removeVector(), and IParameterized::setVectorValue().
|
staticinherited |
Definition at line 105 of file IParameterized.cpp.
Referenced by IParameterized::registerVector(), IParameterized::removeVector(), and IParameterized::setVectorValue().
|
staticinherited |
Definition at line 110 of file IParameterized.cpp.
Referenced by IParameterized::registerVector(), IParameterized::removeVector(), and IParameterized::setVectorValue().
|
inlineinherited |
Definition at line 68 of file IParameterized.h.
References IParameterized::m_name.
Referenced by BasicLattice::BasicLattice(), Beam::Beam(), Layer::clone(), ConvolutionDetectorResolution::ConvolutionDetectorResolution(), LayersWithAbsorptionBuilder::createSampleByIndex(), Basic2DParaCrystalBuilder::createSampleByIndex(), ParticleInVacuumBuilder::createSampleByIndex(), SimpleMagneticRotationBuilder::createSampleByIndex(), Crystal::Crystal(), DetectionProperties::DetectionProperties(), DistributionHandler::DistributionHandler(), FormFactorBAPol::FormFactorBAPol(), FormFactorCoreShell::FormFactorCoreShell(), FormFactorCrystal::FormFactorCrystal(), FormFactorDecoratorMaterial::FormFactorDecoratorMaterial(), FormFactorDecoratorPositionFactor::FormFactorDecoratorPositionFactor(), FormFactorDecoratorRotation::FormFactorDecoratorRotation(), FormFactorDWBA::FormFactorDWBA(), FormFactorDWBAPol::FormFactorDWBAPol(), FormFactorWeighted::FormFactorWeighted(), HexagonalLattice::HexagonalLattice(), IDetector::IDetector(), DepthProbeSimulation::initialize(), GISASSimulation::initialize(), OffSpecSimulation::initialize(), initialize(), SpecularDetector1D::initialize(), MesoCrystal::initialize(), Particle::initialize(), ParticleComposition::initialize(), INode::INode(), Instrument::Instrument(), InterferenceFunction1DLattice::InterferenceFunction1DLattice(), InterferenceFunction2DLattice::InterferenceFunction2DLattice(), InterferenceFunction2DParaCrystal::InterferenceFunction2DParaCrystal(), InterferenceFunction2DSuperLattice::InterferenceFunction2DSuperLattice(), InterferenceFunction3DLattice::InterferenceFunction3DLattice(), InterferenceFunctionFinite2DLattice::InterferenceFunctionFinite2DLattice(), InterferenceFunctionFinite3DLattice::InterferenceFunctionFinite3DLattice(), InterferenceFunctionHardDisk::InterferenceFunctionHardDisk(), InterferenceFunctionNone::InterferenceFunctionNone(), InterferenceFunctionRadialParaCrystal::InterferenceFunctionRadialParaCrystal(), InterferenceFunctionTwin::InterferenceFunctionTwin(), ISampleBuilder::ISampleBuilder(), IsGISAXSDetector::IsGISAXSDetector(), Lattice::Lattice(), Layer::Layer(), LayerInterface::LayerInterface(), LayerRoughness::LayerRoughness(), MultiLayer::MultiLayer(), Beam::operator=(), SampleBuilderNode::operator=(), ParticleCoreShell::ParticleCoreShell(), ParticleDistribution::ParticleDistribution(), ParticleLayout::ParticleLayout(), RectangularDetector::RectangularDetector(), SampleBuilderNode::reset(), ResolutionFunction2DGaussian::ResolutionFunction2DGaussian(), SampleBuilderNode::SampleBuilderNode(), SampleBuilderNode::setSBN(), SphericalDetector::SphericalDetector(), and SquareLattice::SquareLattice().
|
inlineinherited |
Definition at line 69 of file IParameterized.h.
References IParameterized::m_name.
Referenced by Beam::Beam(), Layer::clone(), IFormFactorBorn::computeSlicingEffects(), ConvolutionDetectorResolution::ConvolutionDetectorResolution(), INode::copyNumber(), IParameterized::createParameterTree(), IFormFactor::createSlicedFormFactor(), SampleToPython::defineFormFactors(), SampleToPython::defineInterferenceFunctions(), INode::displayName(), IDetector::IDetector(), Instrument::Instrument(), IParameterized::IParameterized(), Beam::operator=(), SampleBuilderNode::operator=(), anonymous_namespace{ParticleLayout.cpp}::particleDensityIsProvidedByInterference(), IParameterized::registerParameter(), SampleBuilderNode::SampleBuilderNode(), and IFormFactor::sliceFormFactor().
|
private |
Definition at line 104 of file SpecularSimulation.h.
Referenced by coordinateAxis(), dataHandler(), footprintFactor(), initSimulationElementVector(), intensityMapSize(), normalize(), numberOfSimulationElements(), result(), and setScan().
|
private |
Definition at line 105 of file SpecularSimulation.h.
Referenced by addBackgroundIntensity(), addDataToCache(), checkCache(), generateSingleThreadedComputation(), initSimulationElementVector(), moveDataFromCache(), normalize(), rawResults(), result(), and setRawResults().
|
private |
Definition at line 106 of file SpecularSimulation.h.
Referenced by addDataToCache(), checkCache(), initSimulationElementVector(), and moveDataFromCache().
|
privateinherited |
Definition at line 152 of file Simulation.h.
Referenced by Simulation::getOptions(), Simulation::options(), Simulation::runSimulation(), Simulation::runSingleSimulation(), and Simulation::setOptions().
|
privateinherited |
Definition at line 153 of file Simulation.h.
Referenced by Simulation::progress(), Simulation::runSimulation(), Simulation::setTerminalProgressMonitor(), and Simulation::subscribe().
|
privateinherited |
Definition at line 154 of file Simulation.h.
Referenced by Simulation::getChildren(), Simulation::initialize(), Simulation::prepareSimulation(), Simulation::sample(), Simulation::setSample(), and Simulation::setSampleBuilder().
|
privateinherited |
Definition at line 155 of file Simulation.h.
Referenced by Simulation::addParameterDistribution(), Simulation::getDistributionHandler(), and Simulation::runSimulation().
|
privateinherited |
Definition at line 156 of file Simulation.h.
Referenced by Simulation::initialize(), Simulation::instrument(), and Simulation::setInstrument().
|
privateinherited |
Definition at line 157 of file Simulation.h.
Referenced by Simulation::background(), Simulation::getChildren(), Simulation::setBackground(), and Simulation::Simulation().
|
privateinherited |
Definition at line 81 of file INode.h.
Referenced by INode::displayName(), INode::parent(), and INode::setParent().
|
protectedinherited |
Definition at line 86 of file INode.h.
Referenced by INode::INode().
|
protectedinherited |
Definition at line 87 of file INode.h.
Referenced by INode::INode(), and IFootprintFactor::setWidthRatio().
|
privateinherited |
Definition at line 72 of file IParameterized.h.
Referenced by IParameterized::getName(), and IParameterized::setName().
|
privateinherited |
parameter pool (kind of pointer-to-implementation)
Definition at line 73 of file IParameterized.h.
Referenced by IParameterized::createParameterTree(), IParameterized::parameter(), IParameterized::parameterPool(), IParameterized::registerParameter(), IParameterized::removeParameter(), and IParameterized::setParameterValue().