Make a signal.
Make some less than correlated noise
Add the signal to the noise
Use the signal as the reference.
Take the Fourier transform of the noisy signal to get F.sig
Take the Fourier transform of the reference to get F.ref
Take the real of F.sig
Take the real of F.ref
Multiply the real parts of F.sig with F.ref. This is straightforward if you first think about just recovering the ref. with an inverse transform and then try to do the same thing. Here you must undo what is effectively a squaring so you must take the sqrt. To preserve the sign use the SIGN function.
SIGN(IMREAL(F.ref))*SQRT(ABS(IMREAL(F.sig)*IMREAL(F.ref)))
Take the imaginary of F.sig
Take the imaginary of F.ref
Multiply the two imaginary parts:
SIGN(IMAGINARY(F.ref))*SQRT(ABS(IMAGINARY(F.sig)*IMAGINARY(F.ref)))
Now recombine the real product and the imaginary product, COMPLEX(real, imaginary)
Then take the inverse Fourier transform of the complex number.
The real of the inverse should pretty much graph over the original function.
Bret Cahill