15 #ifndef BORNAGAIN_CORE_PARAMETRIZATION_INODEVISITOR_H
16 #define BORNAGAIN_CORE_PARAMETRIZATION_INODEVISITOR_H
155 virtual void visit(
const Beam*) {}
158 virtual void visit(
const Crystal*) {}
237 virtual void visit(
const ILayout*) {}
238 virtual void visit(
const INode*) {}
254 virtual void visit(
const ISample*) {}
256 virtual void visit(
const Layer*) {}
262 virtual void visit(
const Particle*) {}
280 int depth()
const {
return m_depth; }
Beam defined by wavelength, direction and intensity.
Class representing a constant background signal.
Convolutes the intensity in 1 or 2 dimensions with a resolution function.
A crystal structure with a ParticleComposition as a basis.
Uniform distribution function with half width hwhm.
Gaussian distribution with standard deviation std_dev.
Lorentz distribution with half width hwhm.
Trapezoidal distribution.
One-dimensional Cauchy decay function in reciprocal space; corresponds to exp(-|x|/decay_length) in r...
One-dimensional Gauss decay function in reciprocal space; corresponds to exp[-x^2/(2*decay_length^2)]...
One-dimensional triangle decay function in reciprocal space; corresponds to 1-|x|/decay_length if |x|...
One-dimensional pseudo-Voigt decay function in reciprocal space; corresponds to eta*Gauss + (1-eta)*C...
Two-dimensional Cauchy decay function in reciprocal space; corresponds to exp(-r) in real space,...
Two-dimensional Gauss decay function in reciprocal space; corresponds to exp(-r^2/2) in real space,...
Two-dimensional pseudo-Voigt decay function in reciprocal space; corresponds to eta*Gauss + (1-eta)*C...
Exponential IFTDistribution1D exp(-|omega*x|); its Fourier transform evaluate(q) is a Cauchy-Lorentzi...
IFTDistribution1D consisting of one cosine wave [1+cos(pi*x/omega) if |x|<omega, and 0 otherwise]; it...
Square gate IFTDistribution1D; its Fourier transform evaluate(q) is a sinc function starting at evalu...
Gaussian IFTDistribution1D; its Fourier transform evaluate(q) is a Gaussian starting at evaluate(0)=1...
Triangle IFTDistribution1D [1-|x|/omega if |x|<omega, and 0 otherwise]; its Fourier transform evaluat...
IFTDistribution1D that provides a Fourier transform evaluate(q) in form of a pseudo-Voigt decay funct...
Two-dimensional Cauchy distribution in Fourier space; corresponds to a normalized exp(-r) in real spa...
Two-dimensional cone distribution in Fourier space; corresponds to 1-r if r<1 (and 0 otherwise) in re...
Two-dimensional gate distribution in Fourier space; corresponds to normalized constant if r<1 (and 0 ...
Two-dimensional Gauss distribution in Fourier space; corresponds to normalized exp(-r^2/2) in real sp...
Two-dimensional Voigt distribution in Fourier space; corresponds to eta*Gauss + (1-eta)*Cauchy.
Main class to run a Grazing-Incidence Small-Angle Scattering simulation.
Interface for a generic particle.
An ordered assembly of particles.
Pure virtual base class of interference functions.
Pure virtual interface class to equip a sample layer with scattering properties.
Visitor interface to visit ISample objects.
void setDepth(int depth)
Sets depth of the visitor in the composite hierarchy.
int depth() const
Returns depth of the visitor in the composite hierarchy.
Base class for tree-like structures containing parameterized objects.
Pure virtual base class for Particle, ParticleComposition, ParticleCoreShell, MesoCrystal.
Pure virtual interface class that defines the peak shape of a Bragg peak.
Pure virtual interface for rotations.
Pure virtual base class for sample components and properties related to scattering.
The identity rotation, which leaves everything in place.
Assembles beam, detector and their relative positions with respect to the sample.
Interference function of a 1D lattice.
Interference function of a 2D lattice.
Interference function of a 2D paracrystal.
Interference function of a 2D superlattice with a configurable interference function for each lattice...
Interference function of a 3D lattice.
Interference function of a finite 2D lattice.
Interference function of a finite 3D lattice.
Percus-Yevick hard disk interference function.
Default interference function (i.e.
Interference function of radial paracrystal.
Interference function for two particles at a mean distance and given standard deviation from each oth...
A spherical detector used for validation with IsGISAXS results.
Interface between two layers, possibly with roughness.
A roughness of interface between two layers.
A layer, with thickness (in nanometer) and material.
A particle with an internal structure of smaller particles.
Our sample model: a stack of layers one below the other.
Main class to run an off-specular simulation.
A composition of particles at fixed positions.
A particle with a core/shell geometry.
A particle type that is a parametric distribution of IParticle's.
Decorator class that adds particles to ISample objects.
A particle with a form factor and refractive index.
Class representing Poisson noise on top of the scattered intensity.
A flat rectangular detector with axes and resolution function.
Simple gaussian two-dimensional resolution function.
A sequence of rotations about the z-x'-z'' axes.
A rotation about the x axis.
A rotation about the y axis.
A rotation about the z axis.
1D detector for specular simulations.
Main class to run a specular simulation.
A spherical detector with axes and resolution function.