Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Интерполирование функций.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
1.2 Mб
Скачать

Постановка основной задачи интерполирования

Рис. 2. Узлы интерполяции и интерполирующая функция

Пусть на конечном отрезке [a;b] заданы n +1 точки: x0 ,x1 ,...,xn (сетка), которые называются узлами интерполяции, и значения функции f (x) в них

f (x0 ) = y0 , f (x1) = y1,..., f (xn ) = yn . (1.1)

Требуется построить функцию F(x) (интерполирующая функция) из известного класса (должен быть определен дополнительно) и принимающую в узлах сетки те же значения, что и функция f (x):

F(xk ) = f (xk ) = yk , k = 0,n . (1.2)

Геометрическая иллюстрация этой задачи показана на рис. 2: искомая интерполирующая функция y = F(x) (непрерывная линия на рисунке) проходит через точки Mk(xk , yk),

k = 0,n , отмеченные кружками на координатной плоскости. Видно, сколь значимо отличается исходная функция от интерполирующей. В этой постановке (1.2) задача интерполирования некорректна: имеется неединственное решение в силу произвольности выбора интерполирующей функции из предложенного класса функций. Однако эта задача становится корректной, если вместо произвольной функции F(x) искать многочлен Pn(x) порядка не выше n , удовлетворяющий условиям:

Pn (xk ) = yk , k = 0,n. (1.3)

Полученную интерполирующую функцию y = Pn (x) называют интерполяционным полиномом и обычно используют при вычислении значения данной функции y = f (x) или ее производных для значений аргумента, отличных от узлов интерполирования. Если интерполяционный полином строится сразу для всех узлов сетки, то его называют глобальным. После выбора класса многочленов в качестве интерполирующей функции остается свобода выбора базиса в пространстве таких многочленов. Наиболее очевидный базис из одночленов 1, x, x2 ,..., xn приводит к решению системы линейных алгебраических уравнений с матрицей Вандермонда, которая плохо обусловлена (Это является следствием почти линейной зависимости таких функций. На отрезке [0;1] степенные одночлены положительны и принимают на концах отрезка одни и те же значения, равные 0 и 1. Значит, их скалярное произведение заведомо не может быть равным или достаточно близким к нулю).

Линейная интерполяция

  • Простейшая и наиболее часто используемая интерполяция.

  • Она состоит в том, что заданные точки xi, yi при i=0,1,2,... n соединяются прямолинейными отрезками и функцию f(x) можно приближенно представить ломаной с вершинами в данных точках.

  • Уравнения каждого отрезка ломаной в общем случае разные.

  • Поскольку имеется n интервалов (xi-1,xi), то для каждого из них в качестве уравнения интерполяционного многочлена используется уравнение прямой, проходящей через две точки.

  • В частности, для i-го интервала можно написать уравнение прямой, проходящей через точки (xi-1, yi-1) и (xi ,yi), в виде

  • Следовательно, при использовании линейной интерполяции сначала нужно определить интервал, в который попадает значение аргумента x, а затем подставить его в формулу (1) и найти приближенное значение функции в этой точке.

Интерполирование по схеме Эйткена

Итерационные методы интерполирования основаны на повторном применении некоторой простой интерполяционной схемы. Наиболее известным из итерационных методов является метод Эйткена, в основе которого лежит многократное применение линейной интерполяции.

В соответствии со схемой Эйткена линейная интерполяция по точкам Mi (xi , yi ) и Mi+1(xi+1,yi+1) сводится к вычислению определителя второго порядка

При интерполировании по трем и более точкам последовательно вычисляются многочлены

В общем случае интерполяционный многочлен n -й степени, принимающий в точках xi значения yi (i = ), записываются следующим образом:

(3)

Основным достоинством схемы Эйткена является возможность постепенного увеличения числа используемых значений xi до тех пор, пока последовательные значения P 0,1,2,…,n (x ) и P 1,2,…,n -1 (x ) не совпадут в пределах заданной точности. Иначе говоря, вычисления прекращаются при выполнении условия

|P 0,1,2,…, n (x ) - P 1,2,…, n -1 (x )| < e (k £n ).

При использовании ЭВМ вычисления по формуле (3) реализуются в виде рекурсивной подпрограммы - функции РХ(I, J) с формальными параметрами I, J, определяющими индексы крайних узлов интерполирования, которые используются для получения значения соответствующего многочлена Pi ,i +1,…, j (x ).

Для хранения вычисленных значений P (x )используется двумерный массив M размером N*N элементов, где N - максимальное число узлов интерполирования. Каждому возможному значению P (x ) соответствует один из элементов M(I, J), расположенный выше главной диагонали (I < J) и определяемый сочетанием индексов крайних узлов интерполирования.

Например, значению многочлена P 1,2 (x ) соответствует элемент M(1,2), значению P2,3,4(x)- элемент M(2, 4) и т.д. Симметричные элементы M(J, I), расположенные ниже главной диагонали (J > I), показывают, вычислены ли соответствующие значения P (x ) на данный момент, и определяются как

Схема рекурсивной процедуры PX приведена на рис. 1, где Х- массив значений узлов интерполирования, Y- массив значений функции в узлах интерполирования, Z- значение аргумента.

Рис. 3. Схема рекурсивной процедуры PX