Component Manual for the Neutron Ray-Tracing Package McStas, version 3.9

14.136  The MCViNE_LorentzianBroadened_E_Q_process McStas Component

Union process: Isotropic dispersion E(Q) broadened by a Lorentzian of Q-dependent width.

Identification

Description

S(Q,E) = S(Q) L(E - E(Q); gamma(Q)) with L a Lorentzian of half width at half maximum gamma(Q). Q is sampled uniformly in [Qmin,Qmax]; the energy offset is sampled from the line shape (up to 100 attempts). Neutrons with Ei below min(E(Q)-3w(Q)) do not scatter.

Functions are given as strings evaluated at run time (MCViNE uses fparser): + - * / ^ (or **), % , comparisons, && ||, if(c,a,b), sin cos tan asin acos atan sinh cosh tanh exp log log10 log2 sqrt abs floor ceil int sign cbrt, pow atan2 min max hypot fmod, constants pi and e.

Union process. Part of the Union components: define this process, collect it into a material with Union_make_material (absorption is set there with my_absorption, the absorption inverse penetration depth at 2200 m/s), assign the material to Union_box/Union_cylinder/Union_sphere/Union_mesh geometries, and add a Union_master after them. Geometry, attenuation and multiple scattering are handled by Union_master; this component provides the MCViNE kernel: the scattering coefficient and the final-state sampling (weight). Isotropic process (powder/liquid-like); rotation is irrelevant. The kernel code is shared with the standalone component MCViNE_LorentzianBroadened_E_Q (mcvine-lib.c). Uses share/mcvine-lib.h/.c and share/mcvine-union-lib.h/.c; the process type MCViNE is declared in share/union-lib.h and registered with Union_master in share/mcvine-union-lib.h.

Example: MCViNE_LorentzianBroadened_E_Q_process(E_Q="20*sin(Q*1.5)^2", S_Q="1", gamma_Q="0.5", Qmin=0, Qmax=10, scattering_coefficient=10)

Input parameters

Parameters in boldface are required; the others are optional.

Name

Unit

Description

Default

E_Q

str

E(Q) expression [meV], variable Q [Å^-1]

"10"

S_Q

str

S(Q) expression

"1"

gamma_Q

str

Lorentzian HWHM gamma(Q) [meV]

"1"

Qmin

Å\(^{-1}\)

Lower Q bound

0

Qmax

Å\(^{-1}\)

Upper Q bound

10

unbiased

1

0: MCViNE sampling (retries without acceptance correction: over-weights when part of the Q range is forbidden). 1: single attempt, unbiased

0

scattering_coefficient

m\(^{-1}\)

Scattering coefficient (inverse penetration depth for scattering)

0

sigma_scat

barn

Alternative: scattering cross section per unit cell (used when Vc>0)

0

Vc

Å\(^{3}\)

Unit cell volume; when >0 the coefficient is sigma_scat/Vc

0

packing_factor

1

Packing factor (scales the scattering coefficient)

1

interact_fraction

1

Union: fraction of interactions forced to this process (-1: by cross section)

-1

init

string

Deprecated and unused, accepted like on the other Union components (see Union_init).

""

Links