McStas logo McStas - A neutron ray-trace simulation package ILL; PSI; ESS Niels Bohr Institute DTU Physics

McStas

About McStas
 Conditions of use
 Authors/Contacts
 Project funding

Download
 Components
 Other Downloads (share)

Mailing list

Search web/mailinglist

Documentation
 Wiki (GitHub)
 McStas manual
 Publications

Links

Report bugs (GitHub)

Code-repository (GitHub)


The MCViNE_ConstantQE_process McStas Component

14.138  The MCViNE_ConstantQE_process McStas Component

Union process: Scatterer with fixed momentum transfer |Q| and energy transfer E.

Identification

  • Author: Fahima Islam (McStas port of the MCViNE ConstantQEKernel; MCViNE by J. Y. Y. Lin et al.)

  • Origin: MCViNE, https://github.com/mcvine/mcvine (mccomponents/lib/kernels/sample/ConstantQEKernel.cc)

  • Date: 2026-09-29

Description

Scattered neutrons have energy transfer E and |Q| fixed; the azimuth around ki is random. S(Q,E) = delta(|Q|-Q0) delta(E-E0) (unnormalised, as in MCViNE).

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_ConstantQE (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_ConstantQE_process(Q=3, E=20, scattering_coefficient=10)

Input parameters

Parameters in boldface are required; the others are optional.

Name

Unit

Description

Default

Q

Å\(^{-1}\)

Momentum transfer |Q|

1

E

meV

Energy transfer

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

  • Component source code found in file MCViNE_ConstantQE_process.comp.

  • MCViNE documentation: https://mcvine.github.io


Last Modified: Tuesday, 06-Oct-2026 21:19:10 CEST
Search website mailinglist archive GitHub repos