Дьяконов В. Maple 7 - Учебный курс (Дьяконов В. Maple 7 - Учебный курс.djvu), страница 94
Описание файла
DJVU-файл из архива "Дьяконов В. Maple 7 - Учебный курс.djvu", который расположен в категории "". Всё это находится в предмете "компьютерный практикум по специальности" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Просмотр DJVU-файла онлайн
Распознанный текст из DJVU-файла, 94 - страница
Но пока погрешность остает- ся слишком большой по сравнению с заданной. Аппроксимация полиномами Чебышева Знатоки техники аппроксимации знают, по лучшие приближения на заданном интервале могут быть получены прн использовашщ разложения в ряд Чебышева, Это связано с тем, что ортоп)нальпыс полиномы т1ебышева позволяют получить аппроксимацшо. погрешность которой в заданном диапазоне изменения аргумента распределена более равномерно, чем в предшествую(цнх случаях. Выбросы погрешности на краях интервала аппроксимации в этом случае псклк)чены.
Разложим функцию Дх) на 1'О, 4] в ряд Чебышева с точностью 1*10 '. Это означает, что все члены с коэффициентами меньше чем эта величина, будут опущены. Такая точность обеспечивается пгзлиномом 18 степени: > еча)Г( 1ти(С(Г(х), х О) ); .500000000000 > гргос: ргос(х) 1г х=О сйео 0.5 е1зе еча1((г(х)) (1 еод > СнеЬАрргох .- снеЬузьеч(тргос. ~0..4. 1Е-О); СЬеЬАрргох:= .379206274272Т О, — х — 1 †.202632813998Т 1, — х †! ( 1 2 2 †.0369064836430Т 2.-х- 1 (+.037013143!54!Т З,-х- 1 ( 2 7 2 1 †.00888944143050Т 4,-х -! †.000149789336636Т1 5, †.т -! 2 +.000642974620794Т 6, — х -1 †.000170677949427Т 7,-х-! Г 2 2 +.0000!2691728388!Т 8,-х- ! +.43987492873810 'Т 9, — х- ! 1 2 2 †.!56284139876!О 'Т !О,-х- ! +.20498054066410 'Т 1!,-х †! 2 ! 2 +.45625427777810 'Т 12, †.т-1 †.694323955261!О "Т 13,-х -1 2 2 Можно проверить для этого примера, что кривая ошибки при аппроксимации рядом Чебышева колеблется.
Поскольку ряд Чебышева был оборван на члене 8- й степени (как и полипом ряда Тейлора), то максимальная ошибка оказалась равной приблизительно 0,6*10 '. Эта величина уже на два порядка меньше, чем ошибка при Паде-аппроксимации, вычисленная выше. Но все же немного не дотягивает до наших требований. Для последующих вычислений полезно заметить, что мы можем использовать процедуру для нахояще~ия численных значений Ях), которая булет намного эффективнее, чем прямое определение, которое требует численного интегрирования для каждого значения х. А именно определим процедуру численной опенки, основаннчю на разложении в пяд Чебышева степени 13, так как максимальная ошибка Выбор аппроксимации Алл сложной функции 625 при такой аппроксимации меньше чем 10 ', и обеспечивает для нашей цели достаточную точность. Мы опрелелим полинам Чебышева Т(х) из пакета огтноро1у и затем лля эффективной оценки преобразуем его в форму Горнера: > Е;= Ьоглег(оги( еча1(аоьа(Т=оггворо1у[Т].
СЬеЬАрргох)) ): > Е:= опарр!у(Е, х): Р:= х — > .500001 + (.192405+ (-,163970+ (-,0083867+ (,0277086+ (-.00593183 + (-.00132727 + ( 000910060» (-.000180351 + (.576869 10 ~ »- ( 448884 1О ~ + (-.990278 10»»- ( 925434 10 ' — .347162 1О " т ) х ) т ) х) т) х ).т) х) х) х) х) х) х Схема Горнера минимизирует число арифметических операций, заменяя опера- ции возведения в степень операцияъш последовательного умножения. Аппроксимация Чебышева-Паде Теперь рассмотрим еще более точную рациональную аппроксимацикт Чебышева-Паде. Это такая рациональная функция г [ж, и] (х) с шслптелсм степени я и знаменателем степени и такой же, как и для разложен!и в ряд с1ебьппева. Функция г [я. и] (х) согласуется с разложением в ряд Чебышева Пх) членом степени в+и. Мы вычислим аппроксимацию Чебышева-Паде степени (4,4), подобную обычной Паде-аппроксимации, успешно выполненной ранее: > СЬеЬРаселрргох ;= слеьрасе(Е. 0,.4, [4,41) СЬеЬРат)еАрргох.'= х а .285648384503Т О,— х — 1 +.08960336454!ОТ 1,— х-1 ( 2 †.0062654651372)Т 2,-х- 1 +,0053784670832)Т З,-х- 1 ( 2 †,000414939086957Т 4,-х -1 уг Т О,-х-1 +.879308989228Т~!, — х-1 ( 2 +289575811178Т 2,-х -1 +,0487963355059Т~З,-х-! ( 2 2 +,00650272206660Т 4,-х-) 1 2 Построим кривую ошибок: > и(СЬ(огтворо1у, Т): > р1ос(Е - СЬеЬРаоелрргох.
0..4,со!о~ Ы асК): Она представлена на рис. 17.4. Максимальная ошибка и на этот раз имеет место в левой оконечной точке. Величина максимальной ошибки несколько меньше, чем ошибка при аппроксимации рядом Чебышева. Главное преимущество представления в виде рациональной функции — высокая эффективность вычислений, которая может быть достигнута пРеобразованием в непрерывную (цепную) дробь (см. ниже). Однако полученная максимальная ошибка чуть-чуть больше заданной: б2б Урок 17. Примеры решения научно-технических ввдвч .5>07 а е.ое рис.
17.4. кривая ошибки при пвде-чебышеве рациональной аппроксимации > шпхсаеЬРвбеЕггог; аЬк( Р(О) - СаеЬРебеАрргох(О) ): техов еЬРас(еЕг ог:= .1236746 10 в Мы достигли впечатляющего успеха и остается сделать еще один шаг в направлении повышения точности аппроксимапии. Минимаксная аппроксимация Классический результат теории аппроксимации заключается в том, что мини- макс как наилучшая аппроксимация рациональной функции степени (щ, и) постигается, когда кривая ошибки имеет ш+и+2 равных по величине колебаний. Кривая ошибки аппроксимации Чебышева-Пале имеет нужное число колебаний, но эта кривая должна быть выровнена (по амплитуде выбросов кривой ошибки) с тем, чтобы обеспечить наилучшее минимаксное приближение. Эта задача решается с помощью функции штп(шах: > Н)птшвхАрргох ;= ш1п!пшх(р, 0..4. 14,4).
1, 'пшхеггог'): А((а(тахлрргох;= т ->(,174932901740 +(.0833009461857+ (-.020!932631012+ (.00368157773344-.000!57697316206т)х)х)х)!( .349866213807 + (.031945313924е(.0622933587074>(-.0011478761209+ .00336343612168т)х) х)х) Максимальная ошибка в аппроксимации Нт пбаахАрргох дается значением переменной шахеггог. Заметим, что мы наконец достигли нашей цели получения аппроксимации с ошибкой меньшей, чем 1'10-": > швхи1птпшхЕггог :- шахеггог: тахМ(нанакЕп от:= .585025375366 10 Построим график погрешности для данного типа аппроксимации: > р1от(Р - Нтп!шахАрргох,0,.4.со1ог Ы)ас1с); График ошибки, представленный на рис.
17.5, показывает равные по амплитуде колебания. Выбор аппроксимации длл сложной функции 627 а м ее со -2е 07 аиог .ое 07 Рис. 17.5. График ошибки при мининаксноа апкроксинации Таким образом, мы добились блестящего успеха в снижении погрешности до требуемого и довольно жесткого уровня. Если бы мы задались пенью получить только четыре или пять точных знаков аппроксимации, что в целом ряде случаев вполне приемлемо, то могли бы получить нужный результат гораздо раньше. Нам остается оптимизировать полученную аппроксимацию по минимуму арифметических операций и проверить реальный выигрыш по времени вычислений. Эффективная оценка рациональных функций Полиномы числителя и знаменателя в минимаксиой аппроксимации уже выражены в форме Горнера (то есть в форме вложенного умножения), Оценка поли- номом степени и в форме Горнера при и-умножениях и и-суммированиях — это наиболее эффективная схема оценки для полинома в общей форме, Однако для рациональной функции степени (пц и) мы можем делать кое-что даже лучше, чем просто представить выражения числителя и знаменателя в форме Гор~ера.
Мы можем нормализовать рациональную функцию так, что полипом знаменателя будет со старшим коэффициентом, равным 1. Мы можем также заметить, что вычисление рациональной функпии степени (т, и) в форме Горнера требует выполнения все ш+и сложений, я+и — 1 умножений и 1 деления, Другими словами, общий индекс действия есть: О ш+и операций умножения/деления; О ш+и операпий сложения/вычитания. Вычисление рациональной функции можно значительно сократить и далее, преобразуя ее в непрерывную (цепную) дробь. Действительно, рациональная функпия степени (ш, и) может быть вычислена, при использовании только О шах(гп,п) операций умножения/деления; О щ+и операций сложения/вычитания. Например, если т = и, тогда эта новая схема требует выполнения только половины числа действий умножения/деления по сравнению с предшествующим методом.
Для рациональной функции Иа п1еахдрргох вычисление в форме, выраженной выше, сводится к 9 действиям умножения/деления и 8 действиям сложения/вычитания. Число операций умножения/деления можно сократить до 8, нормализуя знаменатель к форме шоп!с. Мы можем теперь вычислить непре- 628 Урок 17. Примеры решения научно-технических задач рывную (цепную) дробь для той же самой рациональной функции. Вычисление по этой схеме, как это можно видеть из вывода Мар!е, сводятся только к 4 действиям деления и 8 действиям сложения/вычитания: > М(н(пвхАрргох := сои/гас(огв(М1п1вапдрргох): > 1рг1пт(М1о(взхдрргох(х)); -.4688 57 7 7074 7е-1+ ! .07858705749/(к +4.41994843227ч-16.! 901737091/ (х +429!2 ! 8428301-70. 1948525272/(х-1 0 2912843004 е4.775361501 67/(х + 1.23883665458)))) Сравнение времен вычислений Теперь определим время, необходимое для вьшпслешш функции/(х) в 1000 точек, используя первоначальное интегральное определение, и сравним его с временем, требующимся для схемы МтптвахАрргох в виде непрерывной дроби.