28 CylindersInDWBABuilder::CylindersInDWBABuilder()
 
   29     : m_height(5 * 
Units::nanometer), m_radius(5 * 
Units::nanometer)
 
   33 MultiLayer* CylindersInDWBABuilder::buildSample()
 const 
   35     Layer vacuum_layer(refMat::Vacuum);
 
   36     Layer substrate_layer(refMat::Substrate);
 
   40     Particle particle(refMat::Particle, ff_cylinder);
 
   43     vacuum_layer.addLayout(particle_layout);
 
   47     multi_layer->
addLayer(substrate_layer);
 
   54 CylindersInBABuilder::CylindersInBABuilder()
 
   55     : m_height(5 * 
Units::nanometer), m_radius(5 * 
Units::nanometer)
 
   57     registerParameter(
"height", &m_height);
 
   58     registerParameter(
"radius", &m_radius);
 
   61 MultiLayer* CylindersInBABuilder::buildSample()
 const 
   63     Layer vacuum_layer(refMat::Vacuum);
 
   66     Particle cylinder(refMat::Particle, ff_cylinder);
 
   70     vacuum_layer.addLayout(particle_layout);
 
   80 LargeCylindersInDWBABuilder::LargeCylindersInDWBABuilder()
 
   81     : m_height(1000 * 
Units::nanometer), m_radius(500 * 
Units::nanometer)
 
   85 MultiLayer* LargeCylindersInDWBABuilder::buildSample()
 const 
   87     Layer vacuum_layer(refMat::Vacuum);
 
   88     Layer substrate_layer(refMat::Substrate);
 
   92     Particle particle(refMat::Particle, ff_cylinder);
 
   95     vacuum_layer.addLayout(particle_layout);
 
   99     multi_layer->
addLayer(substrate_layer);
 
  106 RotatedCylindersBuilder::RotatedCylindersBuilder()
 
  107     : m_height(5 * 
Units::nanometer), m_radius(5 * 
Units::nanometer)
 
  111 MultiLayer* RotatedCylindersBuilder::buildSample()
 const 
  115     Particle particle(refMat::Particle, ff_cylinder);
 
  119     Layer vacuum_layer(refMat::Vacuum);
 
  120     Layer substrate_layer(refMat::Substrate);
 
  121     substrate_layer.addLayout(particle_layout);
 
  124     multi_layer->
addLayer(vacuum_layer);
 
  125     multi_layer->
addLayer(substrate_layer);
 
Defines classes of CylindersBuilder family.
 
Defines class LayerInterface.
 
Defines class MultiLayer.
 
Defines class ParticleLayout.
 
Defines materials in namespace refMat.
 
Defines some unit conversion factors and other constants in namespace Units.
 
A layer, with thickness (in nanometer) and material.
 
Our sample model: a stack of layers one below the other.
 
void addLayer(const Layer &layer)
Adds object to multilayer.
 
Decorator class that adds particles to ISample objects.
 
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.
 
A rotation about the y axis.
 
Constants and functions for physical unit conversions.