32 Layer vacuum_layer(mat_vacuum);
36 Box ff1(2.0, 2.0, 1.0);
37 R3 pos1(0.0, 0.0, 0.0);
42 Box ff2(2.0, 4.0, 1.0);
43 R3 pos2(5.0, 5.0, 0.0);
49 Box ff3(2.0, 6.0, 1.0);
50 R3 pos3(-5.0, -5.0, 0.0);
56 Box ff4(2.0, 8.0, 1.0);
57 R3 pos4(5.0, -5.0, 0.0);
63 Box ff5(2.0, 10.0, 1.0);
64 R3 pos5(-5.0, 5.0, 0.0);
70 Box ff6(2.0, 2.0, 1.0);
71 R3 pos6(0.0, 0.0, 0.0);
77 Box ff7(2.0, 4.0, 1.0);
78 R3 pos7(5.0, 5.0, 0.0);
84 Box ff8(2.0, 6.0, 1.0);
85 R3 pos8(-5.0, -5.0, 0.0);
91 Box ff9(2.0, 8.0, 1.0);
92 R3 pos9(5.0, -5.0, 0.0);
98 Box ff10(2.0, 10.0, 1.0);
99 R3 pos10(-5.0, 5.0, 0.0);
101 Particle p10(mat_particle, ff10, m10);
107 sample->addLayer(vacuum_layer);
Defines class CustomMorphologyBuilder.
Defines class MultiLayer.
Defines class ParticleLayout.
Defines materials in namespace refMat.
Defines IRotation classes.
Defines some unit conversion factors and other constants in namespace Units.
A rectangular prism (parallelepiped).
void setParticlePosition(R3 position)
Sets relative position of the particle's reference point in the coordinate system of parent.
A layer in a MultiLayer sample.
void addLayout(const ParticleLayout &layout)
A wrapper for underlying material implementation.
Our sample model: a stack of layers one below the other.
Decorator class that adds particles to ISampleNode objects.
void addParticle(const IParticle &particle, double abundance=-1.0)
Adds particle to the layout with abundance, position and the rotation defined.
A particle with a form factor and refractive index.
A rotation about the z axis.
MultiLayer * createCustomMorphology()
static constexpr double deg
static const Material Vacuum
static const Material Particle