|
Полиномиальная интерполяция табличных данных
Если данные некоторой зависимости
у(х) заданы векторами 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.
Пример осуществления полиномиальной аппроксимации
|