14.126 The MCViNE_Phonon_CoherentInelastic_SingleXtal McStas Component
Coherent one-phonon scattering from a single crystal, using a full phonon dispersion on a
grid.
Identification
-
Author: Fahima
Islam (McStas port of the MCViNE phonon CoherentInelastic_SingleXtal kernel;
MCViNE by J. Y. Y. Lin et al.)
-
Origin: MCViNE, https://github.com/mcvine/mcvine
(mccomponents/lib/kernels/sample/phonon/CoherentInelastic_SingleXtal.cc)
-
Date: 2026-09-29
Description
Single-crystal coherent one-phonon scattering with dispersion and polarization vectors from
MCViNE IDF files (periodic over the reciprocal cell b1,b2,b3 given in Qgridinfo;
orient the crystal by rotating the component). For a final direction (4pi, or a cone
towards a target when focus_r>0) and a random branch among those with Emin <
1.5 Ei, all final speeds solving omega(Q) = |Ei-Ef| are found (Ridders’ method on
nsteps sub-intervals of [0,2vi]); one is chosen and weighted by the delta-function
Jacobian, |sum_d b_d/sqrt(M_d) exp(iQ.d)(Q.e_d)|^2, Bose and Debye-Waller
factors.
Transport (same as MCViNE HomogeneousNeutronScatterer): on the first passage the
neutron is forced to scatter at a uniformly chosen depth, weighted by path length,
attenuation exp(-(mu+sigma)x) and the scattering coefficient; on exit it is attenuated by
exp(-(mu+sigma)L_out). With order>1 further scatterings are sampled analogically
(truncated exponential). With p_transmit>0 that fraction of events is kept as the attenuated
direct beam. mu(v) = absorption_coefficient*2200/v. Events for which the kernel cannot
scatter (kinematically forbidden) are absorbed.
Geometry: box (xwidth,yheight,zdepth), cylinder (radius,yheight), hollow cylinder
(+thickness) or sphere (radius only). All vectors (Q, targets, reciprocal vectors, atom
positions) are in the component’s local frame.
Uses the shared runtime share/mcvine-lib.h/.c.
Example: MCViNE_Phonon_CoherentInelastic_SingleXtal(idf_dir="MCViNE/fcc_toy_phonons",
atoms="MCViNE/fcc_toy_atoms.dat", T=300, xwidth=0.01, yheight=0.01, zdepth=0.01)
Input parameters
Parameters in boldface are required; the others are optional.
|
|
|
Name |
Unit |
Description |
Default |
|
|
|
|
| | | | |
|
idf_dir |
str |
Directory with MCViNE IDF phonon
files: Qgridinfo, Omega2, Polarizations[,
DOS] |
0 |
|
atoms |
str |
Atoms file: one row per atom ’x y z
mass b_coh sigma_inc sigma_abs’ ([Å]
cartesian, [amu], [fm], [barn], [barn]),
same order as in the IDF files |
0 |
|
T |
K |
Temperature |
300 |
|
dw_core |
Å\(^{2}\) |
Debye-Waller core; <0: computed from
the DOS (idf_dir/DOS or dos) |
-1 |
|
dos |
str |
Optional DOS file for the Debye-Waller
factor (default: idf_dir/DOS) |
0 |
|
Vc |
Å\(^{3}\) |
Unit cell volume; 0: (2pi)^3/|b1.(b2 x
b3)| from Qgridinfo |
0 |
|
target_x |
m |
Target position (component frame) x |
0 |
|
target_y |
m |
Target position y |
0 |
|
target_z |
m |
Target position z |
0 |
|
target_index |
1 |
Relative index of a component to aim at
(overrides target_x/y/z when non-zero) |
0 |
|
focus_r |
m |
Radius of the target disk; 0: scatter into
4pi (MCViNE default) |
0 |
|
deltaV_Jacobi |
1 |
Relative velocity step for the numerical
Jacobian |
0.001 |
|
nsteps |
1 |
Sub-intervals for the root search in vf |
100 |
|
xacc |
m/s |
Root accuracy in vf |
10 |
|
unbiased |
1 |
0: MCViNE sampling (retries up to 100
direction/branch
draws until omega(Q)=|Ei-Ef| has a
solution, without correcting the weight:
over-estimates when many directions
have no solution). 1: single attempt,
unbiased |
0 |
|
radius |
m |
Outer radius of a cylinder (with yheight)
or of a sphere (yheight=0) |
0 |
|
xwidth |
m |
Width of a box sample |
0 |
|
yheight |
m |
Height of a box or cylinder sample |
0 |
|
zdepth |
m |
Depth of a box sample |
0 |
|
thickness |
m |
Wall thickness of a hollow cylinder (0:
filled) |
0 |
|
pack |
1 |
Packing factor (scales absorption and
scattering coefficients) |
1 |
|
p_transmit |
1 |
Monte Carlo fraction of events kept as
unscattered transmitted beam (0: always
scatter) |
0 |
|
order |
1 |
Maximum number of scattering events
per neutron (1: single scattering) |
1 |
|
|
| |
| |
|
|
|
|
|
|
Links