Текст подпрограммы и версий
sf51r_c.zip 
Тексты тестовых примеров
tsf51r_c.zip 

Функция:  sf51r_c

Назначение

Вычисление обратной функции нормального распределения вероятности.

Математическое описание

SF51R_c вычисляет значение  x  такое, что
                      x
     1/(2π)1/2  ∫ e - t*t / 2 dt  =  P  ,
                   -∞ 
где  P - заданное значение вероятности (0 < P < 1). 

Алгоритм, реализованный в подпрограмме, основан на использовании минимаксных аппроксимаций.

A.J.Strecok, On the Calculation of the Inverse of the Error Function, Mathematics of Computation, 22(101), 1968.

Использование

    real sf51r_c (real *p, integer *ierr)

Параметры

p - заданное значение вероятности (тип: вещественный);
ierr - целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы функции; при этом:
ierr=65 - когда заданное значение вероятности p не принадлежит интервалу (0, 1); значение функции полагается равным 3.4e38.

Версии: нет

Вызываемые подпрограммы

utsf12_c - подпрограмма выдачи диагностических сообщений в ходе работы функции sf51r_c.

Замечания по использованию: нет

Пример использования

int main(void)
{
    /* Local variables */
    extern float sf51r_c(float *, int *);
    static int ierr;
    static float p, r__;

    p = .5f;
    r__ = (float)sf51r_c(&p, &ierr);

    printf("\n %16.7e %16.7e %5i \n",p,r__,ierr);
    return 0;
} /* main */


Результаты:    r__  =  0.0 ,  ierr  =  0