add function grosscovercompute