Текст подпрограммы и версий ( Фортран )
zf15r.zip  zf15d.zip 
Тексты тестовых примеров ( Фортран )
tzf15r.zip  tzf15d.zip 
Текст подпрограммы и версий ( Си )
zf15r_c.zip  zf15d_c.zip 
Тексты тестовых примеров ( Си )
tzf15r_c.zip  tzf15d_c.zip 
Текст подпрограммы и версий ( Паскаль )
zf15r_p.zip  zf15e_p.zip 
Тексты тестовых примеров ( Паскаль )
tzf15r_p.zip  tzf15e_p.zip 

Подпрограмма:  ZF15R

Назначение

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

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

ZF15R вычисляет нуль вещественной функции Y = F (X). Подпрограмма использует метод бисекции с линейной интерполяцией.

И.С.Березин, Н.П.Жидков, Методы вычислений, т.1, "Hаука", 1966.

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

    SUBROUTINE  ZF15R (F, A, B, EPS, ROOT, ITMAX, IERR) 

Параметры

F - имя вещественной подпрограммы - функции вычисления  F (X) в любой точке интервала (A, B);
A, B - заданная нижняя и верхняя границы интервала, на котоpом  F (X) меняет знак (тип: вещественный);
EPS - заданная абсолютная погрешность вычисления нуля функции (тип: вещественный);
ROOT - вещественная переменная, значение которой в pезультате работы подпрограммы полагается равным вычисленному нулю функции  F (X);
ITMAX - целая переменная, значение которой перед началом работы подпрограммы должно быть положено равным максимальному числу итераций, ориентировочно требуемых для обеспечения сходимости; ее значение в результате работы подпрограммы полагается равным действительному числу итераций, потребовавшихся для обеспечения сходимости;
IERR - целая переменная, служащая для сообщения об ошибках обнаруженных в ходе работы подпрограммы; при этом:
IERR=65 - когда нуль функции не может быть посчитан в пределах заданного числа итераций;
IERR=66 - когда функция не меняет знака на заданном интервале.

Версии

ZF15D - вычисление нуля вещественной функции на заданном интервале методом бисекции с линейной интерполяцией; в режиме вычислений с повышенной точностью. При этом параметры A, B, EPS и ROOT должны иметь тип DOUBLE PRECISION, а подпрограмма - функция вычисления   F (X) должна быть оформлена как DOUBLE PRECISION  FUNCTION.

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

UTZF10 - подпрограмма выдачи диагностических сообщений при работе подпрограммы ZF15R.
UTZF11 - подпрограмма выдачи диагностических сообщений при работе подпрограммы ZF15D.

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

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

       FUNCTION  F(X)
       F = X*X + 2. *X - 6.
       RETURN 
       END

       EXTERNAL  F
       A = - 3.3
       B = 4.6
       EPS = 0.00001
       ITMAX = 20
       CALL  ZF15R (F, A, B, EPS, ROOT, ITMAX, IERR)

Результаты:   ROOT  = 1.64575132 ,  ITMAX  =  8 ,  IERR  =  0