added precision_matrix in sample_from_gaussian