Амосов А.А., Дубинский В.А., Копченова Н.В. Вычислительные методы для инженеров (1994) (1095853), страница 68
Текст из файла (страница 68)
Например, функция $8 х представляется цепной дробью $8х= 1 3 5-... Обрывая такую бесконечную дробь, получают некоторую конечную дробь, аппроксимирующую функцию. Все более популярным в последние годы способом приближения аналитических функций становится авнрохси.иаиия Паде — такая дробно-рациональная аппроксимация (11.126), для которой $ ао+ а~г+ ... + а„Р (11.127) 12 + 6х+ ех и 12 — 6х + 12(ха+ 10) + х(х~+ 60) 12(ха + 10) — х (га + 60) ' (11.128) Отметим, что при ~х~ < 0.5 1п 2 аппроксимация (11.128) обеспечивает точность 9 10 о. В заключение параграфа рассмотрим, как вычисляется в одной из стандартных программ функция у = 1и х. Аргумент х представляют в виде х = р-2р, где р — двоичный порядок, р — мантисса, 0.5 1 р < 1. Затем используют разложение 1п х = (р — 0.5)1п 2+ 2о Е о~1', где о = ' 1;Г2 — 1 х=о2х + 1 ~2р + 1 Заметим, что ~о~ < а = (Д вЂ” 1)/(~~2 + 1) < 0.172.
Ряд Е Ф' х*о21 + 1 заменяют затем нв отрезке [-а, а~ многочленом, близким к многочлену 362 Равенство (11.127) означает, что коэффициенты ао, а~, ..., а„„бо, 6~, ..., 6„, дроби (11.126) подбираются твк, чтобы в разложении ее в ряд Тейлора первые н + т + 1 слагаемых в точности совпадали с соответствующими слагаемыми ряда (11.125). В качестве примера приведем две аппроксимации Паде функции ех в случаях п = 2, т = 2 и н = 3, т = 3: четвертой степени наилучшего равномерного приближения.
В результате получается формула 1п х ~ (р — 0.5)1п 2 + в (2.000000815 + 0.666445069в2 + + 0.415054254в4) погрешность которой для всех в не превышает 3 10 а. $11.16. Дополиителыпае замечания 1. Хотя в данном пособии интерполирование рассматривается довольно подробно, все же за пределами обсуждения оказывается ряд полезных приемов интерполирования и соответствующих приложений (таких, как, например, интерполяционный многочлен Бесселя и обратная интерполяция).
Подробности можно найти в [9]. 2. Тем, кто интересуется практическим применением сплайнов, рекомендуем книгу [16]. В ней можно найти не только изложение теории и алгоритмов решения задач, но и полезные практические советы и тексты соответствующих фортранных программ. 3. Изложение современных вычислительных методов решения линейных задач метода наименьших квадратов содержится в общепризнанном учебнике- справочнике [50].
Заметим, что в оригинальное издание этой книги включены и тексты соответствующих фортранных подпрограмм, которые были, к сожалению, опущены при переводе. 4. Исключительно богатый материал по специальным и элементарным функциям содержит справочник [1]. Эта книга пользуется заслуженной популярностью у специалистов, и тот, кто занимается вычислением специальных функций лишь эпизодически, может найти в ней ответы на большинство интересующих его вопросов. Правда, большая часть приведенных в справочнике результатов была получена до 1960 г. Как дополнение к [1] можно рассматривать книгу [51]. 5.
Желающим более глубоко ознакомиться с аппроксимациями Паде и непрерывными (цепными) дробями рекомендуем обратиться к специальной литературе [11], [31]. 6. Подчеркнем, что в данной главе рассматривались методы приближения функций только одной вещественной переменной. В случае аппроксимации функций многих переменных можно использовать аналогичные подходы (см., например, [9], [54]). Глава 18 ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ Численное дифференцирование применяется тогда, когда функцию трудно или невозможно продифференцироать аналитически.
Например, необходимость в численном дифференцировании возникает в том случае, когда функция задана таблицей. Кроме того, формулы численного дифференцирования широко используются при разработке вычислительных методов решения многих задач (решение дифференциальных уравнений, поиск решений нелинейных уравнений, поиск точек зкстремума функций и др.). З 12 1. Простейшие формулы численного дифференцирования 1.
Вычисление первой производной. Предположим, что в окрестности точки г функция ~ дифференцируема достаточное число раз. Исходя из определения производной ур( ) ~ (х + Ь) ~ (а) Ь (12.1) у~( ) ~ (ю) ~ ($ Ь) (12.2) соответствующие выбору фиксированных значений Ьа = Ь и Лх = -Ь. Здесь Ь ) Π— малый параметр (йсаю).
Разностные отношения в правых 364 ~.,( ) 1.,~(» + Ь |) —,~ (а) Ьл О естественно попытаться использовать для ее вычисления две простейшие приближенные формулы: частях формул (12.1) и (12.2) часто называют правой и левой разностнмди производнььли ~70]. Для оценки погрешностей ( Ь) ~ ( ) й Ь ) У ( ) Ь ( Ь) ~,() У() - У( — Ь) 1 Ь введенных формул численного дифференцирования (ао1режносшей аппроксимации) воспользуемся формулами Тейлора; Г(6) Х(х 1 Ь) = Х(х) х Г(х)Ь + — Ь2. 2 (12.3) = — Г (г, ) Ь. Следовательно, 1 2 2 1 (12.4) м,= - !ГЮ!, (х, х + Ь] М2 шах ~~ (~) ~ |х — и, х] ~ г-(» Ь) ~ ~~ — М2Ь, 1 (12.5) Таким образом, формулы (12.1), (12.2) имеют первый порядок точности по Ь.
Иначе говоря, правая и левая разностные производные аппроксимируют производную 1'(х) с первым порядком точности. 9 й) а -и к к+и к а) Рис 1й1 Здесь и ниже ~, и ~ — некоторые точки, расположенные на интервалах (х, х + Ь) и (х — Ь, х) соответственно. Подставляя разложения 1 (12.3) в выражения для г, получаем г,(х, Ь) = — — 1" (~,) Ь, г (х, Ь) = 2 Приведенные формулы численного дифференцирования имеют простую геометрическую интерпретацию (рис. 12.1, а).
Пусть Уе, Х и У, — расположенные на графике функции у = >" (х) точки с координатами (х, > (х)), (х — Л, > (х — Л)) и (х + Л, 1(х + Ь)). Напомним, что производная > (х) равна тангенсу угла а наклона к оси Ох касательной, проведенной к графику функции в точке Хе.
Формула (12.1) соответствует приближенной замене производной >"(х) = Фдад правой ~(х + Ь) — >'(х) разностной производной, равной тангенсу угла а, наклона к графику функции секущей, проведенной через точки Уо и Х. Формула (12.2) соответствует аналогичной замене левой разностной ~(х) — > (х — Ь) производной, равной тангенс у угла а секущей, проведенной через точки Уо и У-. Естественно предположить (рис. 12.1, а и 12.1, б), что лучшим по сравнению с 1~а, и 1да приближением к >"'(х) = ~~а является тангенс угла наклона ао секущей к графику, проведенной через точки У и Л',. Соответствующая приближенная формула имеет вид ,У(х + Ь) — У(х — Л) 2Л (12.6) Величину в правой части этой формулы часто называют ае>4>вралъиой разнос»»>ой »роазводной.
Подставляя в выражение для погрешности ,(,) Х( + Л)- ~( - Л) соответствующие разложения по формуле Тейлора »з>(р ~(х х Ь) = ~(х) ~ ~'(х)Л + — Ьз т Лз, 2 6 ва оценка погрешности 1„(,, Ь)! (% Ь2 Мз — !Уз>(01 6 [х — Ь, х+ Ь] (12.7) Таким образом, центральная разностная производная аппроксимирует производную г" (х) со вторым порядком точности относительно Ь.
366 уз>(р ~ уз>~~ получим, го(х, Ь) = — ' ) Ьз. Следовательно, справедли- 12 Для вычисления 1'(х) можно получить формулы любого порядк~ точности (см. З 12.2). Однако в таких формулах с ростом порядка точности возрастает и число используемых значений функции. В качестве примера приведем формулу г" (х 2Ь) — 8г(х-Ь) + 8~(х+Ь) — ~(х+2Ь) 12Ь ! (12.8) имеющую четвертый порядок точности. Пример 12.1. Пусть функция у(х) = ех задана на отрезке 10, 1] таблицей значений с шагом И = 0.2: Таблица121 х 0,0 0.2 0.4 0.6 0.8 1.0 Дх) 1.000000 1.22140 1.49182 1.82212 2.22554 2.71828 Используя формулы численного дифференцирования, найдем значения производной ~ (х) в узлах таблицы.
В точках х = 0.0 и х = 1.0 из приведенных в зтом параграфе формул можно воспользоваться лишь формулами (12.1) и (12.2). В остальных точках применим формулу (12.6), имеющую более высокий порядок точности. Вычисления дают следующую таблицу производных: Т а б л и ц а 12.2 0.8 1.0 х 0.0 0.2 0.4 0.6 ~'(х) 1.10700 1.22955 1.50180 1.83430 г(х) -0.10700 -0.00815 -0.00998 -О.01218 2.24040 -0.01486 2.46370 0.25458 1г! ~ 2 АХАТЬ = 2 гпах [ е ~ ° Ь = 2.1.22140 0.2 и 0,13. 1 10, 0.2] Здесь же приведены значения погрешностей г(х), которые в данном случае легко вычисляются (ведь | (х) = ех = Г (х)). Как и следовало ожидать, значения погрешности в крайних точках (здесь использовались формулы первого порядка точности) существенно больше, чем во внутренних точках.
Заметим, что значения погрешностей можно было оценить и заранее, используя априорные оценки (12.4), (12.5), (12.7). Например, неравенство (12.4) дает в точке х = 0 оценку В точке х = 0.2 из неравенства (12.7) следует, что ~г~ 4 — МзЬ2 = — шах ~е ~Ь2 = — 1.49182 0.04 Ф 0.01, и т.д. 10, 0.4] Для вычисления .1"(х) при х = 0.4 и х = 0.6 можно также применить формулу (12.8) и получить значения У'(0,4) н 1.49176 и У'(0.6) и 1.82203 с погрешностями, приближенно равными 6 ° 10 5 и 9 ° 10 5 соответственно. 2. Вычисление второй производной.
Наиболее простой и широко применяемой для приближенного вычисления второй производной является следующая формула: ~(х — Ь) — 2~ (х) + ~(х + Ь) (12.9) Величину в правой части этого приближенного равенства часто называют вп1орвй разносп1ной производной 170]. Подставляя в выражение для погрешности ~(х — Л) — 2~(х) + ~(х + Ь) соответствующие разложения по формуле Тейлора ~(х ~ Ь) = ~(х) ~ У'(х)Л + — Ьг х — Лз + Л4, у"( ) у з~(х) ~ (~+) 2 6 24 У "(6) + У" И-) получим г (х, Ь) — У. Следовательно, Л)~ ~ ~4 У Щ ~У~1(О~ [з-Ь, х+Ь~ (12.10) (~2Ь) + И~(~Ь) — 30~(~) + И~(х+Ь) — ~(х+2Л) ( 2 11 12Ь2 имеет четвертый порядок точности. Таким образом, формула (12.9) имеет второй порядок точности.
Для вычисления ~ (х) можно получить формулы любого порядка точности. Например, формула Пример 12.2. Используя табл. 12.1 значений функции ~(х) = ех, найдем с помощью формул численного дифференцирования значения ~ (х) во внутренних узлах таблицы. Вычисление по формуле (12.9) дает значения, приведенные в табл. 12.3: Таблиц а 123 х 0.2 0.4 0.6 0.8 У'( ) 1.22550 1.49700 1.82800 2.23300 г (х) -0.00410 -0.00518 -0.00588 -0.00746 Применение формулы (12.11) позволяет получить значения ~"(0.4) я а 1.49204, Г(0.6) я 1.82183 с погрешностями, приближенно равными 2. 10-4 3* 10-~ $ 12.2.
0 выводе формул численного дифференцирования Р" ( ) Ф" (х). (12.12) Наиболее просто этот подход реализуется в случае, когда приближение осуществляется с помощью интерполяции. 1. Формулы численного ди ня, основанные на интерполяции алгебраическими многочленами.