|
Текст подпрограммы и версий sf56r_c.zip |
Тексты тестовых примеров tsf56r_c.zip |
Вычисление обратной функции t - распределения вероятностей Стьюдента.
По заданному значению вероятности P sf56r_c вычисляет такое значение X, что абсолютное значение случайной величины, подчиненной закону t - распределения вероятностей Стьюдента со степенью свободы DF (DF ≥ 1), больше X.
G.W.Hill, Algorithm 396, Student's t - quantilies, CACM, 13 (10), 1970.
real sf56r_c (real *p, real *df, integer *ierr)
Параметры
| p - | заданное значение вероятности (тип: вещественный); |
| df - | заданное значение степени свободы t - распределения вероятностей Стьюдента (тип: вещественный); |
| ierr - | целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы функции; при этом: |
| ierr=65 - | когда заданная степень свободы t - распределения Стьюдента меньше 1; значение функции полагается равным 3.4e38; |
| ierr=66 - | когда заданное значение вероятности не принадлежит интервалу (0, 1); значение функции полагается равным 3.4e38. |
Версии: нет
Вызываемые подпрограммы
| sf51r_c - | вычисление обратной функции нормального pаспределения вероятностей. |
| utsf14_c - | подпрограмма выдачи диагностических сообщений в ходе работы функции sf56r_c. |
Замечания по использованию: нет
int main(void)
{
/* Local variables */
static int ierr;
extern float sf56r_c(float *, float *, int *);
static float p, x, df;
df = 1.f;
p = .7999537599f;
x = (float)sf56r_c(&p, &df, &ierr);
printf("\n %16.7e %16.7e \n",p,df);
printf("\n %16.7e %5i \n",x,ierr);
return 0;
} /* main */
Результаты: x = 0.325000000004 , ierr = 0