|
BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Decorator class that adds particles to ISample objects. More...
Inheritance diagram for ParticleLayout:Public Member Functions | |
| ParticleLayout (const IAbstractParticle &particle, double abundance=-1.0) | |
| ParticleLayout * | clone () const final override |
| Returns a clone of this ISample object. | |
| void | accept (INodeVisitor *visitor) const final override |
| Calls the INodeVisitor's visit method. | |
| void | addParticle (const IAbstractParticle &particle, double abundance=-1.0, const kvector_t position={}, const IRotation &rotation=IdentityRotation()) |
| Adds particle to the layout with abundance, position and the rotation defined. More... | |
| SafePointerVector< IParticle > | particles () const final override |
| Returns information on all particles (type and abundance) and generates new particles if an IAbstractParticle denotes a collection. | |
| const IInterferenceFunction * | interferenceFunction () const final override |
| Returns the interference function. | |
| double | getTotalAbundance () const final override |
| Get total abundance of all particles. | |
| void | setInterferenceFunction (const IInterferenceFunction &interference_function) |
| Adds interference functions. | |
| double | totalParticleSurfaceDensity () const final override |
| Returns surface density of all particles. | |
| void | setTotalParticleSurfaceDensity (double particle_density) final override |
| Sets total particle surface density. More... | |
| std::vector< const INode * > | getChildren () const final override |
| Returns a vector of children (const). | |
Public Member Functions inherited from ILayout | |
| double | weight () const |
| Returns the relative weight of this layout. | |
| void | setWeight (double weight) |
| Sets the relative weight of this layout. | |
Public Member Functions inherited from ISample | |
| ISample (const NodeMeta &meta, const std::vector< double > &PValues) | |
| virtual const Material * | material () const |
| Returns nullptr, unless overwritten to return a specific material. | |
| std::vector< const Material * > | containedMaterials () const |
| Returns set of unique materials contained in this ISample. | |
Public Member Functions inherited from ICloneable | |
| ICloneable (const ICloneable &)=delete | |
| ICloneable (ICloneable &&)=default | |
| virtual void | transferToCPP () |
| Used for Python overriding of clone (see swig/tweaks.py) | |
Public Member Functions inherited from INode | |
| INode (const NodeMeta &meta, const std::vector< double > &PValues) | |
| virtual std::string | treeToString () const |
| Returns multiline string representing tree structure below the node. | |
| void | registerChild (INode *node) |
| virtual void | setParent (const INode *newParent) |
| const INode * | parent () const |
| INode * | parent () |
| int | copyNumber (const INode *node) const |
| Returns copyNumber of child, which takes into account existence of children with same name. | |
| std::string | displayName () const |
| Returns display name, composed from the name of node and it's copy number. | |
| ParameterPool * | createParameterTree () const |
| Creates new parameter pool, with all local parameters and those of its children. | |
Public Member Functions inherited from IParameterized | |
| IParameterized (const std::string &name="") | |
| IParameterized (const IParameterized &other) | |
| IParameterized & | operator= (const IParameterized &other)=delete |
| ParameterPool * | parameterPool () const |
| Returns pointer to the parameter pool. | |
| std::string | parametersToString () const |
| Returns multiline string representing available parameters. | |
| RealParameter & | registerParameter (const std::string &name, double *parpointer) |
| void | registerVector (const std::string &base_name, kvector_t *p_vec, const std::string &units="nm") |
| void | setParameterValue (const std::string &name, double value) |
| void | setVectorValue (const std::string &base_name, kvector_t value) |
| RealParameter * | parameter (const std::string &name) const |
| Returns parameter with given 'name'. | |
| virtual void | onChange () |
| Action to be taken in inherited class when a parameter has changed. | |
| void | removeParameter (const std::string &name) |
| void | removeVector (const std::string &base_name) |
| void | setName (const std::string &name) |
| const std::string & | getName () const |
Additional Inherited Members | |
Static Public Member Functions inherited from IParameterized | |
| static std::string | XComponentName (const std::string &base_name) |
| static std::string | YComponentName (const std::string &base_name) |
| static std::string | ZComponentName (const std::string &base_name) |
Protected Attributes inherited from ILayout | |
| double | m_weight |
Protected Attributes inherited from INode | |
| const size_t | m_NP |
| std::vector< double > | m_P |
Decorator class that adds particles to ISample objects.
Definition at line 29 of file ParticleLayout.h.
| void ParticleLayout::addParticle | ( | const IAbstractParticle & | particle, |
| double | abundance = -1.0, |
||
| const kvector_t | position = {}, |
||
| const IRotation & | rotation = IdentityRotation() |
||
| ) |
Adds particle to the layout with abundance, position and the rotation defined.
| particle | to be added |
| abundance | Particle abundance |
| position | Particle position |
| rotation | Particle rotation |
Definition at line 76 of file ParticleLayout.cpp.
|
finaloverridevirtual |
Sets total particle surface density.
| particle_density | number of particles per square nanometer |
Implements ILayout.
Definition at line 135 of file ParticleLayout.cpp.