ess.amor.conversions.theta#
- ess.amor.conversions.theta(wavelength, divergence_angle, L2, sample_rotation, detector_rotation)[source]#
Angle of reflection.
Computes the angle between the scattering direction of the neutron and the sample surface.
\(\gamma^*\) denotes the angle between the scattering direction and the horizontal plane. \(\gamma\) denotes the angle between the ray from sample position to detection position and the horizontal plane. \(L_2\) is the length of the ray from sample position to detector position. \(v\) is the velocity of the neutron at the sample. \(t\) is the travel time from sample to detector.
The parabolic trajectory of the neutron satisfies
\[\sin(\gamma) L_2 = \sin(\gamma^*) v t - \frac{g}{2} t^2\]and
\[\cos(\gamma) L_2 = \cos(\gamma^*) vt\]where \(g\) is the gravitational acceleration.
The second equation tells us that the approximation \(L_2=vt\) will have a small error if \(\gamma\) is close to 0 and the difference between \(\gamma\) and \(\gamma^*\) is small.
Using this approximation we can solve the first equation, and by expressing \(v\) in terms of the wavelength we get
\[\sin(\gamma^*) = \sin(\gamma) + \frac{g}{2} \frac{L_2 \lambda^2 h^2}{m_n^2}.\]Finally, the scattering angle is obtained by subtracting the sample rotation relative to the horizontal plane.