BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Public Member Functions | |
MultiLayer () | |
~MultiLayer () override | |
MultiLayer * | clone () const final override |
void | accept (INodeVisitor *visitor) const final override |
size_t | numberOfLayers () const |
void | addLayer (const Layer &layer) |
void | addLayerWithTopRoughness (const Layer &layer, const LayerRoughness &roughness) |
const Layer * | layer (size_t i_layer) const |
const LayerInterface * | layerInterface (size_t i_interface) const |
void | setCrossCorrLength (double crossCorrLength) |
double | crossCorrLength () const |
void | setExternalField (kvector_t ext_field) |
kvector_t | externalField () const |
std::vector< const INode * > | getChildren () const final override |
void | setRoughnessModel (RoughnessModel roughnessModel) |
RoughnessModel | roughnessModel () const |
virtual const Material * | material () const |
std::vector< const Material * > | containedMaterials () const |
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 Attributes | |
const size_t | m_NP |
std::vector< double > | m_P |
Private Member Functions | |
void | addAndRegisterLayer (Layer *child) |
void | addAndRegisterInterface (LayerInterface *child) |
void | handleLayerThicknessRegistration () |
size_t | check_layer_index (size_t i_layer) const |
size_t | check_interface_index (size_t i_interface) const |
Private Attributes | |
SafePointerVector< Layer > | m_layers |
SafePointerVector< LayerInterface > | m_interfaces |
double | m_crossCorrLength |
kvector_t | m_ext_field |
RoughnessModel | m_roughness_model {RoughnessModel::DEFAULT} |
const INode * | m_parent {nullptr} |
std::string | m_name |
std::unique_ptr< ParameterPool > | m_pool |
Our sample model: a stack of layers one below the other.
Example of system of 4 layers (3 interfaces):
ambience layer #0 ------— interface #0 z=0.0 Fe, 20A layer #1 ------— interface #1 z=-20.0 Cr, 40A layer #2 ------— interface #2 z=-60.0 substrate layer #3
Definition at line 41 of file MultiLayer.h.
MultiLayer::MultiLayer | ( | ) |
Definition at line 27 of file MultiLayer.cpp.
References m_crossCorrLength, m_ext_field, IParameterized::registerParameter(), IParameterized::registerVector(), IParameterized::setName(), RealParameter::setNonnegative(), and RealParameter::setUnit().
Referenced by clone().
|
overridedefault |
|
finaloverridevirtual |
Returns a clone of multilayer with clones of all layers and interfaces between layers.
Implements ISample.
Definition at line 36 of file MultiLayer.cpp.
References addLayer(), addLayerWithTopRoughness(), crossCorrLength(), externalField(), layer(), m_interfaces, m_layers, MultiLayer(), numberOfLayers(), and roughnessModel().
Referenced by PyImport::createFromPython(), and SampleProvider::setSample().
|
inlinefinaloverridevirtual |
Calls the INodeVisitor's visit method.
Implements INode.
Definition at line 51 of file MultiLayer.h.
|
inline |
Definition at line 53 of file MultiLayer.h.
References m_layers, and SafePointerVector< T >::size().
Referenced by addLayerWithTopRoughness(), anonymous_namespace{MultiLayerUtils.cpp}::BottomLayerCoordinates(), clone(), handleLayerThicknessRegistration(), MultiLayerUtils::hasRoughness(), MultiLayerUtils::IndexOfLayer(), ProcessedSample::initLayouts(), ProcessedSample::initSlices(), MultiLayerUtils::LayerBottomInterface(), and MultiLayerUtils::ParticleRegions().
void MultiLayer::addLayer | ( | const Layer & | layer | ) |
Adds object to multilayer.
Adds layer with default (zero) roughness.
Definition at line 54 of file MultiLayer.cpp.
References addLayerWithTopRoughness(), and layer().
Referenced by BoxesSquareLatticeBuilder::buildSample(), CoreShellParticleBuilder::buildSample(), CoreShellBoxRotateZandYBuilder::buildSample(), CustomMorphologyBuilder::buildSample(), CylindersAndPrismsBuilder::buildSample(), CylindersInDWBABuilder::buildSample(), CylindersInBABuilder::buildSample(), LargeCylindersInDWBABuilder::buildSample(), RotatedCylindersBuilder::buildSample(), HomogeneousMultilayerBuilder::buildSample(), Lattice1DBuilder::buildSample(), LayersWithAbsorptionBuilder::buildSample(), LayersWithAbsorptionBySLDBuilder::buildSample(), MagneticSubstrateZeroFieldBuilder::buildSample(), SimpleMagneticLayerBuilder::buildSample(), MagneticLayerBuilder::buildSample(), MagneticRotationBuilder::buildSample(), MagneticParticleZeroFieldBuilder::buildSample(), MagneticCylindersBuilder::buildSample(), MagneticSpheresBuilder::buildSample(), MesoCrystalBuilder::buildSample(), MultiLayerWithRoughnessBuilder::buildSample(), MultipleLayoutBuilder::buildSample(), RadialParaCrystalBuilder::buildSample(), Basic2DParaCrystalBuilder::buildSample(), HexParaCrystalBuilder::buildSample(), RectParaCrystalBuilder::buildSample(), ParticleCompositionBuilder::buildSample(), CylindersWithSizeDistributionBuilder::buildSample(), TwoTypesCylindersDistributionBuilder::buildSample(), RotatedPyramidsDistributionBuilder::buildSample(), SpheresWithLimitsDistributionBuilder::buildSample(), ConesWithLimitsDistributionBuilder::buildSample(), LinkedBoxDistributionBuilder::buildSample(), ParticleInVacuumBuilder::buildSample(), HardDiskBuilder::buildSample(), CosineRippleBuilder::buildSample(), TriangularRippleBuilder::buildSample(), RotatedPyramidsBuilder::buildSample(), SizeDistributionDAModelBuilder::buildSample(), SizeDistributionLMAModelBuilder::buildSample(), SizeDistributionSSCAModelBuilder::buildSample(), CylindersInSSCABuilder::buildSample(), SlicedCompositionBuilder::buildSample(), SlicedCylindersBuilder::buildSample(), SLDSlicedCylindersBuilder::buildSample(), AveragedSlicedCylindersBuilder::buildSample(), TransformBoxBuilder::buildSample(), Basic2DLatticeBuilder::buildSample(), SquareLatticeBuilder::buildSample(), CenteredSquareLatticeBuilder::buildSample(), RotatedSquareLatticeBuilder::buildSample(), FiniteSquareLatticeBuilder::buildSample(), SuperLatticeBuilder::buildSample(), TwoLayerRoughnessBuilder::buildSample(), PlainMultiLayerBySLDBuilder::buildSample(), ThickAbsorptiveSampleBuilder::buildSample(), clone(), anonymous_namespace{BoxCompositionBuilder.cpp}::finalizeMultiLayer(), and anonymous_namespace{MagneticLayersBuilder.cpp}::parametricBuild().
void MultiLayer::addLayerWithTopRoughness | ( | const Layer & | layer, |
const LayerRoughness & | roughness | ||
) |
Adds layer with top roughness.
Definition at line 61 of file MultiLayer.cpp.
References addAndRegisterInterface(), addAndRegisterLayer(), SafePointerVector< T >::back(), Layer::clone(), LayerInterface::createRoughInterface(), LayerInterface::createSmoothInterface(), LayerRoughness::getSigma(), layer(), m_layers, numberOfLayers(), and Layer::thickness().
Referenced by addLayer(), MultiLayerWithRoughnessBuilder::buildSample(), TwoLayerRoughnessBuilder::buildSample(), ThickAbsorptiveSampleBuilder::buildSample(), clone(), and anonymous_namespace{MagneticLayersBuilder.cpp}::parametricBuild().
const Layer * MultiLayer::layer | ( | size_t | i_layer | ) | const |
Returns layer with given index.
Definition at line 88 of file MultiLayer.cpp.
References check_layer_index(), and m_layers.
Referenced by addLayer(), addLayerWithTopRoughness(), clone(), MultiLayerUtils::IndexOfLayer(), ProcessedSample::initLayouts(), ProcessedSample::initSlices(), MultiLayerUtils::LayerThickness(), and MultiLayerUtils::ParticleRegions().
const LayerInterface * MultiLayer::layerInterface | ( | size_t | i_interface | ) | const |
Returns interface with given index.
Definition at line 93 of file MultiLayer.cpp.
References check_interface_index(), and m_interfaces.
Referenced by MultiLayerUtils::hasRoughness(), MultiLayerUtils::LayerBottomInterface(), MultiLayerUtils::LayerTopInterface(), and MultiLayerUtils::LayerTopRoughness().
void MultiLayer::setCrossCorrLength | ( | double | crossCorrLength | ) |
Sets cross correlation length of roughnesses between interfaces.
Definition at line 98 of file MultiLayer.cpp.
References crossCorrLength(), and m_crossCorrLength.
Referenced by MultiLayerWithRoughnessBuilder::buildSample().
|
inline |
Returns cross correlation length of roughnesses between interfaces.
Definition at line 71 of file MultiLayer.h.
References m_crossCorrLength.
Referenced by clone(), and setCrossCorrLength().
void MultiLayer::setExternalField | ( | kvector_t | ext_field | ) |
Sets the external field applied to the multilayer (units: A/m)
Definition at line 105 of file MultiLayer.cpp.
References m_ext_field.
|
inline |
Returns the external field applied to the multilayer (units: A/m)
Definition at line 77 of file MultiLayer.h.
References m_ext_field.
Referenced by clone().
|
finaloverridevirtual |
Returns a vector of children (const).
Reimplemented from INode.
Definition at line 115 of file MultiLayer.cpp.
References MultiLayerUtils::LayerBottomInterface(), m_interfaces, m_layers, and SafePointerVector< T >::size().
void MultiLayer::setRoughnessModel | ( | RoughnessModel | roughnessModel | ) |
Definition at line 110 of file MultiLayer.cpp.
References m_roughness_model, and roughnessModel().
Referenced by anonymous_namespace{MagneticLayersBuilder.cpp}::parametricBuild().
|
inline |
Definition at line 83 of file MultiLayer.h.
References m_roughness_model.
Referenced by SpecularStrategyBuilder::build(), FeNiBilayerTanhBuilder::buildSample(), FeNiBilayerNCBuilder::buildSample(), FeNiBilayerSpinFlipTanhBuilder::buildSample(), FeNiBilayerSpinFlipNCBuilder::buildSample(), clone(), and setRoughnessModel().
|
private |
Adds the layer with simultaneous registration in parent class.
Definition at line 130 of file MultiLayer.cpp.
References handleLayerThicknessRegistration(), m_layers, SafePointerVector< T >::push_back(), and INode::registerChild().
Referenced by addLayerWithTopRoughness().
|
private |
Adds the interface with simultaneous registration in parent class.
Definition at line 137 of file MultiLayer.cpp.
References m_interfaces, SafePointerVector< T >::push_back(), and INode::registerChild().
Referenced by addLayerWithTopRoughness().
|
private |
Handles correct registration of layer thicknesses (not needed for top and bottom layer)
Definition at line 143 of file MultiLayer.cpp.
References m_layers, and numberOfLayers().
Referenced by addAndRegisterLayer().
|
private |
Checks index of layer w.r.t. vector length.
Definition at line 150 of file MultiLayer.cpp.
References m_layers, and SafePointerVector< T >::size().
Referenced by layer().
|
private |
Checks index of interface w.r.t. vector length.
Definition at line 157 of file MultiLayer.cpp.
References m_interfaces, and SafePointerVector< T >::size().
Referenced by layerInterface().
|
inlinevirtualinherited |
Returns nullptr, unless overwritten to return a specific material.
Reimplemented in Particle, and Layer.
Definition at line 37 of file ISample.h.
Referenced by ISample::containedMaterials(), FormFactorCrystal::setAmbientMaterial(), FormFactorBAPol::setAmbientMaterial(), FormFactorDecoratorMaterial::setAmbientMaterial(), FormFactorDWBA::setAmbientMaterial(), FormFactorDWBAPol::setAmbientMaterial(), IFormFactorDecorator::setAmbientMaterial(), FormFactorCoreShell::setAmbientMaterial(), FormFactorWeighted::setAmbientMaterial(), and FormFactorDecoratorMaterial::setMaterial().
|
inherited |
Returns set of unique materials contained in this ISample.
Definition at line 23 of file ISample.cpp.
References INode::getChildren(), and ISample::material().
Referenced by MultiLayerUtils::ContainsCompatibleMaterials(), anonymous_namespace{ProcessedSample.cpp}::ContainsMagneticMaterial(), and SampleToPython::initLabels().
|
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(), addAndRegisterInterface(), 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 SpecularSimulation::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(), 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(), 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(), SpecularSimulation::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(), SpecularSimulation::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(), 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 |
stack of layers [nlayers]
Definition at line 102 of file MultiLayer.h.
Referenced by addAndRegisterLayer(), addLayerWithTopRoughness(), check_layer_index(), clone(), getChildren(), handleLayerThicknessRegistration(), layer(), and numberOfLayers().
|
private |
stack of layer interfaces [nlayers-1]
Definition at line 104 of file MultiLayer.h.
Referenced by addAndRegisterInterface(), check_interface_index(), clone(), getChildren(), and layerInterface().
|
private |
cross correlation length (in z direction) between different layers
Definition at line 106 of file MultiLayer.h.
Referenced by crossCorrLength(), MultiLayer(), and setCrossCorrLength().
|
private |
external magnetic field (in A/m)
Definition at line 108 of file MultiLayer.h.
Referenced by externalField(), MultiLayer(), and setExternalField().
|
private |
Definition at line 110 of file MultiLayer.h.
Referenced by roughnessModel(), and setRoughnessModel().
|
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().