Accord.Statistics.Distributions.Multivariate.NormalDistribution.NormalDistribution C# (CSharp) Method

NormalDistribution() public method

Constructs a multivariate Gaussian distribution with given mean vector and covariance matrix.
public NormalDistribution ( double mean, double covariance ) : System
mean double
covariance double
return System
        public NormalDistribution(double[] mean, double[,] covariance)
            : base(mean.Length)
        {
            int k = mean.Length;

            this.mean = mean;
            this.covariance = covariance;
            variance = covariance.Diagonal();

            double detSqrt = System.Math.Sqrt(System.Math.Abs(covariance.Determinant()));
            constant = 1.0/(System.Math.Pow(2.0*System.Math.PI, k/2.0)*detSqrt);

            chol = new CholeskyDecomposition(covariance, true);

            if (chol.Determinant == 0)
            {
                // The covariance matrix is singular, use pseudo-inverse
                svd = new SingularValueDecomposition(covariance);
            }
        }

Same methods

NormalDistribution::NormalDistribution ( int dimension ) : System