Амосов А.А., Дубинский В.А., Копченова Н.В. Вычислительные методы для инженеров (1994) (1095853), страница 20
Текст из файла (страница 20)
Для большинства итерационных методов определить этот момент можно, поскольку начиная с него поведение приближений х>"'становится крайне нерегулярным. Если вдали от интервала пеапределеннос— ти величина ~> и> — ~~<и> г(и->> ~/)~(и-1> г(и-2> ! (4.12) обычно бывает меньше единицы (~х> "> — х>" '> / < ~х<" '> — х'» ~> ~), то появление при некотором и значения д< "> > 1 свидетельствует, скорее всего, о начале "разболтки" — хаотического поведения итерационной последовательности. В этой ситуации вычисления имеет смысл прервать, чтобы выяснить причину явления и принять правильное о» решение.
Лучшим из полученных приближений к решению следует считать, конечно, х' " '> . Использование для контроля вычислений величины (4.12) называют часто правило и Гарвика. $4.3. Метод бисекции 1. Описке метода. Пусть требуется с заданной точностью е > О найти корень х уравнения (4.1). Отрезок локализации [а, 6] (т. е. отре- зок, содержащий только один корень х) будем считать заданным. Предположим, что функция / непрерывна на отрезке [а, 6] и на его концах принимает значения разных знаков, т.
е. (4.13) /(а) /(Ь) < О. На рис. 4.5 изображен случай, когда /(а) ( О и /(Ь) > О. Для дальнейшего будет удобно обозначить отрезок [а, Ь] через [а<о>, Ь<о>). Примем за приближенное значение корня середину отрезка точку х<о> = (а<о> + 6<о>)/2. Так как положение корня * на отрезке [а<о>, 6<о>) неизвестно, то можно лишь утверждать, что погрешность этого приближения не превышает половины длины отрезка (рис. 4.5): <х<о> х~ ( (6<о> а<о>)/2 ~х<>> — х/ < (Ь< » — а<» )/2 = (Ь вЂ” а)/2г. За очередное уточнение отрезка локализации [а<2>, 6<2') снова берут тот из отрезков [а<», х<<>], [х<<>, Ь'»), на концах которого выполняется условие /(а<г>) /(Ь<2>) ( О.
91 Уменьшить >югрешность приближения можно, уточняя отрезок локализации, т. е. заменяя начальный отрезок [а'о>, 6<о>] отрезком [а<>', 6<>'] меньшей длины. Согласно лгетоду бисекции (половинного деления) в качестве [а< >>, Ь'<'] берут тот из отрезков [а<о>, х<о>] и [х<о', Ь<о>], на концах которого выполняется условие Х(а«>) /(6<>>) ( О. Этот отрезок содержит искомый корень. Действительно, если /(а<'>) /(Ь<>>) < О, то наличие корня следует из теоремы 4.1; если же /(а<») /(Ъ<») = О, то корнем является один из концов отрезка.
Середина полученного отрезка х<>' = (а'" + Ь'>>)/2 дает теперь приближение к корню, оценка погрешности которого составля- Опишем очередную (» + 1)-ю итерацию метода. Пусть отрезок [«< ">, Ь< ">] уже найден и вычислены значения х' ">, /(а< ">), /(6< ">). Тогда производят следующие действия: 1о. Вычисляется /(х< "> ). 2о.
Если У(а<"') /(х< ">) ( О, то в качестве отрезка локализации [а< "+», 6<""'] принимается отрезок [а< ">, х< ">]. В противном случае /(х'"') /(6'"') с О и за [а<+" 6'"+>] принимается отрезок [х< "> Ь'"']. 3о.
Вычисляется х< "+'> = (а< "+'> + Ь< "+'>)/2. Неограниченное продолжение итерационного процесса дает последовательность отрезков [а<о>, 6<о>], [а<>>, Ь<'>], ..., [а<а>, 6< ">], содержащих искомый корень. Каждый из них (за исключением начального) получен делением пополам предыдущего отрезка. 2. Скорость сходимости.
Середина »-го отрезка — точка х'"' ~ х< а> х! ~ ((Ь< о> а< и>)/2 — (Ь а)/2п+< (4.14) Из этой оценки видно, что метод бисекции сходится со скоростью геометрической прогрессии, знаменатель которой <> = >/з. По сравнению с другими методами метод бисекции сходится довольно медленно.
Однако он очень прост и весьма непритязателен; для его применения достаточно, чтобы выполнялось неравенство (4.13), функция / была непрерывна и верно определялся ее знак. В тех ситуациях, где не нужна сверхвысокая скорость сходимости (а это часто имеет место при простых инженерных расчетах), этот метод весьма привлекателен. Заметим, что число итераций, которое требуется при применении метода бисекции для достижения разумной точности е, не может быть очень большим. Например, для уменьшения первоначального отрезка локализации в 10е раз нужно 19 итераций.
3. Критерий окончания. Итерации следует вести до тех пор, пока не будет выполнено неравенство 6< "> — а< "> < 2е. При его выполнении в силу оценки (4.14) можно принять х< "> за приближение к корню с точностью е. Пример 44. Найдем методом бисекции с точностью е = 10 ~ положительный корень уравнения 4(1 — хт) — ех = О.
В примере 4.2 этот корень был локализован на отрезке [О, 1], причем ДО) ) О, /(1) < О. Положим <о> — 0 Ь<о> — 1, х<о> — (а<о> + Ь<о>)/2— = 0.5. 92 = (а< "> + 6' ">)/2 дает приближение к корню х, имеющее оценку пог- решности 1 и т е р а ц и я. Вычисляем /(х<о>) м 1.3512. Так как /(а<с>) /(х<в>) > О, то за очередной отрезок локализации принимаем [а< », Ь' <>~ = [0.5, 1]. Вычисляем х' '> = (а< >> + Ь<>>)/2 = 0.75.
П и т е р а ц и я. Вычисляем /(х« >) в -0.3670. Так как /(а< >>) /(х< >') < О, то [а<т>, Ь<т>~ = [0.5, 0.75) и х<~> = ( '2' + Ь< 2>)/2 = 0.625. Результаты следующих итераций (с четырьмя цифрами после десятичной точки) приведены в табл. 4.2. Таблица 42 Знак Знак Ь< з> /(<>< в> ) /(Ь< в> ) .< в] /(х< и> ) Ь< в> < в> Номер итера- а< "' ции Й 0 0.0000 1.0000 + - 0.5000 1.3513 1.0000 1 0.5000 1.0000 + — 0.7500 -0.3670 0.5000 2 0.5000 0.7500 + - 0.6250 0.5693 0.2500 3 0.6250 0.7500 + — 0.6875 0.1206 0.1250 4 0.6875 0.7500 + — 0.7187 -0.1182 0.0625 5 0.6875 0.7187 + - 0.7031 0.0222 0.0312 6 0.7031 0.7187 + — 0.7109 0.0156 При и = 6 имеем Ь<в> — а<в»<> 0.0156 < 2.10 2.
Следовательно, заданная точность достигнута и можно принять х в х<в>. Окончательно получим х = = 0.71 ~ 0.01. 4. Влияние вычислительной погрешности. При использовании метода бисекции принципиально важным является правильное определение знака функции / В случае, когда х'"' попадает в интервал неопределенности корня (см. 8 4.2), знак вычисленного значения /*(х< ">) не обязан быть верным, и последующие итерации не имеют смысла. Однако этот метод следует признать . очень надежным; он гарантирует точность приближения, примерно равную радиусу интер- вала неопределенности с.
Как было отмечено в предыдущем парагра- фе, большего требовать нельзя. з 4.4. Метод простой итерации 1. Описание метода. Чтобы применить метод простой итерации для Решения нелинейного уравнения (4.1), необходимо преобразовать это уравнение к следующему виду: 93 Это преобразование (приведение уравнения к виду, удобно)ау для итерации) можно выполнить различными способами; некоторые из них будут указаны ниже. Функцию р далее будем называть итерационной функцией.
Выберем каким-либо образом приближенное значение корня х'о' и подставим его в правую часть уравнения (4.15). Получим значение х))) = )р(х)о)). Подставляя теперь х<)) в правую часть уравнения (4.15), имеем х'~) = )р(х'')). Продолжая этот процесс неограниченно, получим последовательность приближений к корню, вычисляемых по формуле х( и+1) = Ах) н) ), и 1~ О. (4.16) Очевидно, что метод простой итерации — одношаговый (см. ~ 4.1). Если существует предел построенной последовательности х = 1пп х<"), то, переходя к пределу в равенстве (4.16) и предполагая функцию )О непрерывной, получим равенство х = р(х).
(4.17) Это значит, что х — корень уравнения (4.15). 2. Геометрическая иллюстрация Из рис. 4.6 видно, что корень х уравнения (4.15) является абсциссой точки пересечения графиков двух функций: у = х и у = )р(х). Возьмем некоторое начальное приближение х'о), которому отвечает расположенная на кривой у = <р(х) точка М'о) с координатами (х) о), х') ) ) (напомним, что х) ') = )р(х) о) )). Соединим точку М'о) отрезком прямой у = х))) с лежащей на прямой у = х точкой У'» с координатами (х')), х'ы). Проведем теперь через точку У')' прямую х = х')) до пересечения с кривой у = )р(х) в точке М))) с координатами (х')), х'~)).
Продолжая этот процесс далее, получаем ломаную линию М'о) ))')) М')' У'2) М'2' ..., для которой абсциссы точек М'"' представляют собой последовательные приближения х'"' 94 к решению х. 3 Сходимость метода. На рис. 4.7, а — ) представлена геометрическая иллюстрация поведения итерационного процесса в четырех простейших случаях взаимного расположения прямой у = х и кривой у = )р(х). Рис. 4.7 В случаях (а) и ~б) метод простой итерации сходится, причем, как нетрудно заметить,— при произвольном начальном приближении. Напротив, в случаях (в) и (~) метод расходится при любом выборе начального приближения. Заметим, что в случаях (а) и (6) ~ ~р '(х) ~ < 1 95 (как видно из рисунка, модуль тангенса угла наклона кривой у = <о(х) к оси абсцисс меньше единицы), а в случаях (в) и (г), наоборот, ~<))'(х) ~ > 1.
Таким образом, можно предположить, что сходимость метода простой итерации связана с выполнением условия ~ у '(х) ~ < 1, Действительно, имеет место следующий результат. Т е о р е и а 4.2. Пусть в некоторой о-окрестности корня х функция <)) дифференцируелга и удовлетворяет неравенству (4.18) где 0 < в < 1 — постоянная. Тогда независимо от выбора начального приближения х<о) из указанной о-окрестности корня итерационная последовательность не выходит из втой окрестности, метод сходится со скоростью геометрической прогрессии и справедлива следующая оценка погрешности: )х<п) х~ < уп)х<о) (4.19) и Вычитая из равенства (4.16) равенство (4.17) и используя формулу конечных приращений Лагранжа, получим х< "+') — х = у~(х< ") ) — ~о(х) = <г< "+ы (х<") — х). (4.20) Здесь а<"')) = р (~<а)), где ~<") — некоторая точка, расположенная между х<") и х.