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.
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).
Orientation: this process is anisotropic; its frame (Q vectors, reciprocal
vectors, atom positions) follows the ROTATED placement of this component.
The kernel code is shared with the standalone component MCViNE_Phonon_CoherentInelastic_SingleXtal (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_Phonon_CoherentInelastic_SingleXtal_process(idf_dir="MCViNE/fcc_toy_phonons", atoms="MCViNE/fcc_toy_atoms.dat", T=300)
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' ([AA] cartesian, [amu], [fm], [barn], [barn]), same order as in the IDF files
0
T
K
Temperature
300
dw_core
AA^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
AA^3
Unit cell volume; 0: (2pi)^3/|b1.(b2 x b3)| from Qgridinfo
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
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).
""
AT (
,
,
) RELATIVE
ROTATED (
,
,
) RELATIVE
Links
Source code for MCViNE_Phonon_CoherentInelastic_SingleXtal_process.comp.