Evaluates the Student’s t cumulative distribution function (CDF).
#include <imsls.h>
float imsls_f_t_cdf (float t, float df)
The type double function is imsls_d_t_cdf.
float t
(Input)
Argument for which the Student’s t cumulative distribution
function is to be evaluated.
float df
(Input)
Degrees of freedom. Argument df must be greater
than or equal to 1.0.
The probability that a Student’s t random variable takes a value less than or equal to the input t.
Function imsls_f_t_cdf
evaluates the cumulative distribution function of a Student’s t random
variable with
= df
degrees of freedom. If
, the following identity relating the
Student’s t cumulative distribution function,
to the incomplete beta ratio
function
is used:

where
and

If
, the solution space is partitioned
into four algorithms as follows: If
> 64 and
< 0.1, a
Cornish-Fisher expansion is used to evaluate the distribution function. If
< 64 and an integer
and |t| < 2.0, a trigonometric series is used (see
Abramowitz and Stegun 1964, Equations 26.7.3 and 26.7.4 with some
rearrangement). If
< 64 and an
integer and |t| > 2.0, a series given by Hill (1970)
that converges well for large values of t is used. For the
remaining
cases,
is calculated using the identity:

where
.
Figure 11-9 Plot of Ft (t, 6.0)
This example finds the probability that a t random variable with 6 degrees of freedom is greater in absolute value than 2.447. The fact that t is symmetric about 0 is used.
#include <imsls.h>
#include <stdio.h>
int main ()
{
float t = 2.447, df = 6.0, p;
p = 2.0*imsls_f_t_cdf(-t,df);
printf("Pr(|t(%1.0f)| > %5.3f) = %6.4f\n", df, t, p);
}
Pr(|t(6)| > 2.447) = 0.0500