class MultivariateTDistribution implements MultivariateDistribution {

    public double density(RealVector vector) {
        if (dof == 0) {
            return 0;
        }
        RealVector _diff = vector.subtract(mean);
        double prob = 1. / dof * _diff.dotProduct(precisionMatrix.operate(_diff));
        return multiplier * Math.pow(1 + prob, -(dof + D) / 2);
    }

    public  MultivariateTDistribution(RealVector mean, RealMatrix covarianceMatrix, double degreesOfFreedom);

}