def _overlap(y,yr,psd):
    """ returns the detector noise weighted inner product """
    yyr  = _inner_product(y,yr,psd)
    yy   = _inner_product(y,y,psd)
    yryr = _inner_product(yr,yr,psd)
    olap = yyr/np.sqrt(yy*yryr)
    return olap