VITESS Modules to simulate Neutron Scattering in Samples

There are 8 VITESS modules to simulate scattering of neutrons in samples:
sample_elasticisotr can be used to simulate isotropic scattering
sample_sans is meant for samples in SANS measurements, but also allows isotropic scattering.
sample_s_q assuming any function S(Q) is more general.
sample_reflectom is used for reflectometer samples.
sample_powder or sample_nxs can be used for powder samples.
sample_singcryst simulates scattering of a single crystal.
sample_inelast is used for inelastic virtual experiments.
sample_ncrystal is used for virtual experiments leveraging the Ncrystal sample database.

In all cases, parameters of both the sample (position, size, ...) and the scattering have to be given, partly in files. Usually, input is expected in form of tables showing scattering cross-sections or reflectivities as a function of momentum transfer or d-spacing. However, the modules sample_sans, sample_s_q and sample_nxs can do the calculation themselves.

In VITESS 3.n, the parameter input is separated between direct input parameters that are given on the main window ('Parameters for module sample_environment') and others that are stored in a file ('File input parameters'). In VITESS 4.n, all parameters can be given as direct input parameters, but using the file is still possible. If a parameter is given in both ways, the direct input parameter will be used.

While neutron transport is treated classically in VITESS, the scattering process is treated using quantum mechanics.



VITESS Module 'sample_elasticisotr' for isotropic scattering

This module simulates a sample scattering isotropically and elasticly (conforming to a delta-function at energy 0), which can have the following geometries: cuboid, sphere, cylinder or hollow cylinder.

The probability weight P provided by the former module is multiplied by the following factors:

P' = P x (1 - exp(- μs d)) x Attenuation x solid_angle/4π,

where μs = σs ρ is the macroscopic scattering coefficient [cm-1], i.e. the scattering cross section σ multiplied by the particle density ρ. Attenuation means a wavelength and path length (before and after the scattering) dependent exponential factor: exp(-(μabs x pathlength)), where μabs ~ λ. And the usual tabulated value for 1.798 Å has to be converted to 1 Å in order to calculate the input value absorption coeff..
Note that there is currently no beam of unscattered neutrons - even if the scattering probability is low.

The sample structure is considered as homogeneous and absorbent. The geometrical parameters of the sample are: position, horizontal and vertical offset angles with reference to the final coordinate system of the antecedent module, and size of the sample.

Detailed parameter definitions can be read from the tables in section A.

In the output frame X'Y'Z', all neutron coordinates are referring to the moment when the neutrons are just crossing the sample walls after the scattering . Multiple scattering is not yet included. The effect of sample size and geometry on the scattered intensity can be calculated by calibration taking into account that I / I' = V/V' (V - illuminated sample volume).


Main parameters

Parameter
Unit
Descripton Range, Examples Command Option
Parameter File Includes FILE INPUT PARAMETERS. This file can be read or created/modified by the VITESS shell. sampleelastizotr_default.iso -P
colour
[-]
if -1, all neutrons are scattered
if not, only neutrons of this color are scattered
≥ -1 -c
repetition
[-]
If this integer >1, the neutron trajectory is used multiple times to obtain better statistics. ≥ 1 -A

File Input Parameters

Parameter
Unit
Descripton Range, Examples Command Option
angle horiz/vert
final [deg]
horizontal and vertical angles θ and φ defining the mean scattering direction -180° - 180° -E, -F
delta angle
horiz/vert [deg]
Angular widths Δθ and Δφ of the horizontal and vertical scattering direction
If read from file, Δθ and Δφ are regarded as the full ranges, i.e. scattering takes place in the range [θ - ½ Δθ, θ+ ½ Δθ],[φ - ½ Δφ,φ + ½ Δφ]
If given as input parameter (VITESS 4), Δθ and Δφ are regarded as the ranges around the mean angles, i.e. scattering takes place in the range [θ - Δθ, θ + Δθ],[φ - Δφ,φ + Δφ]
0° - 360° or
0° - 180° (param.)
-e, -f
scattering coefficient
[1/cm]
Macroscopic total scattering cross section of the sample
This is: 1/ (density * scattering cross section)
from tables -T
absorption coefficient
[1/cm/ Å]
Macroscopic absorption cross section of the sample per wavelength
This is the attenuation constant per unit wavelength (corresponding to 1 Angstrom)
It is: 1/ (density * absorption_cross_section).
> 0 -m
position X Y Z
[cm]
Position of the sample center (in the frame provided by the former module). e.g. 10.0, 0.0, 0.0 -x, -y, -z
sample geometry Geometry of the sample cylinder, hollow cylinder, sphere or cuboid -G
thickness, height, width
[cm]
Thickness, height and width give dimensions of a cuboid sample. For cylinder, only diameter and height are relevant parameters. For hollow cylinder, the inner diameter is given by the third parameter. For spherical samples, the first value is considered as the diameter. e.g. cylinder: 0.5, 2.0 -t, h, -w
offset angle horizontal, vertical
[deg]
A rotation first around the Z axis and then around the (new)Y axis gives the orientation of the sample. It has no relevance for a spherical sample geometry. e.g. 0.0, 0.0 -o,-O
output frame
X',Y',Z'
[cm]
The position of the output frame origin in the original frame. It represents the translation vector applied to shift the origin of the original (input) frame to the new (output) position. one point on the scattered beam axis -X, -Y, -Z
output angle horizontal, vertical
[deg]
A rotation about the Z axis and then a rotation about the (new)Y axis defines a new orientation for the neutrons written to the output. e.g. forward scattering:
0.0, 0.0
-u,-U

Example for hollow cylinder V sample:


Back to Top


VITESS Module 'sample_sans' for SANS measurement

The module sample_sans describes small angle scattering at monodispers hard particles. The coordinate system of an incoming neutron is defined by the preceding module. The direction of the beamline defines the +x-axis. The y-axis is defined as the horizontal axis to the left and the z-axis as the vertical one upwards. The module SANS sample uses the angles θ and φ. θ is defined as the angle between a vector a vector R defining the flight direction of the neutron and the +x-axis and covers a range of [0..π]. φ is the angle between the projection of the vector r in the yz-plane and the +y-axis and has a range of [0..2π[.

A neutron is written to the output by this module, if the neutron arrives at the sample surface after scattering. The coordinate system has still the same orientation, but the origin has moved to the center of the sample. All sample modules consider the divergence of each neutron without any approximation to obtain the true direction of the flightpath after the scattering process.


Description of the scattering

First of all it is determined if the neutron intersects the sample. If the neutron does not intersect the sample, it is discarded. Otherwise the neutron is scattered along its path through the sample at a certain distance Ls from its entrance, which is determined by a Monte Carlo choice.
The scattering is restricted to an angular range of [θ-Δθ, θ+Δθ] by the input values for θ, Δθ, φ and Δφ. The direction of the trajectory i after the sample is given by (θi, φi). For both, coherent scattering and incoherent scattering, both angles θi and φi are determined by a Monte Carlo choice in these ranges. Therefore, the number of trajectories per solid angle in this range depends on the choice of the range. To get the real flux into this solid angle, this has to be considered by the factors

Ginc = Gcoh = Δφ/π * Δθ

(see below). The differential cross section is given by the square of the scattering amplitude (see e.g. Feigin, Svergun, Structure Analysis by Small-Angle X-Ray and Neutron Scattering (2.2), or P. Fratzl in 'PSI Proceedings 97-01, Cold Neutrons - High Resolution'):

dσ/dΩ = |A (Q)|2 = | ∫ ρ(r) exp(iQ*r) dV)|2

Integration yields for N identical particles of volume Vp and scattering length density ρp:

= N ρp2 Vp2 F(Q)

with the Form Factor F(Q) = |S(Q)|2 = | ∫ exp(iQ*r)dV / Vp|2. Considering also the scattering length density ρs of the solution:

dσ/dΩ = N(ρps)2 Vp2 F(Q) = (ρps)2 fp VpVsmplF(Q)

where fp is the volume fraction of the particles and Vsmpl the sample volume. Now it is possible to calculate the cross section for scattering into a solid angle Ω. For a discrete number of orientations (θii):

σcoh(Ω) = dσ/dΩ (φmaxmin)(θmaxmin) 1/Ni ∑ sin θi

(The meaning of Ni is explained below). Here, we get:

σcoh(Ω) = (ρps)2 fp Vp Vsample F(Q) (φmaxmin)(θmaxmin) 1/Ni ∑ sin θi

= Gcoh 4π (ρps)2 fp Vp Vsmpl F(Q) 1/Ni ∑ sin θi

The probability of scattering neutrons into this solid angle is:

Pcoh = Iout,coh / Iin = σcoh(Ω) / Asmpl

Iin denotes the incoming neutron current, Iout,coh the current of the neutrons scattered into the solid angle Ω. Asmpl is the area of the sample perpendicular to the beam direction. With the preceding equation:

Pcoh = Gcoh 4π (ρps)2 fp Vp Vsmpl/Asmpl F(Q) 1/Ni ∑ sin θi
= Gcoh 4π (ρps)2 fp Vp Li F(Q) ∑ sin θi
=: Gcoh pcoh 1/Ni ∑ sin θi

for the real samples. For the isotropic scatterer the form factor F(Q) and the product (ρps)2 fp Vp are set to 1.

Li denotes the total length of the flightpath of the trajectory under consideration through the sample. Ni is the number of trajectories times the number of repetitions, the sum is over these Ni orientations. (In practice, the influence of the number of trajectories on the probability is already taken into account in the module 'Source', but the number Nr of repetitions must be considered here.) pcoh is the probability that a neutron is scattered at all.
The values for F(Q) can be calculated from size and shape for particles of a simple geometry, e.g. for spheres

Fspheres(Q) =

Apart from spheres, the form factors of ellipsoids, cylinders and parallelepipeds are introduced in the program. The formula are taken from the literature mentioned above. Additionally, isotropicscttering can be chosen for testing normalization purposes. Apart from the spheres, the orientation of the particle relatively to the neutron flight direction is determined by a Monte Carlo choice before the treatment of the scattering event.

In addition to the coherent scattering, the incoherent scattering can be treated. This gives an isotropic distribution of the incoherently scattered neutrons. This scattering probability is given by

pinc = Iout,inc / Iin = N σinc/ Asmpl = Vsmpl/v0 * σinc/Asmpl = Li σinc/v0 = Li μinc

σinc is the incoherent scattering cross section of the unit cell; μinc = σinc/v is the macroscopic incoherent scattering cross section, which can be given as an input in the sample file.

For all trajectories, an attenuation At is considered as follows:

At = exp{-Ln tot + μabs λ/1.798 Å)}

Ln is the total neutron flight path in the sample (surface -> point of scattering -> surface). μtot = σtot/v0 denotes the total macroscopic scattering cross section to be interpreted as wavelength independent, μabs = σabs/v0is the macroscopic absorption cross section (to be provided for λ= 1.798 Å).

For each incoming trajectory, Nr - only coherent scattering - or 2*Nr - with incoherent scattering - trajectories are generated. Summing over these trajectories, the probability for the scattering of a trajectory is then composed by:

P = ∑ (Gcoh pcohsin θi + Ginc pinc sin θi) At / Nr

where sin θi considers the θ-dependence of the isotropic distribution of the scattering orientations.


Module parameters

Parameter
Unit
Description Range, Examples Command Option
sample file The sample file describes the geometry and properties of the sample. -S
max. theta
[deg]
In SANS, neutrons are always scattered in a cone around the positive x-axis
This parameter defines the edge of the cone, i.e. the maximal deviation from the forward direction.
0° - 180° -M
repetitions 'repetitions' specifies the number of data sets (trajectories) generated for each scattered trajectory. A larger number of repetitions enriches the population on the detector and gives therefore better statistics in the spectrum, but the number of density of events in the parameter space is not increases, e.g. the number of different wavelength values remains the same. Therefore, an increase of the number of trajectories created by the source module is favorable. ≥ 1 -A
incoherent scattering yes: neutrons are additionally scattered incoherently
no: incoherent scattering is omitted
yes, no -I

Sample file parameters

Example:
(The order written to the sample file differs from the sequence in the GUI. Anything after the # character is interpreted as a comment.)

  2.0 0.0 0.0        # sample position relative to the coordinate system defined by the preceding module is: 2 cm along the x-axis
  cub                # sample has the geometry of a cuboid
  0.1 1.0 1.0        # thickness, height and width of the cuboid are 0.1 x 1 x 1 cm
  1.0 0.0 0.0        # orientation of the cuboid: thickness is in x-direction, height in z-direction (vector need not be normalised)
  S 500.0            # sperical particles of radius 500 Å
  1.0E10 3.0E10 0.03 # scattering length densities: particles 1010 1/cm², solution 3x1010 1/cm², 3 % vol. frac. of particles
  0.0 0.5 0.05       # Scattering cross sections: incoherent=0, total=0.5 cm-1 and absorption=0.05 cm-1Å-1
  
Parameter
Unit
Description Range, Examples Command Option
x,y,z
[cm]
position of the sample centre relative to the coordinate system defined by the preceding module -x,-y,-z
sample geometry Shape of the sample cylinder, sphere or cuboid -G
thickness or diameter
[cm]
thickness of cuboid, or diameter of sphere, or diameter of cylinder (from file) > 0 -t
thickness or diameter
[cm]
thickness of cuboid, or diameter of sphere, or diameter of cylinder (from input parameter) > 0 -t
height
[cm]
height of cuboid, or height of cylinder ≥ 0 -h
width
[cm]
width of cuboid ≥ 0 -w
x,y,z direction vector components describing the orientation of the sample (it is not necessary to give a normalized vector).
cylinder: the vector is always perpendicular to the top of the cylinder (standard cyl. position (001), height along the z-axis).
cuboid: Standard is the (1,0,0) direction, i.e. the sample has a thickness in x-direction, a width in y-direction and height in z-direction. By giving a different vector the whole sample is rotated in this direction, i.e. the planes separated by 'thickness' remain perpendicular to this vector.
sphere: no values needed.
e.g. (0,0,1) for vertical cylinder -X,-Y,-Z
scattering objects geometry of the particles in solution:
additionally, isotropically scattering objects can be chosen for testing normalization purposes
spheres, polydispersive spheres, ellipsoids, parallelepipeds, cylinders -O
radius 1 or length
radius 2 or width
radius 3 or height
[Å]
sizes of the particles in solution
spheres: the radius of the spheres must be given in radius 1, the other parameters are not needed
polydispersive spheres: the minimal radius of the spheres must be given in radius 1, the maximal radius in radius 2
ellipsoids: the three radii of the ellipsoid must be given
parallelepipeds: length, width and height of the parallelepiped must be given
cylinders: the first two parameters are radius 1 and radius 2 of the cylinder, the third is the length
isotropic: no parameter needed
≥ 0 -U,-V,-W
scat. len. dens. particl.
[1/cm²]
Scattering length density of the particles ≥ 0 -l
scat. len. dens. solution
[1/cm²]
Scattering length density of the solution ≥ 0 -L
vol. fraction of particles Volume fraction of the particles in solution (for 5 %: 0.05) 0 < frac < 1 -f
incoherent scattering
total scattering
absorption
[cm-1, cm-1, cm-1Å-1]
Macroscopic cross sections for incoherent scattering, total scattering and absorption for 1.798 Å
absorption is supposed to increase linearly with wavelength, the other are regarded as wavelength independent.
≥ 0 -i, -T, -m
Back to Top


VITESS Module 'sample_s_q' for Samples of S(Q) Dependent Scattering

The module S(Q)-sample describes the coherent and incoherent elastic scattering of a S(Q)-sample. The coordinate system of an incoming neutron is defined by the preceding module as well as the main flight path of the neutrons. The main flight direction of the neutrons defines the +x-axis. The y-axis is defined as the horizontal axis and the z-axis as the vertical one. The module S(Q)-sample uses the angles θ and φ. θ is defined as the angle between a vector r and the +x-axis and covers the range from [0..π]. φ is the angle between the projection of the vector r in the yz-plane and the +y-axis and has the range of [0..2π[.

A neutron is written to the output by this module, if the neutron arrives at the sample surface after scattering. The coordinate system has still the same orientation, but the origin has moved to the center of the sample. All sample modules consider the divergence of each neutron without any approximation to obtain the true direction of the flightpath after the scattering process.


Description of the scattering:

First of all it is determined if the neutron intersects the sample. If the neutron does not intersect the sample, it is discarded. Otherwise the neutron is scattered along its path through the sample at a certain distance Ls from its entrance, which is determined by a Monte Carlo choice.

The scattering is restricted to an angular range of [θ-Δθ θ+Δθ], [φ-Δφ, φ+Δφ] by the input values for θ, Δθ, φ, Δφ. The direction of the trajectory i after the sample is given by (θi, φi ). For both, coherent scattering and incoherent scattering, both angles θi and φi are determined by a Monte Carlo choice in these ranges. Therefore, the number of trajectories per solid angle in this range depends on the choice of the range. To get the real flux into this solid angle, this has to be considered by the factors

Ginc = Gcoh = Δφ/π * Δθ

(see below). With the equation for the differential cross section (Squires, Thermal Neutron Scattering (5.29)):

dσ/dΩ = N σcoh/(4πS(Q))

it is possible to calculate the cross section for scattering into a solid angle Ω. (N is the number of nuclei in the scattering system.) For a discrete number of orientations (θi, φi ):

σcoh(Ω) = dσ/dΩ (φmaxmin)(θmaxmin) 1/Ni Σ sin θi

(The meaning of Ni is explained below). Here we get:

σcoh(Ω) = N σcoh/(4π) (φmaxmin)(θmaxmin) 1/Ni Σ sin θi
= GcohN σcoh S(Q) 1/Ni Σ sin θi

The probability of scattering neutrons into this solid angle is:

Pcoh = Iout,coh / Iin = σcoh(Ω) /Asmpl

Iindenotes the incoming neutron current, Iout,coh the current of the neutrons scattered into the solid angle Ω. Asmpl is the area of the sample perpendicular to the beam direction. With the preceding equation:

Pcoh = Gcoh 1/Asmpl Vsmpl/v0 σcoh S(Q) 1/NiΣ sin θi
= Gcoh Li μcoh S(Q) 1/Ni Σ sin θi
=: Gcoh pcoh * 1/Ni Σ sin θi

S(Q) denotes the structure factor as a function of the momentum transfer Q, Vsmpl the sample volume, and v0 the volume per nuclei. μcoh = σcoh/v0 denotes the macroscopic coherent scattering cross section and Li the total length of the flightpath of the trajectory under consideration through the sample.
Ni is the number of trajectories times the number of repetitions, the sum is over these Ni orientations. (In practice, the influence of the number of trajectories on the probability is already taken into account in the module 'Source', but the number Nrof repetitions must be considered here.) pcoh is the probability that a neutron is scattered at all.
The values for S(Q) can be taken from the structure factor file or be calculated in the function "CalcStructureFactor" in "sample_s_q.c". As default, a function using the Percus-Yevick hard sphere model with special parameters is called.

In addition to the coherent scattering, the incoherent scattering can be treated. This gives an isotropic distribution of the incoherently scattered neutrons. This scattering probability is given by

pinc = Iout,inc / Iin = N σinc/Asmpl = Vsmpl / v0 σinc / Asmpl = Li σinc / v0 = Liμinc

σinc is the incoherent scattering cross section of the unit cell; μinc = σinc / v is the macroscopic incoherent scattering cross section, which can be given as an input in the sample file.

For all trajectories, an attenuation At is considered as follows:

At = exp{-Lntot + μabs λ/(1.798 Å))}

Ln is the total neutron flight path in the sample (surface -> point of scattering -> surface). μtot = σtot / v0 denotes the total macroscopic scattering cross section to be interpreted as wavelength independent, μabs = σabs / v0 is the macroscopic absorption cross section (to be provided for λ=1.798 Ang).

For each incoming trajectory, Nr- only coherent scattering - or 2 Nr - with incoherent scattering - trajectories are generated. Summing over these trajectories, the probability for the scattering of a trajectory is then composed by:

P = Σ (Gcoh pcoh sin θi + Ginc pinc sin θj) At / Ni

where sin θi considers the θ-dependence of the isotropic distribution of the scattering orientations.


Module parameters:

Parameter
Unit
Descripton Range, Examples Command Option
sample file The sample file describes the geometry, position and scattering properties of the sample. In VITESS 3 it is mandatory. An example is the file 'glass.psq' from the folder 'FILES/sample_files' in the installation directory -S
Theta, dTheta,
Phi, dPhi
[deg]
These parameters describe the solid angle covered by the detector. The direction (θ φ) points to the middle of the covered area, which extends from [θ-Δθ θ+Δθ] and [φ-Δφ, φ+&Deltaφ].
θ is defined as the angle between +x-axis (main flight direction of the neutrons) and the Vector R to be described. φ is the angle between the +y-axis and the projection of R to the yz-plane. x,y and z form a right-handed system.
!!!Note: If you specify any of the parameters Δθ, θ, Δφ or φ, you must specify all of them.!!!
The default is a coverage of 4π.
Example: 20° to 160° scattering to the right in +/-20° vert.:
θ=90°, Δθ=70°
φ=180° Δφ=20°
-D, -d,
-P, -p
repetitions 'repetitions' specifies the number of data sets (trajectories) generated for each scattered trajectory. A larger number of repetitions enriches the population on the detector and gives therefore better statistics in the spectrum. ≥ 1
default: 1
-A
incoherent scattering yes: neutrons are additionally scattered incoherently
no: incoherent scattering is omitted
yes, no -I
modulation freq.
[Hz]
modulation frequency of the sample response to an external modulation, e.g. for TISANE
if freq > 0.0: S(Q,t) = S(Q) 1/2 (1 + cos(2*pi*freq*t + Phase0))
≥ 0
default: 0
-f
phase(t=0)
[deg]
phase of the sample response at t=0 if freq > 0.0: S(Q,t) = S(Q) 1/2 (1 + cos(2*pi*freq*t + Phase0)) default: 0 -o

Sample file parameters

>

Example:
(The order written to the sample file differs from the sequence in the GUI. Anything after the # character is interpreted as a comment.)

  100.0 0.0 0.0        # sample position relative to the coordinate system defined by the preceding module
  cyl                  # sample geometry (cyl, bal or cub)
  2.0 10.0             # radius and height of the cylinder in cm
  1.0 0.0 0.0          # orientation of the cylinder; need not be normalised
  D                    # S(Q) data from file
  SiO_300.str          # file containing the structure factor data for the unit cell
  0.0082 0.0824 0.0139 # Scattering cross sections: incoherent, total and absorption
  
Parameter
Unit
Descripton Range, Examples Command Option
x,y,z
[cm]
position of the sample centre relative to the coordinate system defined by the preceding module -x,-y,-z
sample geometry Shape of the sample cylinder, sphere or cuboid -G
thickness or diameter
[cm]
thickness of cuboid, or diameter of sphere, or diameter of cylinder > 0 -t
height
[cm]
height of cuboid, or height of cylinder ≥ 0 -h
width
[cm]
width of cuboid ≥ 0 -w
x,y,z direction vector components describing the orientation of the sample (it is not necessary to give a normalized vector).
cylinder: the vector is always perpendicular to the top of the cylinder (standard cyl. position (001), height along the z-axis).
cuboid: Standard is the (1,0,0) direction, i.e. the sample has a thickness in x-direction, a width in y-direction and height in z-direction. By giving a different vector the whole sample is rotated in this direction, i.e. the planes separated by 'thickness' remain perpendicular to this vector.
sphere: no values needed.
e.g. (0,0,1) for vertical cylinder -X,-Y,-Z
structure factor The function S(Q) can either be read from file or determined by analytical functions "from file"
"as function"
-F
structure factor file This file (*.str) contains two columns, the first one for the momentum transfer values Q [Å-1] and the second column contains the corresponding values for S -s
incoherent scattering,
coherent scattering,
absorption
[cm-1, cm-1, cm-1Å-1]
Macroscopic cross sections for incoherent scattering, coherent scattering and absorption for 1.798 Å
absorption is supposed to increase linearly with wavelength, the other are regarded as wavelength independent.
≥ 0 -i,-C,-m
Back to Top


VITESS Module 'sample_reflectom' for virtual experiments on reflectomters

This module simulates a sample of a reflectometer.
The reflectivity data of a sample are taken from a file that contains the reflectivity R as a function of momentum transfer Q. To be able to get a simulated function R(Q), it is possible to simulate a reference measurement. The reference sample has a reflectivity of 1 for all Q-values.
If offspecular scattering mode is desired, the reflectivity file should contain a look-up table in the form: q_i, q_f,j, R(q_i, q_f,j). Here, q_i is the incoming neutron "scattering" vector: q_i = 2*pi/lambda * sin(theta), where theta is the angle between the sample and the beam axis. q_f,j is an array of possible outgoing scattered vector components : q_f,j = 2*pi/lambda * sin(theta_j), where theta_j=theta is the specular case and theta_j=-theta stands for the direct beam. The reflectivity table thus looks like this:

q_i.................q_f,j.......R(q_i, q_f,j)
0.00255028 -0.0800882 0.001
0.00255028 -0.0797596 0.0005
0.00255028 -0.079431 0.0005
0.00255028 -0.0791025 0.0015
...
0.00255028 0.0876443 0.0005
0.00255028 0.0879728 0.0005

0.00280531 -0.0798336 0.0005
0.00280531 -0.079505 0.0005
0.00280531 -0.0791764 0.0005
0.00280531 -0.0788478 0.0005
0.00280531 -0.0785192 0.001
...

An empty line between two subsequent q_i values is recommended to match the plotting format of gnuplot. An example file with a generic offspecular look-up table is provided in the FILES folder.

The reflectometry sample can now handle incoherent isotropic scattering. It requires information on the scattering path length mu, with P=μ*x being the scattering probability (0.00288 1/cm for D2O), and on some detector parameters. Besides, if the ratio between the area containing the specular signal and the total detector area is known, this is used to scale the incoherent trajectories such that eval_elast can provide the correct backgroun level without additional data treatment inside and outside the specular signal area.

The reflection of neutrons at several angles can be done in one simulation. In this case, a minimal value, a maximal value, and a step size for the reflection angle must be given (see chapter C). If only one angle shall be considered, the step size must be set to zero or minimal and maximal value must be identical.


Main parameters

Parameter
Unit
Descripton Range, Examples Command Option
Parameter File Includes File input parameters. This file can be read or created/modified by the VITESS shell. Values are read from separate rows i.e. 1 value/row for scalar and 3 values/row for vector type variables. refl_probe.rpb -P
Reflectivity File File that contains the reflectivity of the sample as a function of momentum transfer
1. column: momentum transfer [1/A]
2. column: reflectivity
It is only needed for the option 'Sample'.
refl_probe.dat -I
mode Option for the virtual experiment, either 'sample' (reflectivity data from the 'reflectivity file') or 'reference' (reflectivity R=1 for all angles) 'sample' or 'reference' -O
Axis of rotation Axis about which the sample is rotated 'Y' or 'Z' -R
treat neutrons not reflected no: neutrons that are not reflected by the sample are removed (default)
yes: neutrons that are not reflected by the sample are treated
"no" "yes" -A
reflection angle θ
[deg]
θ=0 means: no reflection, sample parallel to incoming beam
positive q.value means: reflection towards the positive z- or positive y-direction resp.
for reflection by 2 α into the negative direction choose angles of θ = 180° - α
-90° .....90°
typical. +1°....+4°
-a
substrate material Choose between the available materials for a proper description of the attenuation of neutrons passing through the substrate, it it is chosen to treat these neutrons 'Silicon' 'B4C' 'Glass' 'Other' -M
substrate thickn.
[cm]
Thickness of the substrate on which the sample is put (assuming the same width and length as the sample)
It is needed to calculate the absorption of the neutrons passing through the substrate, if 'treating not reflected neutrons' is chosen.
≥ 0 -h
total scattering
absorption
[cm-1, cm-1, cm-1Å-1]
Macroscopic cross sections for total scattering and absorption for 1.798 Å of the substrate material
Absorption is supposed to increase linearly with wavelength, scattering is regarded as wavelength independent.
It is needed for 'Other' substrate material for 'treating not reflected neutrons' within the substrate.
≥ 0 -s,-m
Offspecular scattering 'On': In addition to specular reflection, off-scattering is considered. The reflectivity file contains columns qi, qf,j, R(qi, qf,j)
'Off': only specular reflection is taken into account. The reflectivity file contains columns Q, R(Q).
'Off' or 'On' -o
Incoherent scattering 'On': incoherent scattering from the sample is considered
'Off': incoherent scattering is NOT taken into account
If enabled, the module expects additional parameters (see following lines)
'Off' or 'On' -B
inc. cross-section
[1/cm]
If 'Incoherent scattering' from sample is chosen, the macroscopic incoherent scattering cross-section μinc for the scattering probability P = μinc*x is needed, where x is the pathlength in the sample. μinc=0.00288 1/cm for D2O -X
Norm factor Ratio between the specular area and the total detector area.
If given, the background trajectories are scaled and the resulting reflectivity should show the expected background level.
Usually several percent for an area detector, put in 1 if unknown. -S
Detector distance, width, height
cm
If 'Incoherent scattering' the from sample is chosen, detector distance, height and width should be given to efficiently scatter the neutrons towards the detector surface.
The specular signal is expected in the center of the detector.
> 0 -d - p -t

File input parameters

Parameter
Unit
Descripton Range, Examples Command Option
center pos.
[cm]
x, y, z
This position defines the center of the sample (origin) in the frame provided by the previous module.
x = 'distance to sample center'
y = z = 0.0
-x -y -z
thickness, width, length sample
[cm]
t, w, l
Thickness, width and length give the sizes of the (rectangular) sample: for reflection angle 0, the reflecting surface of the sample is in the x-y-plane. The thickness is along the z-axis, width along the y-axis and length along the x-axis. Thickness is used to determine a distance from the surface (by MC choice) where the reflection is supposed to take place.
t = 0.00002 cm
w = h = 2.0 cm
-T -W -L
frame generation 'user defined frame' sets the following coordinate system according to the values given below.
'standard frame generation' leaves the coordiate system as it is, i.e. origin at sample centre, x-axis along the incoming beam.
'standard frame generation'
'user defined frame'
-g
output angle horizontal, vertical
[deg]
Φ, Θ
In case of "user defined output frame", a Φ rotation about the Z axis and then a Θrotation about the (new)Y axis defines a new reference orientation. According to this and the output frame translation vector (see below) the neutrons are written to the output file.
If "standard frame generation" is activated, the output frame is not rotated relatively to the original frame.
Φ = 180°, Θ= -2θ -k -K
output frame
[cm]
x', y', z'
The position of the output frame origin (O) in the original frame.
(x', y', z') represents the translation vector applied to shift the origin of the original (input) frame (O) to the new (output) position.
Default setting is: (x', y', z') = (x, y, z) i.e. main position of the sample.
one point on the scattered beam axis -u -v -w

Data evaluation

If several reflection angles are considered simultaneously, one incoming neutron can cause up to
    Nmax = (θmax - θmin) / Δθ + 1
outgoing neutrons. (This number is reached, if the sample is hit by the neutron at all angles.)

So the overall neutron flux at the detector is no longer comparable to the flux before the sample. Thus it is senseful to evaluate the data (using the module EVAL_ELAST) to separate the neutrons reflected at the different angles.
An evaluation in scattering angle is possible, if the angle difference Δθ is larger than the fluctuation in the orientation of the incoming neutrons. For an evaluation in the momentum transfer Q, the variation in Q of the incoming neutrons (caused by fluctuation in orientation and wavelength) must be smaller than the difference in Q caused by the angle difference Δθ.

Back to Top


VITESS Module 'sample_powder' for polycrystalline samples

The module sample_powder describes the coherent and incoherent elastic scattering of a powder sample. All parameter data are taken from file.
The coordinate system of an incoming neutron is defined by the preceding module. The direction of the beamline defines the +x-axis. The y-axis is defined as the horizontal axis to the left and the z-axis as the vertical one upwards. The powder sample module uses the angles θ and φ. θ is defined as the angle between a vector R defining the flight direction of the neutron and the +x-axis and covers a range of [0..π]. φ is the angle between the projection of the vector R to the yz-plane and the +y-axis and has a range of [0..2 π[.

A neutron is written to the output by this module, if the neutron arrives at the sample surface after scattering. The coordinate system has still the same orientation, but the origin has moved to the center of the sample. All sample modules consider the divergence of each neutron without any approximation to obtain the true direction of the flightpath after the scattering process.

Description of the scattering:
First of all it is determined if the neutron intersects the sample. If the neutron does not intersect the sample, it is discarded. Otherwise the neutron is scattered along its path through the sample at a certain distance Ls from its entrance, which is determined by a Monte Carlo choice. The probability pcoh (see e.g. Squires (3.103)) of the scattering process results from summing up the single contributions Pcoh, d for all d-spacings which satisfy the Bragg equation for a neutron with wavelength λi:

σcoh,d(cone) = Vsmpli3/(4v0²) * |Fd|2 / sin(0.5*θsc,i)           (Squires (3.103))

=>  pcoh,d   =  Iout,coh /Iin = σcoh,d(cone) / Asmpl =  Lii3/(4*v0²) *  |Fd|2 / sin(0.5*θsc,i)

with      θ sc,i =  2*asin(λi/(2*d))

Fd denotes the structure factor; it is the sum over all reciprocal lattice vectors with the same d-spacing d. (d and |Fd|2 are taken from the structure factor file.) θsc,i is the scattering angle of the i-th trajectory, Vsmpl the sample volume, and v0 the unit cell volume.  Iin denotes the incoming neutron current, Iout,coh the current of the neutrons scattered to the cone. Asmpl is the area of the sample perpendicular to the beam direction. Li denotes the total length of the flightpath of the trajectory under consideration through the sample. The values for |Fd|2  contain the Debye-Waller factor.
The direction of the trajectory i after the sample is given by (θi, φi). The angle θi is determined by &thetasc,i ; φi is given by a Monte Carlo choice between &phi - Δφ and &phi + Δφ.

In addition to the coherent scattering, incoherent scattering can be treated. This gives an isotropic distribution of the incoherently scattered neutrons. The scattering probability is given by

pinc =  Iout,inc / Iin  = Nσinc/Asmpl = Vsmpl/v0 σinc/Asmpl = Li/v0inc = Liinc

σinc is the incoherent scattering cross section of the unit cell; μinc = σinc/v is the macroscopic incoherent scattering cross section, which can be given as an input in the sample file.

The scattering is restricted to an angular range of [θ-Δθ, θ+Δθ],[φ-Δφ, φ+Δφ] by the input values θ, Δθ, φ and Δφ. For coherent scattering, θi is determined by the Bragg condition . If it is out of the range [θ-Δθ, θ+Δθ], the trajectory is discarded. Therefore, no correction for this angle is necessary. For incoherent scattering, θi is determined by a Monte Carlo choice in the range [θ-Δθ, θ+Δθ]. Therefore, the intensity in this range depends on the choice of the range. This is corrected by a factor Δθ. A limitation of the φ-range must be corrected for both kinds of scattering, because the value is chosen by a Monte Carlo choice in the given range (see above). So, the restricted solid angle is taken into account by using the factors

Ginc  = Δφ/π * Δθ
Gcoh = Δφ/π .

For all trajectories, an attenuation At is considered as follows:

At = exp{-Ln tot + μabs λ/1.798 Å)}

Ln is the total neutron flight path in the sample (surface  ->  point of scattering  ->  surface). μtot = σtot/v0 denotes the total macroscopic scattering cross section to be interpreted as wavelength independent, μabs = σabs/v0 is the macroscopic absorption cross section (to be provided for λ = 1.798 Å).

For one incoming trajectory, Nr(Ncoh + 1) trajectories are generated, where Nr denotes the number of repetitions. Summing over these trajectories, the total probability for the scattering of a trajectory is then given by:

P = (Gcoh pcoh,d + Ginc pinc sin θi) At / Nr

sin θi considers the θ-dependence of the isotropic distribution of the scattering orientations. Due to considering all accessible Bragg peaks, Ncoh is often greater than 1, even if Nr = 1. So don't worry about obtaining more output than input trajectories.

Module parameters

Parameter
Unit
Descripton Range, Examples Command Option
sample file The sample file describes the geometry and properties of the sample. -S
θ, Δθ
φ, Δφ
[deg]
These parameters describe the solid angle into which scattering occurs. The direction (θ,φ) points to the middle of the covered range, which extends from [θ-Δθ, θ+Δθ] and [φ-Δφ, φ+Δφ].
θ is the scattering angle defined as the angle between +x-axis (main flight direction of the neutrons) and the vector R describing the flight direction after scattering. φ is the direction on the cone defined as the angle between the +y-axis and the projection of R to the yz-plane. (x,y and z form a right-handed system.)
The default is Theta=DelTheta=90°, Phi=DelPhi=180° corresponding to a coverage of 4π.
Example: 20° to 160° scattering to the right in +/-20° vert.:
θ=90°, Δθ=70°
φ=180° Δφ=20°
-D, -d,
-P, -p
repetitions 'repetitions' specifies the number of data sets (trajectories) generated for each scattered trajectory. A larger number of repetitions enriches the population at the detector and gives therefore better statistics in the spectrum, but the number of density of events in the parameter space is not increased, e.g. the number of different wavelength values remains the same. Therefore, an increase of the number of trajectories created by the source module is favorable. ≥ 1
default: 1
 -A
colour Colour of the neutrons scattered by the powder sample
If no color, color=0 or color=-1 is chosen, the colour of the trajectories is not changed
-1,0: no action:
≥ 1: colour is set
-c
incoherent scattering yes: neutrons are additionally scattered incoherently
no: incoherent scattering is omitted
yes, no -I
treat all neutrons yes: treats neutrons not hitting the sample
no : treats only neutrons hitting the sample (This is the right option for background simulations.)
yes, no -a

Sample file parameters

first an example (the order written to the sample file differs from the sequence chosen in the GUI):
(Anything after the # character is interpreted as a comment.)

  100.0 0.0 0.0            # sample position relative to the coordinate system defined by the preceding module
  cyl                      # sample geometry (cyl, bal or cub)
  2.0 10.0                 # radius and height of the cylinder in cm
  1.0 0.0 0.0              # orientation of the cylinder; need not be normalised
  Al_300.str               # file containing the structure factor data for the unit cell. If the format is neither .str nor .laz, the meaning of individual columns needs to be specified (see below).
  0.000494 0.09057 0.01392 # macroscopic cross sections: incoherent, total and absorption
  66.38                    # unit cell volume in cubic Angstrom
  6 13 0 17 0 1            # Structure file format, if the file is not given as .str or .laz. The last number is the scale factor that is needed to express the squared structure factor in barn, if it is given in a different unit in the used structure factor file.
  
Parameter
Unit
Descripton Range, Examples Command Option
x,y,z
[cm]
position of the sample centre relative to the coordinate system defined by the preceding module -x,-y,-z
sample geometry Shape of the sample cylinder, sphere or cuboid -G
thickness or diameter
[cm]
thickness of cuboid, or diameter of sphere, or diameter of cylinder > 0 -t
height
[cm]
height of cuboid, or height of cylinder ≥ 0 -h
width
[cm]
width of cuboid ≥ 0 -w
x,y,z direction vector components describing the orientation of the sample (it is not necessary to give a normalized vector).
cylinder: the vector is always perpendicular to the top of the cylinder (standard cyl. position (001), height along the z-axis).
cuboid: Standard is the (1,0,0) direction, i.e. the sample has a thickness in x-direction, a width in y-direction and height in z-direction. By giving a different vector the whole sample is rotated in this direction, i.e. the planes separated by 'thickness' remain perpendicular to this vector.
sphere: no values needed.
e.g. (0,0,1) for vertical cylinder -X,-Y,-Z
structure factor file The structure factor file contains information to determine the scattering probability for each reflection. It can be given as a .dat, .laz, .lau format or in another format. In the latter case the meaning of individual columns must be specified by the 'Structure file format' parameters (see below), otherwise they are set by the program.
In VITESS format (.str), each line contains: d and M |Fd|2 fdw (see FILES folder).
-s
incoherent scattering
total scattering
absorption
[cm-1, cm-1, cm-1]
Macroscopic cross sections for incoherent scattering, total scattering and absorption for 1.798 Å
Absorption is supposed to increase linearly with wavelength, the other are regarded as wavelength independent.
≥ 0 -i,-T,-m
unit cell volume
[ų]
volume of the unit cell ≥ 0 -U
Structure file format If the structure factor file has the extension .str (VITESS) or .laz or .lau (Laue Format), the columns (where the values can be found in the table) are set in the program. Otherwise, the meaning of individual columns needs to be specified to calculate the scattering probabilily.
Columns can be set for: Miller indices h k l, structure factor Fd, square of the structure factor |Fd|2, Multiplicity M and Debye-Waller factor Fdw.
The VITESS format assumes d-spacing in the first and M |F|2Fd in the second column.
≥ 0
0: not in file
-C, -F, -Q, -M, -W
Scale factor In case the structure factor file has neither the .str (VITESS) nor .laz format, this scale factor is needed, if the (squared) structure factor is not given in barn^0.5 (barn). > 0 -f
Back to Top


VITESS Module 'sample_nxs' for polycrystalline samples

The sample_nxs module describes a polycrystalline sample based on its unit cell definition and was originally developed to simulate Bragg edge neutron transmission experiments. The module handles coherent and incoherent scattering, as well as absorption and transmission. The individual probabilities for those events are determined using the calculation of wavelength-dependent neutron cross sections (nxs). These cross sections are computed for each atom contributing to a unit cell, such that complex material compositions can be simulated. The nxs concept is briefly described.

CONTENT

1. Simulation description
   1.1 Unit cell initialisation
   1.2 Neutron cross section calculation
   1.3 Neutron-sample interactions
2. Module parameters
3. Input files
   3.1 Sample geometry file
   3.2 NXS parameter file
4. Further developments
5. References

1. Simulation description

1.1 Unit cell initialisation
Prior to any wavelength-dependent neutron cross section calculation, the crystal properties are initialised at first. Therefore, a unit cell is virtually composed using the existing routines of the SgInfo library [Grosse-Kunstleve, 1995]. The permission to use SgInfo is granted by the following copyright and permission notice:

Space Group Info (c) 1994-96 Ralf W. Grosse-Kunstleve

Permission to use and distribute this software and its documentation for noncommercial use and without fee is hereby granted, provided that the above copyright notice appears in all copies and that both that copyright notice and this permission notice appear in the supporting documentation. It is not allowed to sell this software in any way. This software is not in the public domain.

The unit cell initialisation requires a number of input parameters: Each of these parameters is served by an nxs parameter file (see §3.2 for details). A unit cell is composed and the present lattice reflections and symmetry equivalent lattice planes are determined. As part of the initialisation of the virtual sample, the lattice distances d, structure factors F for all hkl Miller indices and the unit cell volume are calculated to provide the necessary parameters for the neutron cross section calculation.
1.2 Neutron cross section calculation
The fraction of neutrons performing different neutron-matter interactions can be quantified by means of cross sections, given in barns (1 barn=10-24 cm2). Following the descriptions of Granada [1984] and Vogel [2000], the total neutron cross section is given by:
σtotal(λ) = σcoh ( Scoh_el(λ) + Scoh_inel(λ) ) + σinc ( Sinc_el(λ) + Sinc_inel(λ) ) + σabs(λ)


where, σabs is the absorption cross section and σ describes the average coherent and incoherent scattering contributions, which are computed by the scattering length b. The functions S describe the neutron energy influence as well as the effect of the spatial nuclei arrangement to the elastic and inelastice parts of the cross sections.

The structural parameters of the sample material are accounted in the description of the coherent elastic part Scoh_el. Here σcoh_el(λ) can be calculated for any type of crystal structure.

σcoh_el(λ) = λ2 / (2V0) Σ |Fhkl|2 dhkl


The summation Σ runs over all sets of lattice planes, indicated by hkl, with a lattice spacing dhkl smaller than half the size of the selected wavelength λ. V0 is the unit cell volume.

The fraction of neutrons that scatter elastically is also influenced by incoherent scattering. The definition of the incoherent elastic component is based on the assumption of thermal motion of the nuclei. Therefore, an isotropic atomic displacement factor Biso was introduced to include the Debye temperature of an atom.

Sinc_el(λ) = λ2 / (2Biso,n) ( 1 - exp( -2Biso,n / λ2) )


For the purpose of a unit cell calculation, the contributions are simply added for each atom n inside the unit cell as they do not depend on the crystal structure.

The inelastic contributions to the neutron cross section calculation describe the probabilities for a neutron to lose or gain energy when interacting with the sample. However, although these probabilities will be determined during the simulation, neutron energy (or wavelength) changes are not considered in the present sample module. Consequently, the author refers to the comprehensive presentations made by Binder [1970], Granada [1984] and Vogel [2000] for the descriptions of the inelastic cross sections.

The absorption cross section is determined by the neutron velocity v. Most reference absorption cross section datasets have been measured and stored in terms of a standard neutron velocity of v = 2200 m/s, which is used to compute the absorption cross section for another velocity (and wavelength).

σabs(λ) = σ2200_abs / 1.798 Å * λ


In the following the total and individual neutron cross sections are used to calculate the probabilities for absorption, transmission and scattering of each neutron intersecting with the sample.
1.3 Neutron-sample interactions
After the wavelength-dependent neutron cross section is completed a transmission probability for the actual neutron is determined to account for the exponential attenuation:

ptransmit = exp( - σtotal / V0 * l)


where l is the neutron transmission path length through the sample (i.e. the sample thickness).
The following propagation depends on a command option provided as a module parameter. Here, the 'transmission_only' switch (see §2) is used to divide between to different simulation modes. If the option is yes, all neutrons hitting the sample will be transmitted and their weighting factor is attenuated by multiplication with ptransmit. Thus, wavelength-dependent neutron transmission including the effects of the crystallographic structure is simulated. This is useful in order to quickly simulated Bragg edge neutron transmission spectra, for example.
In order realise neutron scattering, the 'transmission_only' switch should be set to no (default). Then, neutron transmission s performed only, if ptransmit > a random number between 0 and 1. Otherwise, another random number (Monte Carlo number) will be created to decide between absorption and coherent and incoherent scattering. The latter is only possible if the module parameter '-I' is activated (see §2). For the coherent scattering the available lattice planes, their distances and structure factors are used to determine the Bragg angles and their individual probalities for coherent scattering along the Debye Scherrer cones. The angular range in both directions (Bragg angle and vertical scattering angle) can be restricted to focus on a smaller region as reported in the following section. If it turns out that the neutron is to be absorbed due to the Monte Carlo choice, the neutron is simply not written to the output of the sample_nxs module.

2. Module parameters

The sample_nxs module povides a number of options to be used from the GUI as well as from the commandline.

Parameter
Unit
Descripton Range, Examples Command Option
sample file The sample file describes the geometry and properties of the sample.  -S
Theta, dTheta,
Phi, dPhi
[deg]
These parameters describe the solid angle covered by the detector. The direction (θ,φ) points to the middle of the covered area, which extends from [θ-Δθ, θ+Δθ] and [φ-Δφ, φ+Δφ].
θ is defined as the angle between +x-axis (main flight direction of the neutrons) and the Vector R to be described. φ is the angle between the +y-axis and the projection of R to the yz-plane. x,y and z form a right-handed system.
!!!Note: If you specify any parameter of Δθ, θ, Δφ, φ you must specify all of them.!!!
The default is a coverage of 4π
-D, -d,
 -P, -p
Example: 20° to 160° scattering to the right in +/-20° vert.:
θ=90°, Δθ=70°
φ=180° Δφ=20°
repetitions 'repetitions' specifies the number of data sets (trajectories) generated for each scattered trajectory. A larger number of repetitions enriches the population on the detector and gives therefore better statistics in the spectrum. ≥ 1
default: 1
 -A
colour Colour of the neutrons scattered by the powder sample
If no color, color=0 or color=-1 is chosen, the colour of the trajectories is not changed
-1,0: no action:
≥ 1: colour is set
-c
incoherent scattering yes: neutrons are additionally scattered incoherently.
no: incoherent scattering is omitted.
!!!Note: This option is not considered if 'transmission only' = yes.
yes, no  -I
treat all
neutrons
yes: treats neutrons not hitting the sample.
no: removes neutrons not hitting the sample from the trajectory.
yes, no  -a
transmission
only
'transmission only' specifies the simulation mode:
yes: only wavelength dependent neutron transmission is handled. Neutrons hitting the sample will be attenuated by I/I0 = exp(-μ(λ)*transmission_length). The neutron flight direction is not changed.
no: transmission, absorption and coherent and incoherent scattering are simulated.
yes, no  -T

3. Input files

3.1 Sample geometry file
The sample geometry, placement within the instrument and orientation are summarised by an input file. An example:

nxs_sample.par
  10.0 0.0 0.0    # sample position in [cm] the coordinate system of the preceding module   (-x, -y, -z)
  cub             # sample geometry (cyl, bal or cub)                                       (-G)
  2.0 1.0 2.3     # thickness or radius, height and widthheight of the sample in [cm]       (-t, -h, -w)
  1.0 0.0 0.0     # orientation of the cylinder (does not need not be normalised)           (-X, -Y, -Z)
  Fe.nxs          # nxs parameter file to describe the unit cell composition                (-s)
        

From VITESS 4 on, these parameters can also given as input parameters. The command options are shown in brackets at the end of the table.

The sample_nxs module provides three geometry to be simulated (cylinder, sphere (ball), cuboid). Depending on the selected shape, thickness, height and width and/or radius need to be defined. The sample orientation is given by vector components:
Another input file (nxs parameter file) is used to define a unit cell. If no input file is assigned or the path the file cannot be found, the sample_nxs module uses a fallback solution. By default an alpha-Fe (bcc) unit cell will be created and used for the simulation. Anything after the # character is interpreted as a comment.

The sample geometry file is assigned by the command line parameter -S. This option is mandatory. The VITESS GUI provides input fields to edit the described parameters.

3.2 NXS parameter file
The parameters to define a unit cell are assigned by means of another input file, whose structure is as follows:

Al.nxs
# define the unit cell parameters:
#   space_group                      - the space group number or Hermann or Hall symbol [string]
#   lattice_a, ...b, ...c            - the lattice spacings a,b,c [angstrom]
#   lattice_alpha, ...beta, ...gamma - the lattice angles alpha,beta,gamma [degree]
#   debye_temp                       - the Debye temperature [K]

space_group    = -F 4 2 3 # space group number is also allowed (= 225)
lattice_a = 4.049
lattice_b = 4.049
lattice_c = 4.049
lattice_alpha = 90
lattice_beta = 90
lattice_gamma = 90
debye_temp = 429.0

# add atoms to the unit cell:
# notation is "atom_number = name b_coh sigma_inc sigma_abs_2200 molar_mass x y z"
#   name           - labels the current atom/isotope  [string]
#   b_coh          - the coherent scattering length [fm]
#   sigma_inc      - the incoherent scattering cross section [barns]
#   sigma_abs_2200 - the absorption cross sect. at 2200 m/s [barns]
#   molar_mass     - the Molar mass [g/mol]
#   debye_temp     - the Debye temperature [K]
#   x y z          - the Wyckoff postion of the atom inside the unit cell

[atoms]
add_atom = Al 3.449 0.008 0.23 26.98 0.0 0.0 0.0

4. Further developments

The first official sample_nxs module was release with Vitess 2.11. This sample_nxs version 1.1 was created to take advantage of an updated nxs library. Besides the implementation into Vitess, a sample module for McStas has been realised and is available from the McStas repository. Furthermore, a Geant4 module, called NXSG4, for proper simulations of thermal and cold neutrons through crystalline matter was developed. Last but not least, a number of users have successfully applied the nxs routines for their research activities. The list below references publications about the development and applications of nxs:

It is further planned to continue the development of the Vitess module to provide additional capabilities such as strain, texture and multiple scattering as it has been done for McStas [e.g. Boin et al., 2011]..

5. References

Back to Top



VITESS Module 'sample_singcryst' for single crystal samples

The integrated intensity I of a particular reflection measured in a TOF neutron diffraction experiment can be written as a function of the wavelength and the Bragg angle:

I_hkl_formula

where h, k, l are the Miller indices designating the Bragg peaks, and the wavelength dependent correction factors are in the order given above: the incident
spectral neutron flux, the detector efficiency, the absorption correction, the extinction correction, and alfa= I_TDS/I_Bragg, the thermal diffuse scattering (TDS) correction.
( J. Peters and W. Jauch, Science Progress (2002), 85 (4), 297–317).
In this module we can treat the extinction, TDS correction by combining a normalisation factor, d-spacing spread or by a reflection dependent coefficient multiplying Fhkl2 in the structure factor file.
The program expects a complete list of h k l reflections. (see 'Module Parameters'|'structure factor file' below).


Module Parameters

Parameter
Unit
Descripton Range, Examples Command Option
parameter file This file describes the geometry and properties of the sample.
In this file are given: reciprocal unit vectors, normalisation, absorption, sample position, etc (see below)
-P
structure factor file The structure factor file contains information to determine the scattering probability for each reflection. It can be given as a .dat, .laz, .lau format or in another format. In the latter case the meaning of individual columns must be specified by the 'Structure file format' parameters (see below), otherwise they are set by the program.
In VITESS format (.dat), each line contains: h k l |Fhkl|2 (see FILES folder).
The program expect a complete list, i.e. that is all relevant combination of positive and negative h, k and l values. If this is not the case, the tool 'Complete hkl list' can be used to generate a file with all combination from a file with only positive numbers.
-S
mark reflection 'yes': sets the color of the scattered neutron to the number (ID) of the reflection as taken from the hkl file
'no' : leaves the color unchanged
'no' 'yes' -c
d-spacing distribution options 1: Lorentzian, 2: Gaussian distributions, functions describing the d-spacing probability distribution with
maximum at the nominal value (for the exact nominal value ideal reflectivity = 1., see also normalisation)
1, 2 -o
d-spacing spread dfwhm/d, the relative 'thickness' of the Ewald sphere, i.e. a small variation of the lattice constant which is same in each direction silicon ~ 0.0001=0.01% -d

File Input Parameters

Parameter
Unit
Descripton Range, Examples Command Option
reciprocal unit vectors A, B, C
[1/A]
x,y,z components of the reciprocal unit vectors A, B, C defined in the sample frame -A -B -C
-T -U -V
-X -Y -Z
normalisation
[arb.u.]
normalisation factor containing for example the number density -N
absorption
[1/cm/A]
attenuation due to absorption within the sample per wavelength ≥ 0 -m
position X,Y,Z
[cm]
coordinates of the sample centre -x -y -z
phi(Z), chi(X'), omega(Z'')
[deg]
The transformation of the sample to its orientation is realized by 3 Euler angle rotations. The reciprocal unit vectors are first rotated about the z axis Z (of the instrument), then about the new x axis X' and then about the z axis Z" (after the second rotation) -p -c -O
sample geometry sample shape options: cuboid, vertical cylinder or sphere (=ball) cubic, cylindrical, ball -G
thickness or diameter, height, width
[cm]
rectangular sample dimensions in x,y,z directions (sample frame) ≥ 0 -t -h -w
output angle
horizontal, vertical
[deg]
a frame rotation about the Z axis and then a rotation about the (new) Y axis defines a new orientation for the neutrons written to the output hor: -180° ... 180°
vert: -90° ... 90°
default: 0° 0°
-u -U
Structure file format If the structure factor file has the extension .dat (VITESS) or .laz or .lau (Laue Format), the columns (where the values can be found in the table) are set in the program. Otherwise, the meaning of individual columns needs to be specified to calculate the scattering probabilily.
Columns can be set for: Miller indices h k l, structure factor F, square of the structure factor |F|2 and the Debye-Waller factor Fdw.
The VITESS format assumes the Miller indices in columns 2 to 4 and |Fhkl|2 in the fifth column.
≥ 0
0: not in file
-H -K -L
-F -Q -W
Scale factor In case the structure factor file has neither the .dat (VITESS) nor .lau format, this scale factor is needed, if the (squared) structure factor is not given in barn^0.5 (barn). > 0 -f

The parameter file contains in the first 3 lines the reciprocal lattice vectors, and you can give a normalisation containing the number denstity or other factors.

Example:

  1.2892     0       0       recipr. unit v. A X [1/A], recipr. unit v. A  Y [1/A], recipr. unit v. A  Z [1/A]
  0          1.2892  0       recipr. unit v. B X [1/A], recipr. unit v. B  Y [1/A], recipr. unit v. B  Z [1/A]
  0          0       1.8982  recipr. unit v. C X [1/A], recipr. unit v. c  Y [1/A], recipr. unit v. C  Z [1/A]
  1          0.01            normalisation [a.u.], absorbtion [1/cm/A]
  900        0       0       position X [cm],  position Y [cm], position Z [cm],
  30       -15       0       phi(Z) [deg], chi(X) [deg], omega(Z) [deg]
  cub                        sample geometry: 'cub', 'cyl'inder, 'ball'
  1          1       1       thickness or diameter [cm], height [cm], width [cm]
  109.3      20.7            output angle horiz. [deg], output angle vert. [deg]
  

VITESS rotation convention: Smaller index axis rotated towards higher index axis is positive!


The structure factor file contains in each line:
  no. refl    h     k     l      Fhkl2
  

(a Debye-Waller factor can be included here).
All incoming trajectories will sample each reflection and the successful ones are written out i.e. number of incoming trajectories will be larger than the number of incoming trajectories.
The third coordinate 'colour' will contain which reflection has happened (no.refl), this can be seen if you use 'writeout' to view the ASCII output (as in the example, but for longer runs do not forget to cancel 'writeout' to save memory and computing time).

Example:

  1 14 -11 -1 0.08057
  2 15 -11 -1 0.00616
  3 16 -11 -1 0.02162
  4 17 -11 -1 0.01906
  5 18 -11 -1 5.35824E-5
  6 12 -10 -1 5.929E-7
  7 13 -10 -1 0.00652
  8 14 -10 -1 0.00228
  9 15 -10 -1 0.49332
 10 17 -10 -1 7.66736E-4
 11 18 -10 -1 0.00165
 12 19 -10 -1 5.67392E-4
  
Back to Top


VITESS Module 'sample_inelast' for inelastic scattering samples

This module simulates a cylindrical, spherical or cuboid sample that scatters conforming to the given input parameters. It makes possible to consider both coherent and incoherent cross sections and determines spin-flip scattering events for 2/3 of the incoherent scattering events. The scattering function is weighted on the cross sections:
S(q,ω) = σcohScoh(q,ω) + σincohSincoh(q,ω).
where Scoh(q,ω) and Sincoh(q,ω) are defined below, in a way that both functions are normalised to 1 within the energy transfer range.
Scoh(q,ω) makes possible to compute inelastic energy transfers along a linear dispersion curve or plane dispersion surface within a finite momentum transfer range. This form can also be used for a local approach of non-linear energy dispersion relations. The attenuation due to absorption (self-shielding) is also taken into account.

The probability weight P provided by the former module is multiplied by the known factors:

P' = exp ( -μt ) x |kf|/|ki| x S(q,ω) x (ΔΩ/4π)  x  P,

where:
μ [cm-1] is the total attenuation due to scattering and absorption i.e. μ = μscat + μabs,
t is the path length of the neutron within the sample till scattering,
ΔΩ is the solid angle within which neutrons are scattered.

σcoh and σinc are both calculated from the respective linear coefficients, using the density, assuming in both cases that the linear coefficients given as input are the usual tabular values at λ = 1.8 Â.

The geometrical parameters of the sample are: position, horizontal and vertical offset angles with reference to the final coordinate system of the antecedent module, and size of the sample.

Detailed parameter definitions can be read from the tables in section B. The functions used to approximate S(q,w) are given in section C.

In the output frame X'Y'Z', all neutron coordinates are referring to the moment when the neutrons are just crossing the sample walls after the scattering . Multiple scattering is not yet included. The effect of sample size and geometry on the scattered intensity can be calculated by calibration taking into account that I / I' = V/V' (V - illuminated sample volume).


A. Options

1. No Bose Factor: No detailed balance considered (BF = 1).
2. Bose Factor: Detailed balance included.

B. Parameter and file descriptions


Main parameters

Parameter
Unit
Descripton Range, Examples Command Option
Parameter File Includes File input parameters.
This file can be read or created/modified by the VITESS shell. Values are read from separate rows i.e. 1 value/row for scalar and 3 values/row for vector type variables.
sampleinelast_default.ine -P
P1, P2 [μeV]
P3 [1/μeV]
P4    [-]
Parameters of the S(q,ω) function as defined in section C. The HWHM parameter P2 should be > 0.0001 microeV. If P4=0. one obtains Lorentzian function and  P4 =1. gives symmetrized Lorentzian which works for P1 > 0. e.g. quasielastic: 

P1 = 0.0, P2 = 10.0,

P3 = 0.5, P4 =   0.0
-a -b -c -d
D1, D2, D3
[Å]
Cartesian coefficients defining the dispersion relation of excitations as given in section C. if 0.0, 0.0, 0.0, no dispersion -x -y -z
Bose Factor? 'yes': Detailed balance included
'no' : No detailed balance considered
'yes' 'no' -D
temperature
[K]
Temperature of the sample controlling detailed balance.
If T = 0, Bose Factor is set to 1 for ω>0 and 0 for ω<0.
e.g. 0.0 1000 K -T
repetition
[-]
If this integer > 1, the neutron is used multiple times to obtain better statistics. ≥ 1
default: 1
-A
Linear incoherent-scattering coefficient
[1/cm]
Linear incoherent-scattering coefficient
from tables -Q
Molar mass of the compound
[g/mol]
Total molar mass of the compound calculated as stechiometric sum of the molar masses
from tables, example for water: 18 [g/mol] -B
Density of the compound
[g/cm3]
Density of the compound
from tables, example for water: 1 [g/cm3] -C

File Input parameters

Parameter name
[Unit]
Descripton Range, Examples Command Option
lambda final
[Å]
Gives center position of the scattered wavelength interval, which is considered in the simulation. It is recommended to choose e.g. the mean analyser wavelength. e.g. 6.27 for Si(111) analyser -L
angle horiz/vert
final [deg]
horizontal and vertical components of the mean scattering angle  -180° -  180° -E -F
delta lambda final
[Å]
Width of the scattered wavelength interval which is considered in the computation
If read from file, Δλ is regarded as the full range, i.e. the final wavelength will be in the range [λ- ½ Δλ, λ+ ½ Δλ]
If given as input parameter (VITESS 4), Δλ is regarded as the range around the mean wavelength, i.e. the final wavelength will be in the range [λ-Δλ, λ+Δλ]
e.g. ~0.02 for Si(111)
and ~0.2 for PG(002);
-l
delta angle
horiz/vert [deg]
Angular widths Δθ and Δφ of the horizontal and vertical scattering direction
If read from file, Δθ and Δφ are regarded as the full ranges, i.e. scattering takes place in the range [θ - ½ Δθ, θ+ ½ Δθ],[φ - ½ Δφ,φ + ½ Δφ]
If given as input parameter (VITESS 4), Δθ and Δφ are regarded as the ranges around the mean angle, i.e. scattering takes place in the range [θ - Δθ, θ + Δθ],[φ - Δφ,φ + Δφ]
0° - 360° or
0° - 180° (param.)
-e -f
Scattering coefficient
[1/cm]
Scattering coefficient of the sample λ = 1.8 Å
from tables -s
Absorption linear coefficient
[1/cm]
Absorption coefficient of the sample at λ = 1 Å
from tables -m
position
[cm]
Position of sample center in the frame provided by the former module. e.g. 10.0, 0.0, 0.0 -X -Y -Z
offset angle horizontal, vertical
[deg]
A rotation first around the Z axis and then around the (new) Y axis gives the orientation of the sample. It has no relevance for a spherical sample geometry. e.g. 0.0, 0.0 -o -O
sample geometry Shape of the sample 'cylinder', 'hollow cylinder', 'sphere' or 'rectangular' -G
thickness, height, width
[cm]
Thickness, height and width give dimensions of a cuboid sample. For cylinder only diamter and height are relevant parameters.
For hollow cylinder, inner diameter is given by the third parameter. For spherical samples only the first value is considered as the diameter.
e.g. cylinder: 0.5, 2.0 -t -h -w
output frame definition Specificaton of the co-ordinate system of the successive module
'standard frame generation': beamline direction follows the expected beam direction
'user defined frame': any direction defined by the user
'standard frame generation'
'user defined frame'
-g
lambda initial
angle hor. initial
angle vert. initial
[Å], [deg], [deg]
These data only are necessary for setting "standard frame generation". It gives the initial wavevector (e.g. the most probable initial wavevector) to calculate the main scattering angle from the scattering triangle (by considering the centre of the q-transfer range). The corresponding energy transfer is also calculated and written to the log file (respectively to the X-control window). Generally, the initial k-vector should be set parallel to X, however the vectorial input makes possible a non-parallel choice in order to analyse the effect of divergence on the instrument resolution. The initial k-vector has to be given for formal reasons even if "user defined output frame" is activated . Nevertheless it can be used to obtain in the log file the corresponding energy transfer and scattering angle with respect to the vector q-transfer. e.g. data corresponding to the most probable initial neutron wavevector -q -i -I
output frame
X',Y',Z'
[cm]
The position of the output frame origin in the original frame. It represents the translation vector applied to shift the origin of the original (input) frame to the new (output) position. Default setting (standard frame) is the main position of the sample. one point on the scattered beam axis -R -S -W
output angle horizontal, vertical
[deg]
In case of "user defined output frame", a rotation about the Z axis and then a rotation about the (new) Y axis defines a new orientation for the neutrons written to the output. If "standard frame generation" is activated, the coordinate system is rotated until the new X axis is parallel to the scattering direction which is determined by the reference k-vector and the vector 'q-transfer' defined above. This option is recommended for all direct geometry or (quasi)elastic inverted geometry simulations, the reference (i.e average incident) k-vector being fixed for all q-transfers.  e.g. forward scattering:
0.0, 0.0
-u -U

Quasi-elastic scattering

Set P1=P4=0 for quasi-elastic scattering and lambda final equal to lambda initial. Delta lambda final should be matched to the HWHM parameter P2: lambda and delta lambda final determine the wavelength/energy range in which neutrons are simulated, while the P parameters determine the Lorentzian shape via the neutron weight. The delta lambda final should cover several times the FWHM to see the tails of the Lorentzian distribution. Note that in order to see a broadening of the elastic peak, the width of the incoming neutron wavelength has to be smaller than the energy transfer / delta lambda final.


C. Functions used

1) Scattering functions:

S(q,ω) = σcohScoh(q,ω) + σincohSincoh(q,ω)

\( S_{coh}(q,\omega)= \frac{ BF(\omega,T) P_3 }{\pi} \left( \frac{P_2}{(\omega - P_1 - \epsilon (Q) )^2 + P_2^2 } - P_4 \frac{P_2}{(\omega + P_1 + \epsilon (Q) )^2 + P_2^2 } \right) \)

if \(P_4 = -1 \) it's divided by 2, in this way the normalization is 1 in all cases. For continuity reasons exact ω = 0 events are skipped and P2 > 0.0001 meV. For computation of non-coupled multipeak dynamic structure factors it is recommended to run separate simulations for each single peak and add the resulting TOF or energy spectra.

\( S_{incoh}(q,\omega)= \frac{1}{\Delta \omega}\), where \(\Delta \omega\) is the energy transfer range within which neutrons are scattered.


2) Dispersion function:

By considering \(P_1\) as a reference energy, the dispersion relation \(\omega(q)\) is:

\(\omega(q) = P_1 + \epsilon (q) \)

with

\(\epsilon (q) = D_1 q_x + D_2 q_y + D_3 q_z\).

3) Bose factor:

If option 'No Bose factor' has been chosen, BF is set to 1 for all cases.

If T = 0, BF = 1 for ω> 0 and BF = 0 for ω< 0.

\( BF(\omega,T) = \left\{ \begin{array}{lr} \frac{1}{e^{{\hbar \omega}/{k_B T}} - 1} +1 : \omega\gt 0\\ \frac{1}{e^{-{\hbar \omega}/{k_B T}} - 1} : \omega\lt 0 \\ \end{array} \right.\)

Back to Top


VITESS Module 'sample_ncrystal' for scattering with NCrystal sample database.

This module integrates the NCrystal library into the Vitess simulation framework.
This module facilitates advanced neutron transport simulations by enabling coherent and incoherent scattering, absorption, and spin-flip effects in materials described using NCrystal's scattering models.
The module computes scattering cross-sections (coherent and incoherent) for neutrons interacting with materials using NCrystal's S(q,w) scattering kernel.
It supports neutron spin-flip processes during incoherent scattering.
It handles multiple material geometries such as cylinders, spheres, and hollow cylinders.
If the state of matter of the sample is solid, the crystal directions are set in the lab framework, indenpendentently from the scattering volume orientation. The two offset angles enable to align the scattering volume to the crystal axes, if this is desired.

The neutron scattering follows this process:
1. Vitess propagates the neutron until the scattering point.
2. Ncrystal defines the probability of a scattering event and defines the final neutron properties.
3. Vitess reads the neutron properties from NCrystal and propagates further.

Workflow
A material is initialized using the NCrystal configuration string (configString).
The material information is logged.
Scattering and absorption coefficients are derived for attenuation calculations.
Coherent Scattering: The neutron's cross-section and scattering angles are computed.
Incoherent Scattering: A spin-flip occurs probabilistically (2/3 chance), altering the neutron's spin vector.
Energy Transfer: Using NCrystal's S(q,w) kernel, the energy change during scattering is applied to the neutron.
Path lengths within the sample are computed based on material geometry.
Probabilities are updated with attenuation factors using absorption and scattering coefficients.
Vitess updates neutron parameters (position, direction, spin, time of flight, and probability) after scattering.
Spin-flip statistics, coherent scattering counts, and missed hits are logged.
The key function S(q,ω)
The function purpose is to compute the scattering cross section and energy transfer using NCrystal.
It takes as input the neutron wavelength, probability and direction.
It tracks the neutron spin vector and updates after scattering, taking into account the flipping probability of 2/3 for incoherent scattering.
Sample material setup
To use NCrystal materials, Vitess generates a valid configuration string based on the following input, provided by the user in the module GUI:
Parameter
Unit
Description Range, Examples Command Option
Material File File containing the scattering information for the sample material. Must be a valid NCrystal configuration file. e.g., `material.ncmat` -f
Temperature
[K]
Temperature of the sample material, influencing the scattering kernel. This parameter is ignored when the state of matter is gas or liquid. > 0 K (e.g., 300) -T
Solid sample
[yes/no]
If the sample is solid please insert the desired crystal axis directions. If no, please give default values. yes/no -s
d-Cutoff
[Å]
Minimum d-spacing (in Å) to include in the simulation for crystal materials. > 0 (e.g., 0.5) -d
Crystal Mosaicity
[°]
Degree of crystal mosaicity for the sample material. > 0° (e.g., 0.1) -m
Axis 2 dir tolerance
[°]
NCrystal specified tolerance on the crystal axis n. 2. Default is 1e-4 rad = 0.0057 deg. (dirtol) > 0° (e.g., 0.1) -D
Repetition
[#]
Number of neutron trajectories simulated per incoming trajectory to improve statistics. ≥ 1 -R
Sample Geometry Defines the geometry of the sample. Supported types: cylinder, hollow cylinder, sphere, or cuboid. `cylinder`, `hollow_cylinder`, `sphere`, `cuboid` -G
X [cm] Position of the sample center along the beam axis. ≥ 0 -X
Y [cm] Horizontal position of the sample center in the lab frame (to the left). ≥ 0 -Y
Z [cm] Vertical position of the sample center in the lab frame. ≥ 0 -Z
Thickness or Diameter
[cm]
Thickness (for cuboid) or diameter (for cylinder or sphere) of the sample material. > 0 (e.g., 1.0) -t
Height
[cm]
Height of the sample material (applicable for cuboid or cylinder geometries). > 0 (e.g., 2.0) -g
Inner Diameter or Width
[cm]
Inner diameter of a hollow cylinder or width of a cuboid sample. ≥ 0 (e.g., 0.5) -w
offset angle horiz.
[°]
rotation angle of the sample about the z-axis in a horizontal plane (first rotation) to define its orientation. -360 to 360 -o
offset angle vert.
[°]
rotation angle of the sample about the (new) y-axis in a vertical direction (second rotation) to define its orientation. -360 to 360 -O
Incident λ
[Å]
Incident neutron wavelength. > 0 Å -M
Axis 1 h [#] This h-index specifies the crystallographic axis 'Axis 1'. ≥ 0 -h
Axis 1 k [#] This k-index specifies the crystallographic axis 'Axis 1'. ≥ 0 -k
Axis 1 l [#] This l-index specifies the crystallographic axis 'Axis 1'. ≥ 0 -l
Axis 1 dir x [#] Unit vector component x defining the orientation of the crystallographic axis 'Axis 1' in the NCrystal lab coordinates. ≥ 0 -a
Axis 1 dir y [#] Unit vector component y defining the orientation of the crystallographic axis 'Axis 1' in the NCrystal lab coordinates. ≥ 0 -b
Axis 1 dir z [#] Unit vector component z defining the orientation of the crystallographic axis 'Axis 1' in the NCrystal lab coordinates. ≥ 0 -c
Axis 2 h [#] This h-index specifies the crystallographic axis 'Axis 2'. ≥ 0 -H
Axis 2 k [#] This k-index specifies the crystallographic axis 'Axis 2'. ≥ 0 -K
Axis 2 l [#] This l-index specifies the crystallographic axis 'Axis 2'. ≥ 0 -L
Axis 2 dir x [#] Unit vector component x defining the orientation of the crystallographic axis 'Axis 2' in the NCrystal lab coordinates. ≥ 0 -A
Axis 2 dir y [#] Unit vector component y defining the orientation of the crystallographic axis 'Axis 2' in the NCrystal lab coordinates. ≥ 0 -B
Axis 2 dir z [#] Unit vector component z defining the orientation of the crystallographic axis 'Axis 2' in the NCrystal lab coordinates. ≥ 0 -C
X' [cm] Position of the output frame in the original frame along the beam axis. ≥ 0 -x
Y' [cm] Horizontal position of the output frame in the original frame (to the left). ≥ 0 -y
Z' [cm] Vertical position of the output frame in the original frame. ≥ 0 -z
horiz. angle [deg] Rotation angle of the output frame about the z-axis in the horizontal (first rotation) plane. Rotation (0, 0) means along the original beam axis (x-axis). -360 to 360 -u
vert. angle [deg] Rotation angle of the output frame about the (new) y-axis in a vertical direction (second rotation). Rotation (0, 0) means along the original beam axis (x-axis). -360 to 360 -U
For more information about NCrystal, please visit the repository pagea at https://github.com/mctools/ncrystal.


Back to Top
Back to VITESS overview
vitess@fz-juelich.de