omega_from_core#
- anri.diffract.omega_from_core(asin_term, phi, etasign)[source]#
Select one Friedel branch from
omega_solns_core()and wrap it to degrees.- Parameters:
asin_term (
Array) – \(\arcsin(\delta / R)\) in radians, fromomega_solns_core()phi (
Array) – Phase in radians, fromomega_solns_core()etasign (
float) – +1 (omega1 in ImageD11) or -1 (omega2 in ImageD11) to select which omega solution to return
- Returns:
omega (
jax.Array) – Omega angle in degrees, wrapped to (-180, 180]
Notes
The two solutions are \(\omega_1 = \arcsin(\delta/R) - \phi\) and \(\omega_2 = -\arcsin(\delta/R) - \phi - \pi\), which the
etasignfactor and the \(\pi\) shift express as one branchless expression.