# Вторая пачка часть 91

0 THEN DN := TRUE ELSE BEGIN {*** ВОПРОС О НЕОБХОДИМОСТИ БИСЕКЦИИ ***} IF (ABS(E)>=TOL1) AND (ABS(FA)>ABS(FB)) THEN BEGIN {*** ПРОВЕРКА НА КВАДРАТИЧ. ИНТЕРПОЛЯЦИЮ ***} IF A<>C THEN BEGIN Q := FA / FC; R := FB / FC; C := FB / FA; P:= S*(2.0*XM*Q*(Q-R)- (B-A)*(R-1.0)); Q := (Q-1.0)*(R-1.0)*(S-1.0); END ELSE BEGIN S := FB / FA; P := 2.0*XM*S; Q := 1.0 - S; END; {*** ВЫБОР ЗНАКА ДЛЯ Q ***} IF P > 0.0 THEN Q := -Q; P := ABS (P); {** ВОПРОС О ПРИМЕНИМОСТИ МЕТОДА ИНТЕРПОЛЯЦИИ **} IF ((2.0*P) < (3.0*XM*Q-ABS(TOL1*Q))) AND (P < (ABS(0.5*E*Q))) THEN BEGIN E := D; D := P/Q; GOTO 30; END; END; D := XM; E := D; 30: A := B; FA := FB; IF ABS(D) > TOL1 THEN B := B + D; IF ABS(D) <= TOL1 THEN B := B + SIGN(TOL1)*XM; FB := FUNC (B); IF (FB*(FC / ABS(FC))) > 0.0 THEN GOTO 20; END; UNTIL DN; ZEROIN := B; END. Процедура-функция проверялась на примере ре¬¬ше¬ния уравнения из п. 2.5 (см. табл. 1.11 и 1.12). Ре¬зуль¬та¬ты работы данной программы при¬во¬дят¬ся ниже: на отрезке [0, 1]: x = 0.150858; F(x) = -0.0000000000; i = 5. на отрезке [-3,-2]: x = -2.071157; F(x) = -0.0000000001; i = 7. на отрезке [2, 3]: x = 1.920299; F(x) = 0.0000000001; i = 7. 2.7. МЕТОДЫ УСКОРЕНИЯ СХОДИМОСТИ В применении к некоторым уравнениям рас¬смот¬¬рен¬ные итерационные методы сходятся до-вольно мед¬лен¬но. В таких случаях особое зна¬че¬ние приобретают спо¬со¬бы, позволяющие оп¬ти¬ми¬зи¬ро-вать итерационный про¬цесс путем ус¬ко¬ре¬ния схо¬ди¬мости метода итераций. Рас¬смотрим два на¬и¬бо¬лее часто употребляющихся ал¬го¬рит¬ма. Метод кратного корня. Ускорение сходимости мож¬но получить, если подобрать правую часть урав¬¬нения (1.15) так, что F'(?) = F''(?) = ... = F (m-1)(?) = 0, F (m)(?) ? 0, где ??- корень уравнения. Тогда для m = 3 ите¬ра¬ци¬он¬ный процесс будет оп¬ре¬де¬ляться формулой , (1

Индекс
Элементарные функции Линейные уравнения Нелинейные уравнения Случайные числа