Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

МатМод2Г / Самостоятельно / Интерполирование сплайнами (кратко)

.doc
Скачиваний:
16
Добавлен:
18.04.2015
Размер:
49.66 Кб
Скачать

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

Остановимся на рассмотрении интерполирования полиномиальными сплайнами. Задача интерполирования полиномиальным сплайном состоит в следующем:

Пусть в точках a=x0<x1<…<xn=b заданы значения функции f(x):

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

Необходимо найти функцию Sm(x), удовлетворяющую требованиям:

  1. на каждом из отрезков [xi-1, xi] Sm(x) является многочленом степени m

    Smi(x)=a0ixm+ a1ixm-1+…+ am-1,ix+ ami,   xi-1x xi,  i=1,2, …,n;

  2. в точках xi имеют место равенства

    Sm(xi)= f(xi)=yi,  i=0,1, …,n (условие интерполяции);

  3. Sm(x) непрерывна и имеет непрерывные производные до (m‑1)‑го порядка, т.е.

, i=1,2, …,n, j=0,1,…,m

(условия непрерывности).

Функция Sm(x) называется полиномиальным сплайном порядка m. В дальнейшем для краткости будем называть ее просто сплайн.

Итак, чтобы построить интерполяционный сплайн Sm(x) необходимо найти n(m+1) коэффициентов aki, k=0,1,…,m, i=1,2, …,n. Для чего по условиям (2) и (3) составляют систему линейных алгебраических уравнений. Условие (2) дает n+1 уравнение, а условие (3)  m(n1) уравнений. Недостающие m1 уравнение получают, налагая дополнительные краевые условия, т.е. условия в точках a и b.

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

На практике чаще всего применяют сплайны 3-его порядка, называемые кубическими, так как это сплайны минимальной степени, имеющие непрерывную вторую производную, что является необходимым требованием при проектировании кривых. Это значит, что на каждом из отрезков [xi-1, xi], i=1,2, …,n функцию f(x) заменяют кубическим многочленом S3i(x), принимающим на концах отрезка значения S3i(xi-1)=f(xi-1)=yi-1 и S3i(xi)=f(xi)=yi соответственно, причем и , i=1, 2, …, n. Дополнительные краевые условия могут быть, например, такими: и (можно задать и другие краевые условия).

Задача построения кубического сплайна сводится к решению системы линейных алгебраических уравнений с симметричной матрицей коэффициентов, со строгим диагональным преобладанием, т.е. в каждой строке модуль диагонального элемента больше суммы модулей остальных элементов. В линейной алгебре доказывается, что система с такой матрицей имеет единственное решение. Кроме того, матрица коэффициентов системы является трехдиагональной, т.е. ненулевыми в ней являются только элементы главной и двух соседних ей диагоналей. Решение такой системы находят методом прогонки, который является частным случаем метода Гаусса, учитывающим специальный вид матрицы системы.

На практике иногда применяют интерполирование сплайном первого порядка S1(x). Оно состоит в замене графика функции f(x) ломаной, построенной по узлам. Для построения такой ломаной, необходимо найти коэффициенты прямых, проходящих через точки (xi, yi) и (xi, yi):

или

, i=1,2, …,n.

Таким образом, с учетом обозначения , имеем