BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
A regular dodecahedron. More...
Public Member Functions | |
FormFactorDodecahedron (const std::vector< double > P) | |
FormFactorDodecahedron (double edge) | |
void | accept (INodeVisitor *visitor) const final |
Calls the INodeVisitor's visit method. More... | |
void | assert_platonic () const |
Assertions for Platonic solid. More... | |
double | bottomZ (const IRotation &rotation) const final |
Returns the z-coordinate of the lowest point in this shape after a given rotation. More... | |
FormFactorDodecahedron * | clone () const final |
Returns a clone of this ISampleNode object. More... | |
std::vector< const Material * > | containedMaterials () const |
Returns set of unique materials contained in this ISampleNode. More... | |
int | copyNumber (const INode *node) const |
Returns copyNumber of child, which takes into account existence of children with same name. More... | |
ParameterPool * | createParameterTree () const |
Creates new parameter pool, with all local parameters and those of its children. More... | |
IFormFactor * | createSlicedFormFactor (ZLimits limits, const IRotation &rot, kvector_t translation) const |
Creates a (possibly sliced) form factor with the given rotation and translation. More... | |
std::string | displayName () const |
Returns display name, composed from the name of node and it's copy number. More... | |
complex_t | evaluate (const WavevectorInfo &wavevectors) const override |
Returns scattering amplitude for complex wavevectors ki, kf. More... | |
complex_t | evaluate_centered (cvector_t q) const |
complex_t | evaluate_for_q (cvector_t q) const final |
Returns scattering amplitude for complex scattering wavevector q=k_i-k_f. More... | |
Eigen::Matrix2cd | evaluatePol (const WavevectorInfo &wavevectors) const override |
Returns scattering amplitude for matrix interactions. More... | |
virtual std::vector< const INode * > | getChildren () const |
Returns a vector of children. More... | |
double | getEdge () const |
const std::string & | getName () const |
bool | isMagnetic () const |
Returns true if there is any magnetic material in this ISampleNode. More... | |
virtual const Material * | material () const |
Returns nullptr, unless overwritten to return a specific material. More... | |
RealParameter * | parameter (const std::string &name) const |
Returns parameter with given 'name'. More... | |
ParameterPool * | parameterPool () const |
Returns pointer to the parameter pool. More... | |
std::string | parametersToString () const |
Returns multiline string representing available parameters. More... | |
INode * | parent () |
const INode * | parent () const |
std::vector< const INode * > | progeny () const |
Returns a vector of all descendants. More... | |
double | radialExtension () const final |
Returns the (approximate in some cases) radial size of the particle of this form factor's shape. More... | |
void | registerChild (INode *node) |
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 | removeParameter (const std::string &name) |
void | removeVector (const std::string &base_name) |
void | setAmbientMaterial (const Material &) override |
Passes the material in which this particle is embedded. More... | |
void | setName (const std::string &name) |
void | setParameterValue (const std::string &name, double value) |
virtual void | setParent (const INode *newParent) |
virtual void | setSpecularInfo (std::unique_ptr< const ILayerRTCoefficients >, std::unique_ptr< const ILayerRTCoefficients >) |
Sets reflection/transmission info. More... | |
void | setVectorValue (const std::string &base_name, kvector_t value) |
double | topZ (const IRotation &rotation) const final |
Returns the z-coordinate of the lowest point in this shape after a given rotation. More... | |
virtual void | transferToCPP () |
Used for Python overriding of clone (see swig/tweaks.py) More... | |
virtual std::string | treeToString () const |
Returns multiline string representing tree structure below the node. More... | |
double | volume () const final |
Returns the total volume of the particle of this form factor's shape. More... | |
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 | |
bool | canSliceAnalytically (const IRotation &rot) const override |
Default implementation only allows rotations along z-axis. More... | |
virtual Eigen::Matrix2cd | evaluate_for_q_pol (cvector_t q) const |
Returns scattering amplitude for complex scattering wavevector q=k_i-k_f in case of matrix interactions. More... | |
void | onChange () final |
Action to be taken in inherited class when a parameter has changed. More... | |
void | setPolyhedron (const PolyhedralTopology &topology, double z_bottom, const std::vector< kvector_t > &vertices) |
Called by child classes to set faces and other internal variables. More... | |
virtual IFormFactor * | sliceFormFactor (ZLimits limits, const IRotation &rot, kvector_t translation) const |
Actually slices the form factor or throws an exception. More... | |
Static Protected Member Functions | |
static double | BottomZ (const std::vector< kvector_t > &vertices, const IRotation &rotation) |
Calculates the z-coordinate of the lowest vertex after rotation. More... | |
static SlicingEffects | computeSlicingEffects (ZLimits limits, const kvector_t &position, double height) |
Helper method for slicing. More... | |
static IFormFactor * | createTransformedFormFactor (const IFormFactor &formfactor, const IRotation &rot, kvector_t translation) |
static double | TopZ (const std::vector< kvector_t > &vertices, const IRotation &rotation) |
Calculates the z-coordinate of the highest vertex after rotation. More... | |
Protected Attributes | |
const size_t | m_NP |
std::vector< double > | m_P |
std::unique_ptr< IShape3D > | m_shape3D |
IShape3D object, used to retrieve vertices (which may be approximate in the case of round shapes). More... | |
Private Attributes | |
const double & | m_edge |
std::string | m_name |
const INode * | m_parent {nullptr} |
std::unique_ptr< ParameterPool > | m_pool |
parameter pool (kind of pointer-to-implementation) More... | |
std::unique_ptr< Polyhedron > | pimpl |
Static Private Attributes | |
static const PolyhedralTopology | topology |
A regular dodecahedron.
Definition at line 23 of file FormFactorDodecahedron.h.
FormFactorDodecahedron::FormFactorDodecahedron | ( | const std::vector< double > | P | ) |
Definition at line 35 of file FormFactorDodecahedron.cpp.
References INF.
Referenced by clone().
FormFactorDodecahedron::FormFactorDodecahedron | ( | double | edge | ) |
Definition at line 43 of file FormFactorDodecahedron.cpp.
|
inlinefinalvirtual |
Calls the INodeVisitor's visit method.
Implements INode.
Definition at line 29 of file FormFactorDodecahedron.h.
|
inherited |
Assertions for Platonic solid.
Definition at line 77 of file IFormFactorPolyhedron.cpp.
References IFormFactorPolyhedron::pimpl.
Referenced by onChange(), and FormFactorIcosahedron::onChange().
|
finalvirtualinherited |
Returns the z-coordinate of the lowest point in this shape after a given rotation.
Reimplemented from IBornFF.
Definition at line 46 of file IFormFactorPolyhedron.cpp.
References IBornFF::BottomZ(), and IFormFactorPolyhedron::pimpl.
|
staticprotectedinherited |
Calculates the z-coordinate of the lowest vertex after rotation.
Definition at line 90 of file IBornFF.cpp.
References ASSERT, and algo::min_value().
Referenced by IFormFactorPolyhedron::bottomZ(), IFormFactorPrism::bottomZ(), and IBornFF::bottomZ().
|
overrideprotectedvirtualinherited |
Default implementation only allows rotations along z-axis.
Reimplemented from IFormFactor.
Definition at line 54 of file IBornFF.cpp.
References IRotation::zInvariant().
|
inlinefinalvirtual |
Returns a clone of this ISampleNode object.
Implements IBornFF.
Definition at line 28 of file FormFactorDodecahedron.h.
References FormFactorDodecahedron(), and m_edge.
|
staticprotectedinherited |
Helper method for slicing.
Definition at line 66 of file IBornFF.cpp.
References ASSERT, ZLimits::lowerLimit(), OneSidedLimit::m_limitless, OneSidedLimit::m_value, BasicVector3D< T >::setZ(), ZLimits::upperLimit(), and BasicVector3D< T >::z().
Referenced by FormFactorAnisoPyramid::sliceFormFactor(), FormFactorBox::sliceFormFactor(), FormFactorCone::sliceFormFactor(), FormFactorCone6::sliceFormFactor(), FormFactorCuboctahedron::sliceFormFactor(), FormFactorCylinder::sliceFormFactor(), FormFactorEllipsoidalCylinder::sliceFormFactor(), FormFactorFullSphere::sliceFormFactor(), FormFactorFullSpheroid::sliceFormFactor(), FormFactorLongBoxGauss::sliceFormFactor(), FormFactorLongBoxLorentz::sliceFormFactor(), FormFactorPrism3::sliceFormFactor(), FormFactorPrism6::sliceFormFactor(), FormFactorPyramid::sliceFormFactor(), FormFactorTetrahedron::sliceFormFactor(), FormFactorTruncatedSphere::sliceFormFactor(), and FormFactorTruncatedSpheroid::sliceFormFactor().
|
inherited |
Returns set of unique materials contained in this ISampleNode.
Definition at line 26 of file ISampleNode.cpp.
References INode::getChildren(), and ISampleNode::material().
Referenced by MultiLayerUtils::ContainsCompatibleMaterials(), SampleToPython::initLabels(), and ISampleNode::isMagnetic().
|
inherited |
Returns copyNumber of child, which takes into account existence of children with same name.
Definition at line 94 of file INode.cpp.
References INode::getChildren(), IParametricComponent::getName(), and INode::parent().
Referenced by INode::displayName().
|
virtualinherited |
Creates new parameter pool, with all local parameters and those of its children.
Reimplemented from IParametricComponent.
Definition at line 126 of file INode.cpp.
References NodeUtils::nodePath(), INode::parent(), and INode::progeny().
Referenced by ISimulation::runSimulation(), DepthProbeSimulation::validateParametrization(), OffSpecularSimulation::validateParametrization(), and SpecularSimulation::validateParametrization().
|
inherited |
Creates a (possibly sliced) form factor with the given rotation and translation.
Definition at line 58 of file IFormFactor.cpp.
References IFormFactor::canSliceAnalytically(), IFormFactor::createTransformedFormFactor(), IParametricComponent::getName(), and IFormFactor::sliceFormFactor().
|
staticprotectedinherited |
Definition at line 99 of file IFormFactor.cpp.
References IFormFactor::clone(), IRotation::isIdentity(), and swap().
Referenced by IFormFactor::createSlicedFormFactor(), FormFactorAnisoPyramid::sliceFormFactor(), FormFactorBox::sliceFormFactor(), FormFactorCone::sliceFormFactor(), FormFactorCone6::sliceFormFactor(), FormFactorCuboctahedron::sliceFormFactor(), FormFactorCylinder::sliceFormFactor(), FormFactorEllipsoidalCylinder::sliceFormFactor(), FormFactorFullSphere::sliceFormFactor(), FormFactorFullSpheroid::sliceFormFactor(), FormFactorLongBoxGauss::sliceFormFactor(), FormFactorLongBoxLorentz::sliceFormFactor(), FormFactorPrism3::sliceFormFactor(), FormFactorPrism6::sliceFormFactor(), FormFactorPyramid::sliceFormFactor(), FormFactorTetrahedron::sliceFormFactor(), FormFactorTruncatedSphere::sliceFormFactor(), and FormFactorTruncatedSpheroid::sliceFormFactor().
|
inherited |
Returns display name, composed from the name of node and it's copy number.
Definition at line 115 of file INode.cpp.
References INode::copyNumber(), IParametricComponent::getName(), and INode::m_parent.
Referenced by NodeUtils::nodePath().
|
overridevirtualinherited |
Returns scattering amplitude for complex wavevectors ki, kf.
Implements IFormFactor.
Definition at line 30 of file IBornFF.cpp.
References IBornFF::evaluate_for_q(), and WavevectorInfo::getQ().
Definition at line 61 of file IFormFactorPolyhedron.cpp.
References IFormFactorPolyhedron::pimpl.
Returns scattering amplitude for complex scattering wavevector q=k_i-k_f.
This method is public only for convenience of plotting form factors in Python.
Implements IBornFF.
Definition at line 56 of file IFormFactorPolyhedron.cpp.
References IFormFactorPolyhedron::pimpl.
|
protectedvirtualinherited |
Returns scattering amplitude for complex scattering wavevector q=k_i-k_f in case of matrix interactions.
Default implementation calls evaluate_for_q(q) and multiplies with the unit matrix.
Definition at line 61 of file IBornFF.cpp.
References IBornFF::evaluate_for_q().
Referenced by IBornFF::evaluatePol().
|
overridevirtualinherited |
Returns scattering amplitude for matrix interactions.
Reimplemented from IFormFactor.
Definition at line 35 of file IBornFF.cpp.
References IBornFF::evaluate_for_q_pol(), and WavevectorInfo::getQ().
|
virtualinherited |
Returns a vector of children.
Reimplemented in SampleProvider, IParticle, ParticleLayout, InterferenceFunctionFinite3DLattice, InterferenceFunctionFinite2DLattice, InterferenceFunction3DLattice, InterferenceFunction2DSuperLattice, InterferenceFunction2DParaCrystal, InterferenceFunction2DLattice, InterferenceFunction1DLattice, IDetector, Beam, ParticleDistribution, ParticleCoreShell, ParticleComposition, Particle, MesoCrystal, Crystal, MultiLayer, Layer, InterferenceFunctionRadialParaCrystal, LayerInterface, ConvolutionDetectorResolution, Instrument, and ISimulation.
Definition at line 63 of file INode.cpp.
Referenced by node_progeny::AllDescendantsOfType(), node_progeny::ChildNodesOfType(), ISampleNode::containedMaterials(), INode::copyNumber(), INode::progeny(), and NodeUtils::progenyPlus().
|
inline |
Definition at line 31 of file FormFactorDodecahedron.h.
References m_edge.
Referenced by GUIDomainSampleVisitor::visit().
|
inlineinherited |
Definition at line 70 of file IParametricComponent.h.
References IParametricComponent::m_name.
Referenced by Beam::Beam(), ConvolutionDetectorResolution::ConvolutionDetectorResolution(), IDetector::IDetector(), Instrument::Instrument(), IParametricComponent::IParametricComponent(), SampleBuilderNode::SampleBuilderNode(), Layer::clone(), INode::copyNumber(), IParametricComponent::createParameterTree(), IFormFactor::createSlicedFormFactor(), SampleToPython::defineInterferenceFunctions(), INode::displayName(), Beam::operator=(), SampleBuilderNode::operator=(), GUIObjectBuilder::populateInstrumentModel(), PyImportAssistant::populateModels(), GUIDomainSampleVisitor::populateSampleModel(), IParametricComponent::registerParameter(), IFormFactor::sliceFormFactor(), and GUIDomainSampleVisitor::visit().
|
inherited |
Returns true if there is any magnetic material in this ISampleNode.
Definition at line 40 of file ISampleNode.cpp.
References ISampleNode::containedMaterials().
Referenced by ProcessedSample::initLayouts().
|
inlinevirtualinherited |
Returns nullptr, unless overwritten to return a specific material.
Reimplemented in Particle, and Layer.
Definition at line 37 of file ISampleNode.h.
Referenced by ISampleNode::containedMaterials(), FormFactorCoreShell::setAmbientMaterial(), FormFactorCrystal::setAmbientMaterial(), FormFactorWeighted::setAmbientMaterial(), FormFactorDecoratorMaterial::setAmbientMaterial(), IFormFactorDecorator::setAmbientMaterial(), and FormFactorDecoratorMaterial::setMaterial().
|
finalprotectedvirtual |
Action to be taken in inherited class when a parameter has changed.
Reimplemented from IParametricComponent.
Definition at line 48 of file FormFactorDodecahedron.cpp.
References IFormFactorPolyhedron::assert_platonic(), m_edge, IFormFactorPolyhedron::setPolyhedron(), and topology.
|
inherited |
Returns parameter with given 'name'.
Definition at line 86 of file IParametricComponent.cpp.
References IParametricComponent::m_pool, and RealSpace::Particles::name().
Referenced by DepthProbeSimulation::initialize(), SpecularSimulation::initialize(), Lattice3D::initialize(), IParticle::registerAbundance(), ParticleLayout::registerParticleDensity(), IParticle::registerPosition(), Layer::registerThickness(), Lattice2D::setRotationEnabled(), and DistributionLogNormal::setUnits().
|
inlineinherited |
Returns pointer to the parameter pool.
Definition at line 39 of file IParametricComponent.h.
References IParametricComponent::m_pool.
Referenced by INode::INode(), IParametricComponent::IParametricComponent(), pyfmt2::argumentList(), SampleBuilderNode::borrow_builder_parameters(), SampleBuilderNode::reset(), and IDistribution1D::setUnits().
|
inherited |
Returns multiline string representing available parameters.
Definition at line 43 of file IParametricComponent.cpp.
References IParametricComponent::createParameterTree().
|
inherited |
Definition at line 89 of file INode.cpp.
References INode::m_parent.
|
inherited |
Definition at line 84 of file INode.cpp.
References INode::m_parent.
Referenced by INode::copyNumber(), INode::createParameterTree(), ParticleDistribution::generateParticles(), NodeUtils::nodePath(), Lattice2D::onChange(), SampleProvider::setBuilder(), SampleProvider::setParent(), and SampleProvider::setSample().
|
inherited |
Returns a vector of all descendants.
Definition at line 68 of file INode.cpp.
References INode::getChildren().
Referenced by INode::createParameterTree(), and ParticleDistribution::generateParticles().
|
finalvirtualinherited |
Returns the (approximate in some cases) radial size of the particle of this form factor's shape.
This is used for SSCA calculations
Implements IFormFactor.
Definition at line 70 of file IFormFactorPolyhedron.cpp.
References IFormFactorPolyhedron::pimpl.
|
inherited |
Definition at line 57 of file INode.cpp.
References ASSERT, and INode::setParent().
Referenced by Beam::Beam(), Crystal::Crystal(), IDetector::IDetector(), Instrument::Instrument(), InterferenceFunction2DLattice::InterferenceFunction2DLattice(), InterferenceFunction2DParaCrystal::InterferenceFunction2DParaCrystal(), InterferenceFunction2DSuperLattice::InterferenceFunction2DSuperLattice(), InterferenceFunctionFinite2DLattice::InterferenceFunctionFinite2DLattice(), Particle::Particle(), ParticleDistribution::ParticleDistribution(), ParticleLayout::addAndRegisterAbstractParticle(), ParticleCoreShell::addAndRegisterCore(), MultiLayer::addAndRegisterInterface(), MultiLayer::addAndRegisterLayer(), ParticleCoreShell::addAndRegisterShell(), Layer::addLayout(), ParticleComposition::addParticlePointer(), ISimulation::initialize(), MesoCrystal::initialize(), Beam::operator=(), Instrument::operator=(), IParticle::rotate(), ParticleLayout::setAndRegisterInterferenceFunction(), ISimulation::setBackground(), InterferenceFunction1DLattice::setDecayFunction(), InterferenceFunction2DLattice::setDecayFunction(), Instrument::setDetector(), IDetector::setDetectorResolution(), Beam::setFootprintFactor(), Particle::setFormFactor(), InterferenceFunctionFinite3DLattice::setLattice(), InterferenceFunctionRadialParaCrystal::setProbabilityDistribution(), InterferenceFunction2DParaCrystal::setProbabilityDistributions(), ConvolutionDetectorResolution::setResolutionFunction(), IParticle::setRotation(), LayerInterface::setRoughness(), and InterferenceFunction2DSuperLattice::setSubstructureIFF().
|
inherited |
Definition at line 51 of file IParametricComponent.cpp.
References IParametricComponent::getName(), IParametricComponent::m_pool, RealSpace::Particles::name(), and IParametricComponent::onChange().
Referenced by BasicLattice2D::BasicLattice2D(), Beam::Beam(), CylindersInBABuilder::CylindersInBABuilder(), DetectionProperties::DetectionProperties(), HexagonalLattice2D::HexagonalLattice2D(), IInterferenceFunction::IInterferenceFunction(), INode::INode(), InterferenceFunction1DLattice::InterferenceFunction1DLattice(), InterferenceFunction2DParaCrystal::InterferenceFunction2DParaCrystal(), InterferenceFunctionHardDisk::InterferenceFunctionHardDisk(), InterferenceFunctionRadialParaCrystal::InterferenceFunctionRadialParaCrystal(), InterferenceFunctionTwin::InterferenceFunctionTwin(), Lattice2D::Lattice2D(), LayerRoughness::LayerRoughness(), MultiLayer::MultiLayer(), ParticleDistribution::ParticleDistribution(), PlainMultiLayerBySLDBuilder::PlainMultiLayerBySLDBuilder(), ResolutionFunction2DGaussian::ResolutionFunction2DGaussian(), ResonatorBuilder::ResonatorBuilder(), SquareLattice2D::SquareLattice2D(), TriangularRippleBuilder::TriangularRippleBuilder(), IParticle::registerAbundance(), ParticleLayout::registerParticleDensity(), Layer::registerThickness(), IParametricComponent::registerVector(), ParticleLayout::registerWeight(), and Lattice2D::setRotationEnabled().
|
inherited |
Definition at line 57 of file IParametricComponent.cpp.
References ModelView::Utils::base_name(), IParametricComponent::registerParameter(), RealParameter::setUnit(), IParametricComponent::XComponentName(), IParametricComponent::YComponentName(), and IParametricComponent::ZComponentName().
Referenced by Beam::Beam(), DetectionProperties::DetectionProperties(), InterferenceFunctionTwin::InterferenceFunctionTwin(), MultiLayer::MultiLayer(), Lattice3D::initialize(), and IParticle::registerPosition().
|
inherited |
Definition at line 91 of file IParametricComponent.cpp.
References IParametricComponent::m_pool, and RealSpace::Particles::name().
Referenced by IParticle::registerAbundance(), ParticleLayout::registerParticleDensity(), Layer::registerThickness(), IParametricComponent::removeVector(), and Lattice2D::setRotationEnabled().
|
inherited |
Definition at line 96 of file IParametricComponent.cpp.
References ModelView::Utils::base_name(), IParametricComponent::removeParameter(), IParametricComponent::XComponentName(), IParametricComponent::YComponentName(), and IParametricComponent::ZComponentName().
Referenced by IParticle::registerPosition().
|
inlineoverridevirtualinherited |
Passes the material in which this particle is embedded.
Implements IFormFactor.
|
inlineinherited |
Definition at line 69 of file IParametricComponent.h.
References IParametricComponent::m_name, and RealSpace::Particles::name().
Referenced by BasicLattice2D::BasicLattice2D(), Beam::Beam(), ConvolutionDetectorResolution::ConvolutionDetectorResolution(), Crystal::Crystal(), DetectionProperties::DetectionProperties(), DistributionHandler::DistributionHandler(), FormFactorCoreShell::FormFactorCoreShell(), FormFactorCrystal::FormFactorCrystal(), FormFactorDecoratorMaterial::FormFactorDecoratorMaterial(), FormFactorDecoratorPositionFactor::FormFactorDecoratorPositionFactor(), FormFactorDecoratorRotation::FormFactorDecoratorRotation(), FormFactorWeighted::FormFactorWeighted(), HexagonalLattice2D::HexagonalLattice2D(), IDetector::IDetector(), 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(), Lattice3D::Lattice3D(), Layer::Layer(), LayerInterface::LayerInterface(), LayerRoughness::LayerRoughness(), MultiLayer::MultiLayer(), ParticleCoreShell::ParticleCoreShell(), ParticleDistribution::ParticleDistribution(), ParticleLayout::ParticleLayout(), RectangularDetector::RectangularDetector(), ResolutionFunction2DGaussian::ResolutionFunction2DGaussian(), SampleBuilderNode::SampleBuilderNode(), SphericalDetector::SphericalDetector(), SquareLattice2D::SquareLattice2D(), Layer::clone(), LayersWithAbsorptionBuilder::createSampleByIndex(), Basic2DParaCrystalBuilder::createSampleByIndex(), ParticleInVacuumBuilder::createSampleByIndex(), SimpleMagneticRotationBuilder::createSampleByIndex(), DepthProbeSimulation::initialize(), GISASSimulation::initialize(), OffSpecularSimulation::initialize(), SpecularSimulation::initialize(), SpecularDetector1D::initialize(), MesoCrystal::initialize(), Particle::initialize(), ParticleComposition::initialize(), Beam::operator=(), SampleBuilderNode::operator=(), SampleBuilderNode::reset(), and SampleBuilderNode::setSBN().
|
inherited |
Definition at line 65 of file IParametricComponent.cpp.
References IParametricComponent::createParameterTree(), IParametricComponent::m_pool, RealSpace::Particles::name(), and ParameterPool::setMatchedParametersValue().
Referenced by AsymRippleBuilder::buildSample(), and IParametricComponent::setVectorValue().
|
virtualinherited |
Reimplemented in SampleProvider.
Definition at line 79 of file INode.cpp.
References INode::m_parent.
Referenced by INode::registerChild(), SampleProvider::setBuilder(), and SampleProvider::setParent().
|
protectedinherited |
Called by child classes to set faces and other internal variables.
Definition at line 40 of file IFormFactorPolyhedron.cpp.
References IFormFactorPolyhedron::pimpl.
Referenced by FormFactorAnisoPyramid::onChange(), FormFactorCantellatedCube::onChange(), FormFactorCone6::onChange(), FormFactorCuboctahedron::onChange(), onChange(), FormFactorIcosahedron::onChange(), FormFactorPyramid::onChange(), FormFactorTetrahedron::onChange(), and FormFactorTruncatedCube::onChange().
|
virtualinherited |
|
inherited |
Definition at line 78 of file IParametricComponent.cpp.
References ModelView::Utils::base_name(), IParametricComponent::setParameterValue(), BasicVector3D< T >::x(), IParametricComponent::XComponentName(), BasicVector3D< T >::y(), IParametricComponent::YComponentName(), BasicVector3D< T >::z(), and IParametricComponent::ZComponentName().
|
protectedvirtualinherited |
Actually slices the form factor or throws an exception.
Reimplemented in FormFactorTruncatedSpheroid, FormFactorTruncatedSphere, FormFactorTetrahedron, FormFactorPyramid, FormFactorPrism6, FormFactorPrism3, FormFactorLongBoxLorentz, FormFactorLongBoxGauss, FormFactorFullSpheroid, FormFactorFullSphere, FormFactorEllipsoidalCylinder, FormFactorCylinder, FormFactorCuboctahedron, FormFactorCone6, FormFactorCone, FormFactorBox, and FormFactorAnisoPyramid.
Definition at line 94 of file IFormFactor.cpp.
References IParametricComponent::getName().
Referenced by IFormFactor::createSlicedFormFactor().
|
finalvirtualinherited |
Returns the z-coordinate of the lowest point in this shape after a given rotation.
Reimplemented from IBornFF.
Definition at line 51 of file IFormFactorPolyhedron.cpp.
References IFormFactorPolyhedron::pimpl, and IBornFF::TopZ().
|
staticprotectedinherited |
Calculates the z-coordinate of the highest vertex after rotation.
Definition at line 98 of file IBornFF.cpp.
References ASSERT, and algo::max_value().
Referenced by IFormFactorPolyhedron::topZ(), IFormFactorPrism::topZ(), and IBornFF::topZ().
|
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 52 of file INode.cpp.
References NodeUtils::nodeToString().
|
finalvirtualinherited |
Returns the total volume of the particle of this form factor's shape.
Reimplemented from IFormFactor.
Definition at line 66 of file IFormFactorPolyhedron.cpp.
References IFormFactorPolyhedron::pimpl.
|
staticinherited |
Definition at line 103 of file IParametricComponent.cpp.
References ModelView::Utils::base_name().
Referenced by Lattice3D::initialize(), IParticle::registerPosition(), IParametricComponent::registerVector(), IParametricComponent::removeVector(), IParametricComponent::setVectorValue(), and VectorParameterTranslator::translate().
|
staticinherited |
Definition at line 108 of file IParametricComponent.cpp.
References ModelView::Utils::base_name().
Referenced by IParametricComponent::registerVector(), IParametricComponent::removeVector(), IParametricComponent::setVectorValue(), and VectorParameterTranslator::translate().
|
staticinherited |
Definition at line 113 of file IParametricComponent.cpp.
References ModelView::Utils::base_name().
Referenced by IParametricComponent::registerVector(), IParametricComponent::removeVector(), IParametricComponent::setVectorValue(), and VectorParameterTranslator::translate().
|
private |
Definition at line 38 of file FormFactorDodecahedron.h.
Referenced by clone(), getEdge(), and onChange().
|
privateinherited |
Definition at line 73 of file IParametricComponent.h.
Referenced by IParametricComponent::getName(), and IParametricComponent::setName().
|
protectedinherited |
Definition at line 88 of file INode.h.
Referenced by INode::INode().
|
protectedinherited |
Definition at line 89 of file INode.h.
Referenced by INode::INode(), and IFootprintFactor::setWidthRatio().
|
privateinherited |
Definition at line 83 of file INode.h.
Referenced by INode::displayName(), INode::parent(), and INode::setParent().
|
privateinherited |
parameter pool (kind of pointer-to-implementation)
Definition at line 74 of file IParametricComponent.h.
Referenced by IParametricComponent::createParameterTree(), IParametricComponent::parameter(), IParametricComponent::parameterPool(), IParametricComponent::registerParameter(), IParametricComponent::removeParameter(), and IParametricComponent::setParameterValue().
|
protectedinherited |
IShape3D object, used to retrieve vertices (which may be approximate in the case of round shapes).
For soft particles, this will be a hard mean shape.
Definition at line 77 of file IBornFF.h.
Referenced by IBornFF::bottomZ(), FormFactorCone::onChange(), FormFactorCylinder::onChange(), FormFactorEllipsoidalCylinder::onChange(), FormFactorFullSpheroid::onChange(), FormFactorHemiEllipsoid::onChange(), FormFactorHollowSphere::onChange(), FormFactorLongBoxGauss::onChange(), FormFactorLongBoxLorentz::onChange(), FormFactorTruncatedSphere::onChange(), FormFactorTruncatedSpheroid::onChange(), IProfileRectangularRipple::onChange(), ICosineRipple::onChange(), ISawtoothRipple::onChange(), FormFactorSphereGaussianRadius::onChange(), FormFactorSphereLogNormalRadius::onChange(), and IBornFF::topZ().
|
privateinherited |
Definition at line 52 of file IFormFactorPolyhedron.h.
Referenced by IFormFactorPolyhedron::assert_platonic(), IFormFactorPolyhedron::bottomZ(), IFormFactorPolyhedron::evaluate_centered(), IFormFactorPolyhedron::evaluate_for_q(), IFormFactorPolyhedron::radialExtension(), IFormFactorPolyhedron::setPolyhedron(), IFormFactorPolyhedron::topZ(), and IFormFactorPolyhedron::volume().
|
staticprivate |
Definition at line 37 of file FormFactorDodecahedron.h.
Referenced by onChange().