Example: Inverse of a User-Supplied Cumulative Distribution Function

In this example, InverseCdf is used to compute the point such that the probability is 0.9 that a standard normal random variable is less than or equal to the computed point.

import com.imsl.stat.*;

public class InverseCdfEx1 implements CdfFunction {

    public double cdf(double x) {
        return Cdf.normal(x);
    }

    public static void main(String args[]) throws Exception {
        double x1, p;

        p = 0.9;
        InverseCdfEx1 invcdf = new InverseCdfEx1();
        InverseCdf inv = new InverseCdf(invcdf);
        inv.setTolerance(1.0e-10);
        x1 = inv.eval(p, 0.0);
        System.out.println("The 90th percentile of a standard normal is " + x1);
    }
}

Output

The 90th percentile of a standard normal is 1.2815515655446006
Link to Java source.