logo
Самоучитель по Maple

22. Полиномиальная интерполяция табличных данных Полиномиальная интерполяция табличных данных

Если данные некоторой зависимости у(х) заданы векторами X и Y ее дискретных значений, то для получения интерполяционного степенного многочлена достаточно записать многочлен для всех N пар значений yi(xi) при i=1...N (или i =0...N- 1, если индексы отсчетов начинаются с нуля). Полученная при этом система линейных (относительно коэффициентов полинома) уравнений после решения дает коэффициенты аппроксимирующего полинома. Степень полинома на 1 меньше N, а вычисляемые при х значения у(х) совпадают с табличными (узловыми) в пределах вычислительной погрешности.

На самом деле все это делать не нужно, поскольку Maple 7 имеет реализующую данный алгоритм встроенную функцию interp(X,Y,v) или в инертной форме Interp(X,Y,v).

Переменная v указывает имя переменной интерполяционного полинома. Векторы X и Y должны содержать n + 1 =N координат точек исходной зависимости, где и — степень интерполирующего полинома.

Рисунок 9.5 показывает технику применения полиномиальной аппроксимации на основе функции interp с построением графика исходных точек и аппроксимирующего полинома. Нетрудно заметить, что график полинома проходит точно через исходные точки — они показаны квадратиками.

В этом примере полезно присмотреться к визуализации результатов вычислений и совместному построению графика интерполирующего полинома и исходных точек. В частности, для построения последних использована обычная функция plot, позволяющая выводить на график точки с заданными координатами, причем не только в виде окружностей, но и в виде точек, маленьких крестиков, кружков, квадратов и других фигур. Для выбора типа точек и других параметров графика его надо выделить (установив указатель мыши в поле графика и щелкнув левой кнопкой) и нажать правую кнопку мыши — появится контекстно-зависимое меню с операциями форматирования графика. Это меню показано на рис. 9.5.

Приведем еще несколько примеров использования функции Interp:

Рис. 9.5. Пример осуществления полиномиальной аппроксимации

33.gif

34.gif