Метод простых итераций может использоваться как для решения одного уравнения, так и в многомерном случае для решения системы уравнений. Однако в данном разделе мы рассмотрим только решение одного уравнения, так как при этом проще почувствовать многие особенности метода. А многомерный случай будет рассмотрен в разд. 4.7.

В отличие от всех других методов, простые итерации применимы к уравнениям вида (4.2). В одномерном случае это означает уравнение вида х = :£и(х) (4.5)

Индекс "и" в этом уравнении введен для того, чтобы подчеркнуть принципиальную разницу между функцией данного метода и функциями т!(х), используемыми в других методах.

В отличие от рассмотренных ранее методов дихотомии и хорд, в методе простых итераций задается не начальный интервал неопределенности [а, Ь], а начальная точка х(0) - начальное приближение корня. А последующие итерации строятся очень просто. Если обозначить за х(к) приближение корня на к-ой итерации, то следующее приближение рассчитывается по формуле х(к+1) = £и(х(к)) (4.6)

На рис. 4.5 показан ход итераций для двух случаев: при положительном и отрицательном знаке производной тУ(х). На рисунках нанесена прямая у = х и функция у = :£и(х). Корень уравнения лежит в точке пересечения прямой и функции. Расчет начинается с точки х<°), лежащей выше или ниже корня. Итерация заключается в расчете :£и(х(0)) (точка на кривой у = :£и(х) при х = х<°)) и присваивании полученного значения аргументу х (горизонтальное перемещение на графике к прямой у = х). Получается следующее приближение к корню х(1). Далее процесс продолжается по той же схеме, а последовательность приближений х(к> стремится к корню.

4.4 Метод простых итераций одномерный случай

Рис. 4.5. Метод простых итераций при т"и'(х) > 0 (а) и при т"и'(х) < 0 (6)

При 1и'(х) > 0 приближение к корню одностороннее. Все значения х(к> или больше, или меньше корня. При тУ(х) < 0 значения х(к> поочередно то больше, то меньше корня. Это выгодно, так как значения на двух последовательных итерациях ограничивают интервал неопределенности и можно надежно гарантировать погрешность определения корня. Однако поскольку в большинстве практических задач знак производной тУ(х) неизвестен, гарантию точности получить нельзя. Приходится так же, как рассматривалось в разд. 4.3 для метода хорд, использовать в критерии окончания изменение приближения корня за итерацию: т.е. завершать расчет, когда |х(к+1) - х<к)| окажется меньше заданной допустимой погрешности по аргументу. Конечно, как и в методе хорд, это не гарантирует определения корня с погрешностью, не превышающей заданную. Но другого выхода нет. Кстати, в методе хорд погрешности по аргументу и невязке идентичны. Невязка - разность между левой и правой частями уравнения (4.6). Но это и есть сдвиг аргумента на очередной итерации, как следует из соотношения (4.5). Так что в методе простых итераций специально задавать допустимую погрешность по невязке не имеет смысла.

Анализ показывает, что метод обеспечивает сходимость только в случае, если производная тУ(х) по модулю меньше 1. Если же тУ(х) > 1 или 1и'(х) < -1 (см. рис. 4.6), то метод расходится, и каждое следующее приближение лежит дальше от корня, чем предыдущее. В этом случае критерии окончания никогда не будут удовлетворены и метод или зациклится (будет работать бесконечно), или, что вероятнее всего, рано или поздно возникнут вычислительные проблемы (например, переполнение) и работа приложения прервется. Поэтому в алгоритм должны быть введены соответствующие проверки сходимости, которые будут обсуждены позднее при рассмотрении реализации алгоритма. Кроме того, если вид уравнения известен заранее в аналитическом виде, то часто можно записать его в такой форме, которая гарантировала бы сходимость.


|Следующая страница ⇒

Приемы программирования в Delphi на основе VCL



Новости за месяц

  • Май
    2020
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс