Решение трансцендентных уравнений методом простых итераций

Исходное уравнение (3.1) преобразуем к эквивалентному уравнению:

x = (x). (3.8)

Пусть известно начальное приближение (полученное, например, на этапе отделения корней): x = x 0. Подставим его в правую часть (3.8) и получим новое приближение: x1 = (x0). Повторяя эту процедуру, будем иметь в общем виде на некотором k-м шаге:

xk = (xk-1) .

В качестве условия окончания вычислительного процесса можно взять выполнение неравенства: ½xk - xk-1½ < .

Значение xk, удовлетворяющее ему, и есть корень уравнения F(x, a1, a2, ..., ak) = 0.

Геометрическая интерпретация этого метода приведена на рис.3.8, 3.9. Здесь x* - истинное, искомое значение корня; x0 - начальное приближение к корню; x1, x2, x3 - оче­редные итерации.

Рис.3.8. Рис.3.9.

При испо­ль­зовании этого метода возникает вопрос о его сходимос­ти. Дело в том, что при некоторых условиях расстояние между истинным корнем и прибли­жениями к нему может возрастать с каждой новой итерацией, как это показано на рис.3.10, 3.11.

Рис.3.10. Рис.3.11.

Условием сходимости метода простых итераций является выполнение в окрестности искомого корня неравенства:

½ (x)½ < 1 (3.9)

Это условие является достаточным, т.е. если оно выполняется, то процесс обязательно схо­­дится; если же условие (3.9) не выполняется или выполняется не во всех точках

x0, x1, x2, ..., xk, ... ,

то заранее сказать что-либо конкретное о сходимости нельзя.

Итак, для решения уравнения F(x) = 0методом простых итераций надо преобразо­вать его к уравнению вида x = (x) так, чтобы выполнялось условие ½ (x)½ < 1. Схо­димость к истинному корню будет тем быстрее, чем ближе к единице значение (x).

Существует более или менее универсальный способ преобразования уравнения F(x, a1, a2, ..., ak) = 0к виду x = (x):

F(x) = 0 Þ C . F(x) = 0 Þ C . F(x) + x = x (3.15)

Здесь C - некоторый параметр, выбираемый из условия сходимости процесса.

При использовании преобразования (3.15) условием окончания вычислительного про­­це­сса является выполнение неравенства

.

В программе необходимо указывать функцию F(x) и вводить вычисленный заранее параметрС и значение допустимой погрешности . Программа должна осуществлять не более 100 итераций. Если за 100 итераций не достигнута требуемая точность, то программа выводит сообщение об отсутствии сходимости и прекращает работу.