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:
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 etasign factor and the \(\pi\) shift express as one branchless expression.