Среднеквадратическое приближение таблично заданных функций
ЛАБОРАТОРНАЯ РАБОТА
СРЕДНЕКВАДРАТИЧНОЕ ПРИБЛИЖЕНИЕ ТАБЛИЧНО ЗАДАННЫХ ФУНКЦИЙ МЕТОДОМ НАИМЕНЬШИХ КВАДРАТОВ
Цель: Ознакомление студентов с основными методами интерполяции и аппроксимации таблично заданных функций. Закрепление на практике полученных знаний в области аппроксимации таких функций.
Задача: Научить студентов практическому применению полученных теоретических знаний при решении задач сглаживания результатов эксперимента полиномами, как при алгоритмизации таких задач, так и при их программировании.
ТЕОРЕТИЧЕСКИЕ ПОЛОЖЕНИЯ
Интерполяция и аппроксимация
В практике часто встречается ситуация, когда некоторая функция f(x) задана таблицей ее значений в отдельных точках х = x0, x1, … , xn [a, b], например, дискретные показания прибора во времени, а следует вычислить функцию f(x) в некоторых промежуточных точках. Эту задачу можно решить приближенно, заменяя функцию f(x) более простой непрерывной функцией F(x). Существуют два основных способа такой замены: интерполяция и аппроксимация.
Суть интерполирования – в построении такой легко вычисляемой функции F(x), которая совпадает с функцией f(x) в точках х = x0, x1, … , xn. Иными словами, график функции F(x) в плоскости Оху должен проходить через точки х = x0, x1, … , xn, в которых задана функция f(x). При этом, точки х = x0, x1, … , xn называют узлами интерполирования, а функцию F(x) – интерполяционной. В качестве интерполяционной функции в большинстве случаев выбирают полиномы. Так, линейная интерполяция состоит в простом последовательном соединении точек (x0, f(x0)), (x1, f(x1)), … ,
|
|
(xn, f(xn)) отрезками прямых, т.е. в построении nполиномов первой степени. Значение функции f(x) в точке х*, где х* (xi,xi+1), i = 0, 1, … , n – 1, вычисляется в этом случае достаточно просто:
f(x*) = f(xi) + · (х*–xi).
Квадратичная интерполяция состоит в соединении последовательных троек узлов интерполяции параболами. Кубическая интерполяция – четверок – кубическими параболами и т.д. Интерполяционные полиномы степени (n – 1)есть гладкие функции, проходящие через все узлы интерполяции. При наложении дополнительных условий на соединение функции F(x)в точках (x1, f(x1)), (x2, f(x2)), … , (xn-1, f(xn-1)) получим т.н. сплайн-интерполяцию. Для построения интерполяционных многочленов разработано множество методов: Ньютона, Стирлинга, Лагранжа и др.
Во многих случаях, имея значения функции в n+ 1 узлах, удобно вместо интерполяционного многочлена находить полином степени m<n, который бы хорошо приближал (аппроксимировал) рассматриваемую функцию. При этом требование совпадения функций f(x) иF(x) в точках (x0, f(x0)), (x1, f(x1)), … , (xn, f(xn)) заменяется на требование минимизации суммарного отклонения между значениями функций f(x) и F(x) в точках х = x0, x1, … , xn.
|
|
Одним из основных методов построения аппроксимизационного полинома является метод наименьших квадратов, по которому требуется, чтобы сумма квадратов отклонений между значениями функции и значениями приближающей функции в узлах должна быть минимальной. Почему квадратов? Потому что сами отклонения между значениями функций может быть как положительными, так и отрицательными, и их сумма не дает истинного представления о различии между функциями за счет компенсации положительныхи отрицательных значений. Можно взять модули отклонений, однако положительные квадраты этих отклонений более удобны в работе.
Среднеквадратическое приближение таблично заданных функций
(метод наименьших квадратов)
Пусть в узлах x0, x1, … , xn имеем значения у0, у1, … , уn функции f(x). Среди полиномов m-й степени (m<n)
Pm(x) = a0 + a1x + a2x2 + … + amxm(1)
найти такой, который доставляет минимум выражению
S= .(2)
Неизвестными являются коэффициенты полинома (1). Сумма (2) представляет собой квадратичную форму от этих коэффициентов. Кроме того, формула (2) показывает, что функция S = S(a0, a1, … , am) не может принимать отрицательных значений. Следовательно, минимум функции S существует.
|
|
Применяя необходимые условия экстремума функции S = S(a0, a1, … , am), получаем систему линейных алгебраических уравнений для определения коэффициентов a0, a1, … , am:
, (k = 0, 1, 2, … , m)(3)
Полагая сp = , dp = , запишем систему (3) в матричном виде
Сa = d, (4)
где
С = – матрица системы, а = {a0, a1, … , am}T – вектор неизвестных, d = {d0, d1, … , dm}T – вектор правых частей системы.
Если среди узлов x0, x1, … , xn нет совпадающих и m ≤ n, то система (4) имеет единственное решение a0 = ,a1= , … , am= . Тогда полином
= + x + x2 + … + xm
является единственным полиномом степени m, обладающим минимальным квадратичным отклонением S* = Smin.
Погрешность среднеквадратического приближения функции характеризуется величиной δ = .
Самый простой и наиболее часто используемый вид аппроксимации (среднеквадратического приближения) функции – линейная. Приближение данных (xi, yi) осуществляется линейной функцией y(х)= ax + b. На координатной плоскости (x, y) линейная функция, как известно, представляется прямой линией.
Пример. Сгладить систему точек прямойy= ax + b.
х | –1 | 0 | 1 | 2 | 3 | 4 |
у | 0 | 2 | 3 | 3,5 | 3 | 4,5 |
Строим рабочую таблицу:
|
|
абочую таблицу:№ | xi | yi | xi2 | xiyi | axi+ b | axi+ b –yi | (axi+ b –yi) 2 |
1 | –1 | 0 | 1 | 0 | 0,81 | 0,81 | 0,6561 |
2 | 0 | 2 | 0 | 0 | 1,55 | –0,45 | 0,2025 |
3 | 1 | 3 | 1 | 3 | 2,29 | –0,71 | 0,5041 |
4 | 2 | 3,5 | 4 | 7 | 3,03 | –0,47 | 0,2209 |
5 | 3 | 3 | 9 | 9 | 3,77 | 0,77 | 0,5929 |
6 | 4 | 4,5 | 16 | 18 | 4,51 | 0,01 | 0,001 |
9 | 16 | 31 | 37 |
Система для определенияa и b имеет вид: Решим ее с помощью
формул Крамера:
Δ = = 105, Δ1 = = 78, Δ2 = = 163,
a = = = 0,74, b = = = 1,55.
Искомое уравнение y= 0,74x + 1,55.
Дата добавления: 2018-04-15; просмотров: 1697; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!