Приближение функций. Компьютерная практика в системе компьютерной математики MATHCAD (1012860), страница 4
Текст из файла (страница 4)
Для построения аппроксимирующего полинома требуется подобрать коэффициенты ао, а1, аг,..., а так, чтобы величина 8 была наименьшей. Предположим, что т < Ь вЂ” 1. В случае т = 1, — 1 коэффициенты а (/ = О, 1, ..., Ъ вЂ” 1) можно определить 1 из системы уравнений Юу, 1(х;) =У(х;) при 1=0, 1, ..., Š— 1, (1.61) причем Я = О, и приходим к разработанной выше проблеме интерполирования функций. При т ь Ь вЂ” 1 система (1.49), вообще говоря, несовместна. Поэтому сама постановка вопроса о точном решении теряет смысл. Решение нашей задачи аппроксимирования следует из минимизации функционала (1.60) и приводит к решению А=~Х Х~ Х г (1.
62) где г и О О "' О 1 х хг ... х~~ Х= 1Х. 1Х. 1--Х. 1 г т р = ГДхо), Г(х1), ..., Дхь 1)~ — матрица-строка Е значений задан- ной функции на системе точек хо, х1, ..., хЬ А = [ао, а1, ..., ащ~ .— транспонированная матрица-столбец неиз- вестных коэффициентов полинома (1.59). — матрица-строка т + 1 основных функций уо(х) = 1, р1(х) = х, срг(х) = х,..., ~р (х) = х~,..., значения которой, вычисленные в точ- ках х~ (1 = О, 1, ..., Ь вЂ” 1), развернуты в вертикальный столбец; Можно доказать, что если среди точек хе1, х, ..., х~ нет совпадаеоп(их и ж < Ь вЂ” 1, то определитель системы (1.62) отличен от нуля и, следовательно, зта система имеет единственное решение.
1.е,2. вгстод ортогонялъных нолнноожое Пусть РО(х), Р1(х), --. Рм(х), (1.63) Юм(х) = ЬО РО(х) + ' ° + Ьм Рм(х) (1.64) Это представление назъшаегся разложением полинома (Е (х) по системе (1.63). Задача аппроксимации заданной функции р = е(х) на множестве точек хо,х1,...,хь 1 ортонормированным полиномом (функцией) дакной степени т (ве < с — 1) из условия минимума квадратичного отклонения р(х1) ~9 (х1) — Дх1)~ = еп1п Е=О приводит к алгоритму вычисления коэффициентов ь,. (е = О, 1, „ж) по формуле ь — 1 Ье = ~ ~(хе) р,(хе) Е= О (1.65) заданная система ортогональных квадратично суммируемых на множестве точек (хо, х1, ..., х) 1~ полиномов (функций).
Так как палиномы (1.63) линейно независимы, то произвольный полипом Ц (х) степени можно представить в виде линейной комбина-ции полиномов из системы (1.63), т.е. Эта формула получается из (1.62) при условии ортонормированности полиномов р,(х), так как в этом случае ~Х Х~~= Е, а Х = Р = Р(1., т) = РоК 1 1) РФ 1 1) Рг(Я 1 1) - Р„Я 1 -1) и элементы матрицы Х имеют внд — т Р;(1„() = р(1,, () р,'(1, 1) Отсюда искомый аппроксимацнонный поливом имеет вид Я (х) = ~, Ь,. Р,.(х) ~=с (1.66) Пример.
Возьмем в качестве системы ортонормированных функций полиномы Чебышева (1.14). Пологая 1 = (х — хо)/Ь и учитывая, что для полиномов Чебышева хо — — О, л = Ф/Ь, находим аппроксимационную формулу Чебышева т - Г' хУ 9 (х)=~ Ь,.р,. Ь,— при т<Ь вЂ” 1. 1=0 (1.67) 1.5. Интегральное квадратичное аннроксимироваиие функций на отрезке Предположим, что данную непрерывную функцию /(х) нужно аппроксимировать на конечном отрезке [О, Ц с помощью обобщенных полиномов Ящ(х) = со Ч'о + ст йт + -.
+ см «Ря (1.66) 29 Рдб. О) Ро(~' 1) Р (1, О) Ф Р1(1„1) рз(1, О) ... р (1, О) Рз(ь, 1) ... Рм(1, 1) где )р1(х)) — заданная система непрерывных функций н с,. — посто- янные коэффициенты. Согласно способу наименьших квадратов коэффициенты с; (1= О, 1, ..., т) подбираются так, чтобы квадратичное отклонение полинома Я (х) от функции Р(х), равное 2 1 = / р(х) [Я (Х) — ДХ)~ с(х = пип, (1,69) а имело наименьшее значение.
Как известно, минимум функции 1 =1 [со, ..., с ) задают коэффициенты, найденные из системы ( со(1РО, 1РО) + с1(~Р1 1РО) + ... + ст(<руа то) (У~ ~РО) ) 1 ! еООРО, Ч~1) + с10Р1, ~Р1) + ... + с„,(1р,а, ~Р1) = (Р, <Р1); ( со(ЧРО, р )+ с1ОР1, р )+- + с„(Ч, Ч ) =(1, 1Р„), (1 70) где р1Р1, е ) = / р(х) <р,".(х) е (х) с(х . [" ° = а (1.22), то матрица системы (1.70) есть матрица с диагональным преобладанием н может быть решена методом прогонки. Более того, если система )р,(х))ортонормированна, то коэффициенты с,.вычисляются особенно просто: 30 Доказывается, что если сро(х),..., <р (х) линейно независимые на отрезке [а, Ь~), то система (1.70) имеет единственное решеине, которое соответствует наименьшему квадратичному отклонению. При этом если система (у1(х)~ есть система базисных сплайнов ь сь = ) р(х) 1(х) ф (х) бх . а (1 7Ц КоэФФициенты с,, определяемые формулой (1 71), называются коэффи1(кентами Фурье функции 1(х) относительно заданной ортонормированной системы (~р;(х)~ с весом р(х).
Таким образом, справедлив вывод: обобщенный полинам с коэффициентами Фурье данной функции обладает наименьШим квадратичным отклонением от этой функции по сравнению со всеми другими обобщенными полнномами того. же порядка т. Замечение 1. Если система ортонормировеннык функций (т,(х)) тако- Замечание 2. Формула (1Л1) называется прямым преобразованием Фурье, а формула (1.68) — обратным преобразованием Фурье. Глава 2. ПРИМЕРЫ РЕШЕНИЯ ЗАДАьь НА ПРИБЛИЖЕНИЕ ФРИКЦИИ Е СРЕДЕ МАТНСА11 В атой главе приведены примеры решения задач в среде МаФЬ- саб на методы приближении функций, рассмотренные в первой главе.
Каждый рассмотренный пример является рабочим докумекжом Ма(асад н может быть полностью воспроизведен в системе Ма(аксай. Пусть на конечном отрезке заданы функции: 1 бх+— 6 ~1(х) т 2х +5 ( бд т (х) =соз~~12г х (2.2) 31 ва, что для любой лелрерыекой функции 1(х) справедливо соотношение. )пв 1 = О, то эта система называется ловкой.
В противном случае — ке- ~3(х) = Цх — 0,25) — Цх — 0,77); (2.3) )4(х) = 1(х — 1/4) — 2 . Цх — 1/2) + Цх — 3/4); (2.4) ~3(х) = Цх — 0,105) — Цх — 0,205); (2.5) Гс(х) = 10)4(х) в(п (3лх) + 20~в(х); (2.5) 20у4( ) Ут(~) = (2. 7) Рассмотрим различные методы их приближения. 2.1. Интерполирование функций на отрезке Пример 1. Требуется интерполировать функцию (2.1), заданную на системе точек (на равномерной сетке или таблично) х~ = Ы, ( = О, 1, ...,'Ь вЂ” 1, где х е 10, () и Ь = кубическим интерпол †ляционным сплайном (П.1), который удовлетворяет краевым ус-' ловиям (П.З).
Решение задачи. 1. Зададим функцию (2.1) табличным способом. Положим: Находим: 2. Интерполируем функцию (2.1) кубическим сплайном на равномерной сетке. 32 2.1. Составим н решим систему алгебраических уравнений ,,' (П.б), обеспечивающих выцолненне нецрерывностн первой н второй прокзводной кубического сплайна: а)представим эту систему в матричном виде Вг = С, где матрицы В и С находятся с использованием программирования: Звмечаияе. Сеточная (табличная) функция Дх~) и значение ее проиэводных в начальной и конечной точках отрезка (О, () формируются в программе С(1, Ь, хл, хх) по передаваемой в нее аналитически заданной функции у(х); б) решаем эту систему методом обращения матрицы Э: Столбец М содержит Ь неизвестных т~ (1 = О, 1„..., Ь вЂ” 1), которые гарантируют непрерывность первой и второй производной сплайна 8З(1„х).
ЗЗ 2.2. Составляем программу вычисления ннтерполяционного кубического сплайна по системе точек (П.14), где Ф1 — количество точек, в которых вычисляется сплайн ЯЗ(й х) на отрезке х~, х~ + «~, 1 = О, 1,, „Х вЂ” 2." 2.3. Строим графики заданной функции и ее ннтерполяцион.
ные сплайны Я1 = 8 (~; х) и 83 = 8зф х) (рис. 2.1). Рис. 2.1 34 Меняя параметр Ь, можно исследовать приближенна функции Ях), заданной таблично (табличные значения функции выделены на графике квадратиками). Например, при Ь = 8 получим решение, показанное на рис, 2.2, Рис. 2,2 Замечание. Для осуществления онлайновой интерполяции Ма(йсзб содержит встроенную Функцию!лгегр (Р У, Х, У, т), которая возвращает значение з(т):= (лгегр (РУ, Х, У, т) для заданных векторов РУ, Х, У и заданного значения т.
Пара (Х, У) задает искомую Функцию на равномерной сетке (опорные точки). Вектор РУ вЂ” вектор вторых производных сплайифункций при различном виде интерполяции. Функция сзрнпе (Х, У) возвращает вектор РУ вторых пронаводных при приближении в опорных точках к кубическому полиному. Функция рврйлс (Х, У) возвращает вектор !' РУ вторых производных при приблюкенви к опорным точкам параболнческой кривой, Функция (зриэе (Х, У) возвращает вектор РУ вторых производных прн приближенни к опорным точкам прямой. Решение задачи (2.1) прв тех же параметрах с помощью Функции (пгзгр(Р У, Х, У, т) можно разбить на три этапа: 1) вычисляем векторы вторых производных: 2) формируем сплайн-функции трех типов: 3) по сФормированным сплайн-функциям строим нх графики (рнс. 2.3).
Рнс. 2.3 Пример 2. Требуется интерполировать функцию (2.1), заданную на системе точек (на равномерной сетке нли таблично) х) = Ы, ) = О, 1...., Ь вЂ” 1, где х~ е [О, Ц и Л = —, алгебраическим поли- 1 — 1 номом (1.39). Решение задачи.' 1. Зададим функцию (2.Ц табличным способом. Положим: 36 Находим: х ( О 0.75 1.5 2.35 3) у ~ 0.033 088б 0.234 0,033 4349 х10 ) 2. Интерполируем функцию (2.1) алгебраическим полиномом на равномерной сетке по алгоритму (П.19). 2.1. Составляем программу вычисления коэффициентов интерполируюп(его полннома (П.16) по алгоритму (П.19): 2.2.