[AIT logo]

Institut für Astronomie und Astrophysik

Abteilung Astronomie

Sand 1, D-72076 Tübingen, Germany
[Uni logo]


KUIPERONE Source code in kuiperone.pro

KUIPERONE

Name
       KUIPERONE
Purpose
       Compute the one-sided Kuiper statistic (invariant Kolmogorov-Smirnov)
Explanation
       Returns the Kuiper statistic and associated probability
       for an array of data values and a user-supplied cumulative distribution
       function (CDF) of a single variable.   Algorithm adapted from KSONE
       in "Numerical Recipes" by Press et al. 2nd edition (1992)
       Kuiper's test is especially useful for data defined on a circle or
       to search for periodicity (see Paltani 2004, A&A, 420, 789).
Calling Sequence
       kuiperone, data, func_name, D, prob, [ /PLOT ]
Input Parameters
       data -  vector of data values, must contain at least 4 elements for the
               Kuiper statistic to be meaningful
       func_name - scalar string giving the name of the cumulative distribution
               function.    The function must be defined to accept the data
               vector as its only input (see example).
Output Parameters
       D - floating scalar giving the Kuiper statistic.   It
               specifies the sum of positive and negative deviations between the
               cumulative distribution of the data and the supplied function
       prob - floating scalar between 0 and 1 giving the significance level of
               the Kuiper statistic.   Small values of PROB show that the
               cumulative distribution function of DATA is significantly
               different from FUNC_NAME.
Keyword Parameters
       PLOT - If this keyword is set and non-zero, then KUIPERONE will display a
               plot of the CDF of the data with the supplied function
               superposed.   The data values where the Kuiper statistic is
               computed (i.e. at the maximum difference between the data CDF
               and the function) are indicated by vertical dashed lines.
               KUIPERONE accepts the _EXTRA keyword, so that most plot keywords
               (e.g. TITLE, XTITLE, XSTYLE) can also be passed to KUIPERONE.
Example
       Determine if a vector created by the RANDOMN function is really
       consistent with a Gaussian distribution.
       The CDF of a Gaussian is the error function except that a factor
       of 2 is included in the error function.   So we must create a special
       function:
       function gauss_cdf, x
       return, errorf( x/sqrt(2) )
       end
       IDL> data = randomn(seed, 50)          ;create data array to be tested
       IDL> kuiperone, data, 'gauss_pdf', D, prob, /PLOT     ;Use Kuiper test
       PROB gives the probability that DATA came from a Gaussian distribution
Note
       Note that the 2nd (1992) edition of Numerical Recipes includes
       a more accurate computation of the K-S significance for small
       values of N.
Procedures Used
       procedure PROB_KUIPER - computes significance of Kuiper distribution
Revision History
       Written     W. Landsman                   August, 1992
       Accept _EXTRA keywords   W. Landsman      September, 1995
       Fixed possible bug in plot display showing position maximum difference
       in histogram   M. Fardal/ W. Landsman      March, 1997
       Converted to IDL V5.0   W. Landsman   September 1997
       Adapted from KSONE      J. Ballet     July 2003

Last modified by pro2html on 2004 July 31 at 03:56 UTC

[Home Page] [Software, Documentation] [IDL Documentation] [Quick Reference] [Feedback]

Jörn Wilms (wilms@astro.uni-tuebingen.de)
Updated automatically