ЦИФРОВАЯ ОБРАБОТКА СИГНАЛОВ. Аппроксимация сигналов. Цифровая обработка сигналов
Скачать 360.5 Kb.
|
14.2. интерполяция и экстраполяция сигналов [39, 55]. Полиномиальная интерполяция. Одним из основных типов точечной аппроксимации является интерполирование. Сущность его заключается в том, что функции yi = s(xi) сопоставляется интерполяционный многочлен f(x) = а0 + а1х + а2х2 + … + anxn =ai·xi, (14.2.1) принимающий в точках xi те же значения yi, что и функция f(x). Для выполнения полиномиальной интерполяции достаточно по выражению (14.2.1) составить систему линейных уравнений для n узловых точек и определить n значений коэффициентов ai. При N точках функции yi максимальная степень интерполяционного многочлена n=N-1, и в этом случае говорят о глобальной интерполяции с прохождением f(x) через все значения точек yi. Однако в этом случае при большом количестве узлов получается очень высокая степень многочлена. Кроме того, экспериментальные табличные данные могут содержать ошибки измерений, а глобальная интерполяция повторит все допущенные при измерениях ошибки. Для исключения этого фактора стараются подобрать аппроксимирующий многочлен как можно меньшей степени (как правило, n=1, 2, 3), график которого проходит близко от узловых точек. На практике мерой отклонения многочлена f(x) от заданной функции на множестве точек (xi,yi) является величина среднеквадратичного приближения 2 = i(f(xi)-yi)2, минимальное значение которой обеспечивается подбором коэффициентов ai. Пример выполнения глобальной интерполяции приведен на рис.14.2.1. Равномерной дискретизации данных для интерполяции не требуется. Максимальная степень полинома на практике обычно устанавливается не более 8-10, а большие массивы данных интерполируются последовательными локальными частями. Рис. 14.2.1. Интерполяция данных. Линейная и квадратичная интерполяция являются самыми простыми способами обработки таблиц и выполняются по уравнениям: f(x)лин = а0 + а1х. f(x)кв = а0+а1х+а2х2. При линейной интерполяции вычисления дополнительных точек выполняются по линейной зависимости. Графически это означает простое соединение узловых точек отрезками прямых. В системе Mathcad для этого используется функция linterp(X,Y,x), где X и Y – вектора узловых точек. Функция linterp(X,Y,x) возвращает значение функции при её линейной интерполяции по заданным аргументам х. При небольшом числе узловых точек (менее 10) линейная интерполяция оказывается довольно грубой. Для целей экстраполяции функция linterp не предназначена. Для практического использования более удобны формулы аппроксимации, не требующие предварительного определения коэффициентов аппроксимирующих полиномов. К числу таких формул относится интерполяционных многочлен по Лагранжу /40/. При аппроксимации функции у(х) многочленом n-й степени Y(x): Y(x) = + +… …+ . (14.2.2) Пример интерполяции по Лагранжу приведен на рис. 14.2.2. Рис. 14.2.2. Интерполяция по Лагранжу. |