use unscaled_cov as core function