Normal Distribution

Is there a built-in math function to calculate normal distributions in VB or C# - like that in excel - NORMSDIST() 

Answer this question

Normal Distribution

  • StarRrr

    Thanks Rick van den Bosch  for the fast response. If I could only get that kind of speed for my other posts.

    I found the math equation with some other language's sample code and converted it to C# below.  (simular to Excel's NormsDist())

    public double CND(double X)

    {

    double L = 0.0;

    double K = 0.0;

    double dCND = 0.0;

    const double a1 = 0.31938153;

    const double a2 = -0.356563782;

    const double a3 = 1.781477937;

    const double a4 = -1.821255978;

    const double a5 = 1.330274429;

    L = Math.Abs(X);

    K = 1.0 / (1.0 + 0.2316419 * L);

    dCND = 1.0 - 1.0 / Math.Sqrt(2 * Convert.ToDouble(Math.PI.ToString())) * Math.Exp(-L * L / 2.0) * (a1 * K + a2 * K * K + a3 * Math.Pow(K, 3.0) + a4 * Math.Pow(K, 4.0) + a5 * Math.Pow(K, 5.0));

    if (X < 0)

    {

    return 1.0 - dCND;

    }

    else

    {

    return dCND;

    }

    }


  • alviny

    This function is not available in any of the framework classes as far as I know. I would think there are implementations to be found on the internet...

  • Normal Distribution