|
Текст подпрограммы и версий ( Фортран ) zf20r.zip zf20d.zip |
Тексты тестовых примеров ( Фортран ) tzf20r.zip tzf20d.zip |
|
Текст подпрограммы и версий ( Си ) zf20r_c.zip zf20d_c.zip |
Тексты тестовых примеров ( Си ) tzf20r_c.zip tzf20d_c.zip |
|
Текст подпрограммы и версий ( Паскаль ) zf20r_p.zip zf20e_p.zip |
Тексты тестовых примеров ( Паскаль ) tzf20r_p.zip tzf20e_p.zip |
Вычисление нуля вещественной функции на заданном интервале методом хорд.
ZF20R вычисляет нуль вещественной функции F (x) на интервале (A, B), на котором F (x) меняет знак, с заданной точностью EPS методом хорд.
И.С.Березин, Н.П.Жидков. Методы вычислений, т.1. Изд - во "Наука", 1966.
SUBROUTINE ZF20R (F, A, B, EPS, ROOT, ITMAX, IERR)
Параметры
| F - | имя вещественной подпрограммы - функции вычисления F (x) в любой точке интервала (A, B); |
| A, B - | заданные нижняя и верхняя границы интервала, на котором F (x) меняет знак (тип: вещественный); |
| EPS - | заданная абсолютная погрешность вычисления нуля функции (тип: вещественный); |
| ROOT - | вещественная переменная, значение которой в результате работы подпрограммы полагается равным вычисленному нулю функции F (x); |
| ITMAX - | целая переменная, значение которой перед началом работы подпрограммы должно быть положено равным максимальному числу операций, ориентировочно требуемых для обеспечения сходимости к нулю функции; |
| IERR - | целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы подпрограммы; при этом |
| IERR=65 - | когда нуль функции не может быть посчитан в пределах заданного числа итераций; |
| IERR=66 - | когда функция не меняет знака на заданном интервале |
Версии
| ZF20D - | вычисление нуля вещественной функции на заданном интервале методом хорд в режиме вычислений с удвоенной точностью. При этом параметры A, B, EPS и ROOT должны иметь тип DOUBLE PRECISION, а подпрограмма - функция вычисления F (x) должна быть оформлена как DOUBLE PRECISION FUNCTION |
Вызываемые подпрограммы
| UTZF10 - | подпрограмма выдачи диагностических сообщений при работе подпрограммы ZF20R |
| UTZF11 - | подпрограмма выдачи диагностических сообщений при работе подпрограммы ZF20D |
Замечания по использованию
| В подпрограммах ZF20R и ZF20D имеется общий блок COMMON /ZF20RR/ ITER. Переменная ITER полагается равной количеству итераций, выполненных при вычислении нуля функции F (x) |
FUNCTION F (X)
F = SIN(X)
RETURN
END
EXTERNAL F
COMMON /ZF20RR/ ITER
A = - 2.57
B = 1.57
EPS = 1.E - 5
ITMAX = 30
CALL ZF20R (F, A, B, EPS, ROOT, ITMAX, IERR)
Результаты:
ROOT = - 0.968786E - 16
ITER = 7
IERR = 0