Compute inner product between two time domain waveforms, weighted by noisecurve.

def _inner_product(y,yr,psd):
    """
    Compute inner product between two time domain waveforms, weighted by noisecurve.
    """
    fmin = 40.
    fmax = 2000.
    fs = 16384.
    # fourier transform y and yr
    #y = sp.fft(y,n=None)
    #yr = sp.fft(yr,n=None)
    # compute product
    y = (1./fs)*y
    yr = (1./fs)*yr
    p = np.multiply(y,np.conjugate(yr))/psd
    product = max(abs(fs*sp.ifft(np.multiply(y,np.conjugate(yr))/psd)))
    return product