Амосов А.А., Дубинский В.А., Копченова Н.В. Вычислительные методы для инженеров (1994) (1095853), страница 13
Текст из файла (страница 13)
Пример 3.15. Один из простейших способов вычисления интеграла 1 = Ь = ~ ~(х)ох состоит в аппроксимации интеграла на основании формулы прямо- а угольников величиной 56 Шаг Ь = (Ь вЂ” а)(п является здесь параметром метода. Так как 1" представляет собой специальным образом построенную интегральную сумму, то из определе— ния определенного интеграла следует, что при Ь ~ 0 метод прямоугольников сходится, т.е 1" -+ 1 Пример 3.16. Учитывая определение производной функции 1'(х) 1(х + Ь) — ~(х) = 11гп , для ее приближенного вычисления можно исполь— Ь-о 1(х + Ь) — 1(.г) зовать формулу 1 (х) ~ Ь . Погрешность аппроксимации этой формулы численного дифференцирования стремится к нулю при Ь ~ О.
Одним из распространенных методов аппроксимации является дискретизация — приближенная замена исходной задачи конечно иерной задачей, т.е. задачей, входные данные и искомое решение которой могут быть однозначно заданы конечным набором чисел. Для задач, которые не являются конечномерными, этот шаг необходим для последующей реализации на ЭВМ, так как вычислительная машина в состоянии оперировать лишь с конечным количеством чисел. В приведенных выше примерах 3.15 и 3.16 была использована дискретизация. Хотя точное вычисление интеграла и предполагает использование бесконечного числа значений 1 (х) (для всех хЕ [а, Ь)), его приближенное значение можно вычислить, используя конечное число п значений в точках а + (~ — '/2)Ь.
Аналогично, задача вычисления производной, точное решение которой предполагает выполнение операции предельного перехода при Ь ~ 0 (а следовательно, использование бесконечного числа значений функции 1), сводится к приближенному вычислению производной по двум значениям функции. При решении нелинейных задач широко используют различные летодм линеариэации, состоящие в приближенной замене исходной задачи более простыми линейными задачами.
Пример 3.17. Пусть требуется приближенно вычислить значение х =,~а для а ) 0 на ЭБМ, способной выпол— нять простейшие арифметические операции. Заметим, что по определению х является положительным корнем нелинейного уравнения И вЂ” а = О. Пусть х'о' — неко- Рис. Ж4 57 торое известное приближение к ~а.
Заменим параболу и = ~г а прямой у — (гсо))2 о + 2т~о~ (т,с~о>) являющейся касательной, проведенной к ней в точке с абциссой х = х'"' (рис. 3.4). Точка пересечения этой касательной с осью Ох дает лучшее, чем х'О', приближение и находится из линейного уравнения (х( о' ) — а + 2х' о' (х — х' О) ) = О. Решая его, получаем приближенную формулу Г, (о) (х' " )' — а (аих = х (о) 2х — ((о) + — о х( О) (3.1 1) х = (Г2 взять х( о' 2 + — ) = 1.5. 2 2, то получится уточненное Например, если для „, 1 значение 42 х* = — (2 2 Пример 3.18.
Метод вычисления корней квадратного уравнения ха + 6х + + =О Фрум*~~ — (-6*~У вЂ” 4~)!2 р~ы~ * д Элементарными здесь считаются четыре арифметические операции и операция извлечения квадратного корня. Заметим, что элементарная операция прямого метода может оказаться довольно сложной (вычисление значений элементарной или специальной функции, решение системы линейных алгебраических уравнений, вычисление определенного интеграла и т.д.), То, что она принимается за элементарную, предполагает во всяком случае, что ее выполнение существенно проще вычисления решения всей задачи.
При построении прямых методов существенное внимание уделяется минимизации числа элементарных операций. Пример 3.19 (с х е м а Г о р н е р а'). Пусть задача состоит в вычисл~ нии значения многочлена Р„(х) = ао + а)х+ атх2 + ... + а х" (3.12) ' Вильямс Джордж Горнер (1786 — 1837) — английский математик. При решении разных классов вычислительных задач могут использоваться различные методы аппроксимации; к ним можно отнести и методы регуляризации решения некорректных задач. Заметим, что методы регуляризации широко используют и для решения плохо обусловленных задач. 3. Прямые методы. Метод решения задачи называют ))рял(мл, если он позволяет получить решение после выполнения конечного числа элементарных операций. по заданным коэффициентам ае, аь ..., а„и значению аргумента ' х.
Если вычислять многочлен непосредственно по формуле (3.12), причем х~„хз, ..., хп находить последовательным умножением на х, то потребуется выполнить 2п — 1 операций умножения и и операций сложения. Значительно более экономичным является метод вычисления, называемый схе.аой Горнера. Он основан на записи многочлена в следующем эквивалентном виде: Р„(х) = ((...
((а„х+ ап-~)х + а„а)х+ ...)х+ а1)х + ао. Расстановка скобок диктует такой порядок вычислений: Ь~ — ап, Я~ = Я~х+ а„ь 3~ —— 5~х+ ап-2, " Я вЂ” Яь1х+ ап-~ ". Бп — Бп-1х+ ап Здесь вычисление значения Р„(х) = Яп потребовало выполнения только и операций умножения и и операций сложения. Схема Горнера интересна тем, что дает пример оптимального по числу элементарных операций метода.
В общем случае значение Рп(х) нельзя получить никаким методом в результате выполнения меньшего числа операций умножения и сложения. Иногда прямые методы называют пгоннмли, подразумевая под этим, что при отсутствии ошибок во входных данных и при точном выполнении элементарных операций полученный результат также будет точным.
Однако при реализации метода на ЭВМ неизбежно появление вычислительной погрешности, величина которой зависит от чувствительности метода к ошибкам округления. Многие прямые (точные) методы, разработанные в домашинный период, оказались непригодными для машинных вычислений именно из-за чрезмерной чувствительности к ошибкам округления. Не все точные методы таковы, однако стоит заметить, что не совсем удачный термин "точный" характеризует свойства идеальной реализации метода, но отнюдь не качество полученного при реальных вычислениях результата. 4. Итерационные методы.
Это — специальные методы построения последовательных приближений к решению задачи. Применение метода начинают с выбора одного или нескольких начальных приближений. Для получения каждого из последующих приближений выполняют однотипный набор действий с использованием найденных ранее приближений — игперацию1.Неограниченное продолжение этого итерационного процесса теоретически позволяет построить бесконечную последовательность приближений к решению 1 От лат. ЫегаА1о — "повторение".
итерационнуу последовательность. Если эта последовательность сходится к решению задачи, то говорят, что итерационный метод сходится. Множество начальных приближений, для которых метод сходится, называется областью сходимости метода. Заметим, что итерационные методы широко используются при решении самых разнообразных задач с применением ЭВМ. Пример З.Ю Рассмотрим известный итерационный метод, предназначенный для вычисления 4 а (где а > О), — метод Ньютона. Зададим произвольное начальное приближение х~ о' > О.
Следующее приближение вычислим по формуле х' ' = -~х~ ' +, выведенной с помощью метода линеаризации — о 2~ х( 0) в примере 3.17 (см. формулу (3.11)). Продолжая этот процесс далее, получим итерационную последовательность х' о', х' ", х' з', ..., х' "', ..., в которой очередное (1с + 1)-е приближение вычисляется через Ье по рекуррентной1 формуле (3.13) Известно, что этот метод сходится при любом начальном приближении х<® > О, так что его область сходимости — множество всех положительных чисел. Вычислим с его помощью значение 42 на 8-разрядной десятичной ЭВМ.
Зададим х'ш = 2 (как в примере 3.17). Тогда х'ы = 1.5, х'т' = 1,4166667,' х'з' = 1.4142166, х'~' = 1.4142136, х' ' = 1.4142136. Дальнейшие вычисления бессмысленны, так как из-за ограниченности разрядной сетки все следующие уточнения будут давать тот же результат. Однако сравнение с точным знач~ нием ~2 = 1 41421356... показывает, что уже на третьей итерации были полу- чены 6 верных значащих цифр. Обсудим на примере метода Ньютона некоторые типичные для итерационных методов (и не только для них) проблемы. Итерационные методы по своей сути являются приближенными; ни одно из получаемых приближений не является точным значением решения.
Однако сходящийся итерационный метод дает принципиальную возможность найти решение с любой заданной точностью к > О. Поэтому, применяя итерационный метод, всегда задают требуемую точность е и итерационный процесс прерывают, как только она достигается. 1 От лат. гесиггепа — "возвращающийся". 60 Хотя сам факт сходимости метода безусловно важен, он недостаточен для того, чтобы рекомендовать метод для использования на практике.
Если метод сходится очень медленно (например, для получения решения с точностью в 1% нужно сделать 10е итераций), то он непригоден для вычислений на ЭВМ. Практическую ценность представляют быстро сходящиеся методы, к которым относится и метод Ньютона (напомним, что точность я = 10 5 в вычислении ~2 была достигнута всего за три итерации). Для теоретического исследования скорости сходимости и условий применимости итерационных методов выводят так называемые априорные' оценки погрешности, позволяющие еще до вычислений дать некоторое заключение о качестве метода.
Приведем две такие априорные оценки для метода Ньютона. Пусть ~( м < (б~ гч>)2 (3.14) 1 б(к( п) ) Здесь б~") = — (к<и~ — ~а) = — величина, характеризу- 2~ а ющая относительную погрешность и-го приближения. Это неравенство говорит об очень высокой квадратичной скорости сходимости метода: на каждой итерации "ошибка" б' "' возводится в квадрат. Если выразить Р "' через погрешность начального приближения, то получим неравенство 6~ ) <(6(О))2" (3.15) из которого вида роль хорошего выбора начального приближения.