Documentation of 'jdistlib.Tukey' Java class
Tukey
jdistlib

Class Tukey



  • public class Tukey
    extends GenericDistribution

    Computes the probability and quantile that the maximum of rr studentized ranges, each based on cc means and with df degrees of freedom for the standard error, is less than q.

    The algorithm is based on that of the reference.

    REFERENCE

    Copenhaver, Margaret Diponzio & Holland, Burt S. Multiple comparisons of simple effects in the two-way analysis of variance with fixed effects. Journal of Statistical Computation and Simulation, Vol.30, pp.1-15, 1988.

    RJ's Note: See Algorithm AS 190 by Lund and Lund

    • Constructor Detail

      • Tukey

        public Tukey(double rr,
                     double cc,
                     double df)
    • Method Detail

      • cumulative

        public static final double cumulative(double q,
                                              double rr,
                                              double cc,
                                              double df,
                                              boolean lower_tail,
                                              boolean log_p)

        function ptukey() [was qprob() ]:

        q = value of studentized range
        rr = no. of rows or groups
        cc = no. of columns or treatments
        df = degrees of freedom of error term
        ir[0] = error flag = 1 if wprob probability > 1
        ir[1] = error flag = 1 if qprob probability > 1

        qprob = returned probability integral over [0, q]

        The program will not terminate if ir[0] or ir[1] are raised.

        All references in wprob to Abramowitz and Stegun are from the following reference:

        Abramowitz, Milton and Stegun, Irene A. Handbook of Mathematical Functions. New York: Dover publications, Inc. (1970).

        All constants taken from this text are given to 25 significant digits.

        nlegq = order of legendre quadrature
        ihalfq = int ((nlegq + 1) / 2)
        eps = max. allowable value of integral
        eps1 & eps2 = values below which there is no contribution to integral.

        d.f. <= dhaf: integral is divided into ulen1 length intervals. else
        d.f. <= dquar: integral is divided into ulen2 length intervals. else
        d.f. <= deigh: integral is divided into ulen3 length intervals. else
        d.f. <= dlarg: integral is divided into ulen4 length intervals.
        d.f. > dlarg: the range is used to calculate integral.

        M_LN2 = log(2)
        xlegq = legendre 16-point nodes
        alegq = legendre 16-point coefficients

        The coefficients and nodes for the legendre quadrature used in qprob and wprob were calculated using the algorithms found in:

        Stroud, A. H. and Secrest, D.
        Gaussian Quadrature Formulas.
        Englewood Cliffs,
        New Jersey: Prentice-Hall, Inc, 1966.

        All values matched the tables (provided in same reference) to 30 significant digits.

        f(x) = .5 + erf(x / sqrt(2)) / 2 for x > 0

        f(x) = erfc( -x / sqrt(2)) / 2 for x < 0

        where f(x) is standard normal c. d. f.

        if degrees of freedom large, approximate integral with range distribution.

      • quantile

        public static final double quantile(double p,
                                            double rr,
                                            double cc,
                                            double df,
                                            boolean lower_tail,
                                            boolean log_p)

        Copenhaver, Margaret Diponzio & Holland, Burt S. Multiple comparisons of simple effects in the two-way analysis of variance with fixed effects. Journal of Statistical Computation and Simulation, Vol.30, pp.1-15, 1988.

        Uses the secant method to find critical values.

        p = confidence level (1 - alpha)
        rr = no. of rows or groups
        cc = no. of columns or treatments
        df = degrees of freedom of error term

        ir(1) = error flag = 1 if wprob probability > 1
        ir(2) = error flag = 1 if ptukey probability > 1
        ir(3) = error flag = 1 if convergence not reached in 50 iterations = 2 if df < 2

        qtukey = returned critical value

        If the difference between successive iterates is less than eps, the search is terminated

      • random

        public static final double random(double rr,
                                          double cc,
                                          double df,
                                          RandomEngine random)
        Tukey RNG by inversion -- WARNING: Untested
        Parameters:
        rr -
        cc -
        df -
        random -
        Returns:
        random variate
      • random

        public static final double[] random(int n,
                                            double rr,
                                            double cc,
                                            double df,
                                            RandomEngine random)
      • density

        public static final double density(double x,
                                           double rr,
                                           double cc,
                                           double df,
                                           boolean log_p)
      • density

        public static final double density(double x,
                                           double rr,
                                           double cc,
                                           double df,
                                           boolean log_p,
                                           double diff)
        Density of Tukey HSD distribution using differentials of the cumulative --- WARNING: Untested!
        Parameters:
        x -
        rr -
        cc -
        df -
        log_p -
        diff - tunable delta (set to 1e-10) in the preceding routine
        Returns:
        Density value
      • density

        public double density(double x,
                              boolean log)
        Density of Tukey HSD distribution using differentials of the cumulative --- WARNING: Untested!
        Specified by:
        density in class GenericDistribution
      • quantile

        public double quantile(double q,
                               boolean lower_tail,
                               boolean log_p)
        Specified by:
        quantile in class GenericDistribution

DMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.