Evaluates the hypergeometric distribution function.
#include <imsl.h>
float imsl_f_hypergeometric_cdf (int k, int n, int m, int l)
The type double procedure is imsl_d_hypergeometric_cdf.
int k
(Input)
Argument for which the hypergeometric distribution function is to be
evaluated.
int n
(Input)
Sample size n must be greater than
or equal to k.
int m
(Input)
Number of defectives in the lot.
int l
(Input)
Lot size l must be greater than
or equal to n
and m.
The probability that k or fewer defectives occur in a sample of size n drawn from a lot of size l that contains m defectives.
The function imsl_f_hypergeometric_cdf
evaluates the distribution function of a hypergeometric random variable with
parameters n, l, and m. The hypergeometric random variable
x can be thought of as the number of items of a given type in a random
sample of size n that is drawn without replacement from a population of
size
l containing m items of this type. The probability
function is

where i = max (0, n − l + m).
If k is greater than or equal to i and less
than or equal to min (n, m), imsl_f_hypergeometric_cdf
sums the terms in this expression for j going from
i up to
k. Otherwise, 0 or 1 is returned, as appropriate.
To avoid rounding in the accumulation, imsl_f_hypergeometric_cdf
performs the summation differently, depending on whether k is greater
than the mode of the distribution, which is the greatest integer in
(m + 1)
(n + 1)/(l + 2).
Suppose X is a hypergeometric random variable with n = 100, l = 1000, and m = 70. This example evaluates the distribution function at 7.
#include <imsl.h>
void
main()
{
int k = 7;
int l =
1000;
int
m = 70;
int n =
100;
float
p;
p =
imsl_f_hypergeometric_cdf(k,n,m,l);
printf("\nPr (x <=
7) = %6.4f", p);
}
Pr (x <= 7) = 0.599
IMSL_LESS_THAN_ZERO The input argument, k, is less than zero.
IMSL_K_GREATER_THAN_N The input argument, k, is greater than the sample size.
IMSL_LOT_SIZE_TOO_SMALL Lot size must be greater than or equal to n and m.
|
Visual Numerics, Inc. PHONE: 713.784.3131 FAX:713.781.9260 |