Particles in BornAgain

Available form factors

There are more than 20 particle form factors available in BornAgain GUI.

Detailed description of each form factor is available in BornAgain User Manual.

Local coordinate system

While placing particles in layers it is important to know the reference point of the particle and how the coordinate system of the surrounding layer is defined. The local coordinate system for the box is shown below.

Local coordinate system is attached to each particle.

Particle positioning

Particle position is a position of the local origin in the parent coordinate system.

The plot below shows a multi-layer with 3 layers: a semi-infinite ambient layer, a middle layer with a finite thickness and a semi-infinite substrate layer. For each of these 3 layers the $z$-axis is pointing up. For the ambient layer, the $z=0.0$ coordinate corresponds to the interface between ambient and a middle layer. To place a particle in the air layer, normally positive values $z>=0.0$ should be used. For any other layer $z=0.0$ corresponds to the top interface. To place a particle in one of such layers, normally negative values $z<=0.0$ should be used.

Particle coordinates:

  • Particle A is flying in the air at 10 nm distance: $z_A = 10$ nm.
  • Particle B is in the ambient layer, sitting right on the interface: $z_B = 0$
  • Particle C is in the middle layer, touching the top interface: $z_C = -H$, where $H$ is a particle height. For sphere $H=2R$, i. e. diameter.
  • Particle D is in the middle layer, right in the center $z=_D -\frac{d}{2} - \frac{H}{2}$, where $d$ is the thickness of the middle layer.
  • Particle E is buried in the middle layer, touching the bottom interface: $z_E=-d$.
  • Particle F is buried in the substrate, touching the top interface: $z_F = -H$, where $H$ is a particle height.
  • Particle G is buried in the substrate, the particle's reference point is at a depth of 20nm: $z_G=-20$ nm.

See also BornAgain documentation on particle positioning.

3D Viewer

To check whether particle positions are correct, one can use the 3D Viewer widget. Click on the 3D Viewer button on the top panel.

Note: 3D Viewer will display the active part of the sample. This means, that you should click on that part of the sample (particle layout, particle, layer, multilayer) which you want to see in 3D.

Exercise 1: particle positioning

Open the saved project from GUI Overview session.

Since we did not set any interference function, we need to set the particle surface density to get a reasonable 3D view. Click on the Particle layout and set the TotalParticleDensity on the right panel to 0.0003. This is the number of particles per nm$^2$.

Hint: start the 3D Viewer and click on the multilayer to make it active. This will show you the whole sample in 3D.

Exercise tasks

  1. Check the particle position in the air layer. Where are the particles?
  2. Shift the particles to be 10 nm above the air layer bottom. Compare simulation results with previous simulation.
  3. Create an intermediate layer with parameters:
    • Material: $\delta = 2\times 10^{-6}$, $\beta = 1.3\times 10^{-8}$
    • Thickness = 50 nm
  4. Attach particle layout to this layer. Check the particle position. Where are the particles now?
  5. Vary particle positions in the intermediate layer: place particles on the bottom, in the middle, on the top of the layer.

If got stucked, see solutions

Rotation of particles

BornAgain support following kinds of rotations:

Rotation around a single axis

Euler rotation

$\alpha$, $\beta$ and $\gamma$ are the Euler angles describing a rotation composed by three elemental rotations. The object is first rotated along the $z$ axis by $\alpha$. The following rotation is along the transformed $x$ axis (i.e. $X$ axis) by $\beta$, while the last rotation is along the transformed $z$ axis (i.e. $Z$ axis) by $\gamma$.

Warning: rotation may shift particles along $Z$ axis. Be sure to adjust the particle position after the rotation.

See also BornAgain documentation on particle rotation.

Exercise 2: particle rotation

Use the sample from previos exercise. Particles should be placed on the bottom of the intermediate polymer layer.

  1. Rotate particles around X axis by 45 degree. Does the particle position need to be adjusted? Set the correct value for the particle position.
  2. Repeat the same for Y and Z axes.
  3. Advanced: Create Euler rotation which turns the particle upside down and rotates it by 30 degree around Z axis. How to represent the same transformation with the set of consequent simple rotations? Adjust the particle position if needed.

If got stucked, see solutions

Particles with size distribution

BornAgain supports following distributions

Cosine distribution

Probability density function (PDF) of the Cosine distribution is

$$f(x) = 1 + \frac{1}{2\pi\sigma}\cdot\cos\frac{x-\mu}{\sigma}$$

for $\mu - \pi\sigma \leq x \leq \mu + \pi\sigma$ and zero otherwise.

On the figure above, Mean$=\mu$, Sigma$=\sigma$, Number of samples is a number of sampling points and Sigma factor defines the range where samples are taken.

Gate distribution

Distribution Gate is described with the following PDF:

$$f(x) = \begin{cases} 0, \text{ if } x \notin [X_{min}, X_{max}] \\ 1, \text{ if } x \in [X_{min}, X_{max}]\end{cases}$$

In the figure above Min$=X_{min}$, Max$X_{max}=$ and Number of samples is a number of sampling points.

Gaussian distribution

PDF of the Gaussian distribution is

$$f(x) = \frac{1}{\sqrt{2\pi}\sigma}\cdot e^{-\frac{(x-\mu)^2}{2\sigma^2}}$$

where $\mu$ is the mean value and $\sigma$ describes the width of the distribution: FWHM$=2\sqrt{2\log 2}\sigma$.

In the figure above Mean$=\mu$, StdDev$=\sigma$, Number of samples is a number of sampling points and Sigma factor defines the range where samples are taken.

Log-Normal distribution

PDF of the Log-normal distribution is

$$f(x) = \frac{1}{x\sqrt{2\pi}\sigma}\cdot e^{-\frac{(\log x-\log\mu)^2}{2\sigma^2}}$$

where $\mu$ is the median value and $\sigma$ describes the width of the distribution.

In the figure above Median$=\mu$, ScaleParameter$=\sigma$, Number of samples is a number of sampling points and Sigma factor defines the range where samples are taken.

Lorentz distribution

PDF of the Lorentz distribution is

$$f(x) =\frac{\gamma}{\pi\left(\gamma^2 + (x - \mu)^2\right)}$$

where $\mu$ is the mean value and $\gamma$ is the scale parameter which specifies the half-width at half-maximum (HWHM).

In the figure above Mean$=\mu$, HWHM$=\gamma$, Number of samples is a number of sampling points and Sigma factor defines the range where samples are taken.

Trapezoid distribution

PDF of the Trapezoidal distribution is

$$f(x) = \begin{cases} 0, \text{ for } x < \mu - \frac{m}{2} - l \\ \frac{h}{l}\cdot\left(x - \mu + \frac{m}{2} + l\right), \text{ for } \mu-\frac{m}{2}-l \leq x < \mu-\frac{m}{2}\\ h, \text{ for } \mu-\frac{m}{2} \leq x < \mu + \frac{m}{2} \\ \frac{h}{r}\cdot\left(x - \mu - \frac{m}{2}\right), \text{ for } \mu+\frac{m}{2} \leq x < \mu+\frac{m}{2} + r \end{cases}$$

In the figure above Center$=\mu$, LeftWidth$=l$, MiddleWidth$=m$, RightWidth$=r$ and Number of samples is a number of sampling points.

Create particles with size distribution

To create size distribution for the particles, drag and drop the Distributed particle from the left panel to the sample design area. Connect it to particle layout and to the particle as shown above.

Parameters of supported distributions are described above. Parameter Limits sets the constraints for the distributed parameter. For example, in the figure above constraint Positive forces the radius and height of cylindrical particle be greater than zero.

Field Distributed parameter allows for choice of the parameter to distribute. For cylinder it can be radius or height. Field Linked parameter can be used to link another parameter to the distributed one if needed.

Core-shell particles

Core-shell particle accounts for the particles consisting of a core and a shell made of the different materials. The form factor $F_{cs}$ is calculated as follows

$$F_{cs} = \beta_c F_c + \Delta\beta F_s$$

where $\beta$ is the scattering length density (SLD) of the material.

To create a core-shell particle in BornAgain, drag and drop the Core shell particle to the sample design area and attach it to the particle layout. Choose form factors for core and shell and attach them to the corresponding inputs of the core-shell particle.

Note: It is very important to set up properly size of the core and shell (shell must be larger!) to avoid unphysical constructions. It is also very important to set position of the core with respect to shell. Position offset field can be used for that. In the figure above core is positioned at $(0, 0, 0)$.

To make spheres concentric, one should set the core position to $(0,0,R_{shell} - R_{core})$, where $R$ stands for radius.

Particle composition

Particle composition accounts for a complex shapes consisting of various form factors and materials. In BornAgain form factor of the particle composition is calculated as a sum of the contributing form factors:

$$F = \sum_i\beta_i F_i$$

To create a particle composition in BornAgain GUI, drag and drop the Particle Composition to the sample design area. Choose the contributing particles, set their sizes, materials and positions in a local coordinate system and connect them to the particle composition.

You can apply all the transformations to the whole particle composition like to a single particle.

See also BornAgain documentation on particle composition.


In [ ]: