32 double height1 = radius1;
38 double height2(radius2);
59 multi_layer->
addLayer(substrate_layer);
69 double height1 = radius1;
75 double height2(radius2);
103 multi_layer->
addLayer(vacuum_layer);
104 multi_layer->
addLayer(substrate_layer);
114 double height1 = radius1;
120 double height2(radius2);
141 multi_layer->
addLayer(vacuum_layer);
142 multi_layer->
addLayer(substrate_layer);
155 interference_function.
setKappa(4.02698);
163 pattern_radius.
add(
"Particle").
add(
"Cylinder").
add(
"Radius");
166 pattern_height.
add(
"Particle").
add(
"Cylinder").
add(
"Height");
176 multi_layer->
addLayer(vacuum_layer);
Defines classes representing one-dimensional distributions.
Defines class InterferenceFunctionRadialParaCrystal.
Defines class MultiLayer.
Defines class ParameterPattern.
Defines class ParticleDistribution.
Defines class ParticleLayout.
Defines materials in namespace refMat.
Defines various sample builder classes to test DA, LMA, SSCA approximations.
Defines some unit conversion factors and other constants in namespace Units.
MultiLayer * buildSample() const
Gaussian distribution with standard deviation std_dev.
Gaussian IFTDistribution1D; its Fourier transform evaluate(q) is a Gaussian starting at evaluate(0)=1...
Interference function of radial paracrystal.
void setKappa(double kappa)
Sets size spacing coupling parameter of the Size Spacing Correlation Approximation.
void setProbabilityDistribution(const IFTDistribution1D &pdf)
Sets one-dimensional probability distribution.
A layer in a MultiLayer sample.
void addLayout(const ParticleLayout &decoration)
Our sample model: a stack of layers one below the other.
void addLayer(const Layer &layer)
Adds layer with default (zero) roughness.
A parametric distribution function, for use with any model parameter.
ParameterDistribution & linkParameter(std::string par_name)
Helper class for constructing parameter patterns.
std::string toStdString() const
ParameterPattern & add(std::string object_type)
A particle type that is a parametric distribution of IParticle's.
Decorator class that adds particles to ISampleNode objects.
void setInterferenceFunction(const IInterferenceFunction &interference_function)
Adds interference functions.
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.
A particle with a form factor and refractive index.
MultiLayer * buildSample() const
MultiLayer * buildSample() const
MultiLayer * buildSample() const
static constexpr double nm
static constexpr double gauss
static const Material Vacuum
static const Material Particle
static const Material Substrate