I should have stopped a while ago, but I appear to lack self control . Anyway, after fixing that, d_90_t is imaginary (as you show on the plot on p.7), so the computation of diff_90_t is probably not doing what you want; I think as written it just results in abs(sqrt(2) * d).Yes, thank you. I had been reflexively using rfft (assumes purely Real, Hermitian).
This is all starting to dredge up memories of time/phase shift and frequency shift/modulation properties of Fourier transforms.
Should probably stop before we have to get into quadrature sampling and how 2*bandwidth is not always necessary