ПОИСК Статьи Рисунки Таблицы Метод Ньютона (метод касательных) из "Компьютеры Применение в химии" Для большей наглядности рассмотрим рисунок. [c.117] Пусть при поиске корня получено значение x (это значение можно считать начальным приближением). Сначала рассчитывают значение функции при X = X,. Затем проводят касательную к графику функции /(V) в точке с координатами х , /(х,) и находят точку пересечения этой касательной с осью л . Точка пересечения рассматривается теперь как новое приближенное значение корня, и описанная процедура повторяется с новым значением х. Как видно из рисунка, точки пересечения касательных с осью х быстро сходятся к точке пересечения графика функции/Ос) с осьюх. Конечно, можно подобрать такие функции, для которых метод касательных неэффективен. [c.117] Из этой рекурентной формулы видно, что на каждом итерационном шаге используется как значение функции /От,), так и значение производной/ (p ). Кроме того, необходимо задать начальное значение д , от которого зависят достоверность результата и время, необходимое для его получения. [c.118] Блок-схема не содержит всех деталей программы она передает лишь основные черты алгоритма. Так, например, в блок-схеме перед итерационной процедурой пропущен оператор условного перехода, который проверяет условие / (v) = О Если / Q ) = О, то произойдет деление на О и выполнение программы будет прервано. Геометрически это означает, что касательная параллельна оси дс и нигде ее не пересекает. Аналогично функционирует оператор условного перехода при выяснении того, достигнута ли желаемая точность. О том, что существуют различные критерии сходимости, известно из обсуждения программы ПОЛ-ДЕЛ . Ниже приведена распечатка программы НЬЮТОН . [c.119] СИЛЬНО вопросу, не очень ли полого расположена касательная. Если значение прбизводной слишком мало, то последует повторный запрос на ввод более приемлемого начального приближения, для чего предусмотрен переход на строку 1100. Потому следует проверка сходимости результата проверяется, совпадают ли в значениях х, полученных в последних двух итерациях, первые 7 знаков. Если совпадают, то управление передается оператору вывода (строки 3000 и 3100). Если требуемая точность еще не достигнута, то новое значение X присваивается переменной Т и оператор СОТО передает управление строке 1200, с которой начинается очередной шаг итерации. [c.120] Если вы опробуете эту программу, то увидите, что время счета в значительной степени зависит от начального приближения. Может также случиться, что выполнение программы будет приостановлено из-за переполнения (ОуегПо у-Еггог). Выяснить возможности и недостатки программы НЬЮТОН вам помогут задания 57 и 58. [c.120] Задание 57. Расширьте программу НЬЮТОН так, чтобы на экран выводились промежуточные результаты, т. е. результаты отдельных итераций. [c.120] Задание 58. Так как программа НЬЮТОН при неудачно выбранных начальных приближениях выполняется очень долго, это задание направлено на ее дальнейшее улучшение. Ограничьте максимальное число итерашй. Если это значение будет превышено, то выполнение программы должно заканчиваться выводом на экран соответствующего сообщения. [c.120] Вернуться к основной статье