Текст подпрограммы и версий ( Фортран ) zf17r.zip zf17d.zip |
Тексты тестовых примеров ( Фортран ) tzf17r.zip tzf17d.zip |
Текст подпрограммы и версий ( Си ) zf17r_c.zip zf17d_c.zip |
Тексты тестовых примеров ( Си ) tzf17r_c.zip tzf17d_c.zip |
Текст подпрограммы и версий ( Паскаль ) zf17r_p.zip zf17e_p.zip |
Тексты тестовых примеров ( Паскаль ) tzf17r_p.zip tzf17e_p.zip |
Вычисление нуля вещественной функции (трансцендентного уравнения) на заданном интервале комбинированным методом Ньютона и дихотомии.
ZF17R вычисляет нуль вещественной функции y = F (x) на интервале (A, B), на котором F (x) меняет знак, с заданной точностью EPS комбинированным методом Ньютона и дихотомии.
И.С.Березин, Н.П.Жидков. Методы вычислений, т.1. Изд - во "Наука", 1966.
SUBROUTINE ZF17R (FUNCD, A, B, EPS, ROOT, ITMAX, IERR)
Параметры
FUNCD - | имя подпрограммы вычисления заданной функции и ее производной в точке X; оформляется в виде подпрограммы с тремя формальными параметрами: |
X - | точка, в которой вычисляется значение функции и ее производной (тип: вещественный); |
F - | вещественная переменная, значение которой полагается равной значению функции в точке X; |
DF - | вещественная переменная, значение которой полагается равной значению производной функции в точке X |
A, B - | заданные нижняя и верхняя границы интервала, на котором функция меняет знак (тип: вещественный); |
EPS - | заданная абсолютная погрешность вычисления нуля функции (тип: вещественный); |
ROOT - | вещественная переменная, значение которой в результате работы подпрограммы полагается равным вычисленному нулю функции; |
ITMAX - | целая переменная, значение которой перед началом работы подпрограммы должно быть положено равным максимальному числу итераций, ориентировочно требуемых для обеспечения сходимости к нулю функции; |
IERR - | целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы подпрограммы; при этом |
IERR=65 - | когда нуль функции не может быть посчитан в пределах заданного числа итераций; |
IERR=66 - | когда функция не меняет знака на заданном интервале |
Версии
ZF17D - | вычисление нуля вещественной функции на заданном интервале комбинированным методом Ньютона и дихотомии в режиме вычислений с удвоенной точностью. При этом параметры A, B, EPS, ROOT и формальные параметры подпрограммы FUNCD должны иметь тип DOUBLE PRECISION |
Вызываемые подпрограммы
UTZF10 - | подпрограмма выдачи диагностических сообщений при работе подпрограммы ZF17R |
UTZF11 - | подпрограмма выдачи диагностических сообщений при работе подпрограммы ZF17D |
Замечания по использованию
В подпрограммах ZF17R и ZF17D имеется общий блок COMMON /ZF17RR/ ITER. Переменная ITER полагается равной количеству итераций, выполненных при вычислении нуля функции. |
SUBROUTINE FUNCD (X, F, DF) F = SIN(X) DF = COS(X) RETURN END EXTERNAL FUNCD COMMON /ZF17RR/ ITER A = - 2.57 B = 1.57 EPS = 1.E - 5 ITMAX = 30 CALL ZF17R (FUNCD, A, B, EPS, ROOT, ITMAX, IERR) Результаты: ROOT = - 0.000008279458 ITER = 5 IERR = 0