Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
численные методы Уч. пособие.doc
Скачиваний:
81
Добавлен:
05.06.2015
Размер:
3.51 Mб
Скачать
    1. Сплайн – интерполяция

Интерполяция на больших отрезках, т.е. с относительно большим количеством узловых точек, имеет дополнительные трудности. С одной стороны, при больших расстояниях между узловыми точками точность очень мала, а с другой стороны, интерполяционные многочлены высокого порядка на концах отрезка значительно колеблются, что существенно искажает поведение функции. Это становится особенно важно при последующем дифференцировании.

Отчасти при решении таких задач оказывает помощь кусочная интерполяция более низкого порядка: интерполяция осуществляется по небольшому количеству узловых точек отрезка, а затем многочлены объединяют в общую интерполяционную функцию. При этом в точках стыковки обычно терпит разрыв уже первая производная.

Для получения интерполяционных формул с гладкими производными имеет смысл применить т.н. сплайн-интерполяцию функции. В приложениях часто бывает достаточно применить кубическую сплайн-интерполяцию.

Определение. Кубическим сплайном, соответствующим непрерывной на отрезке таблично заданной функции:

i

0

1

...

...

n-1

n

xi

x0

x1

xn-1

xn

yi

y0

y1

yn-1

yn

и узлам называется функцияудовлетворяющая следующим условиям:

  1. На каждом частичном сегменте функцияявляется многочленом третьей степени;

  2. Значения функции в узлах интерполяции равны значениям функции:;

  3. Функция , ее первая и вторая производные непрерывны в узловых точках.

По определению кубический сплайн можно представить в виде

где на каждом частичном сегменте есть многочлен степени не выше третьей:

(45)

где - неизвестные коэффициенты (всего 4n – неизвестных).

Используя условие (2), определяем n – неизвестных коэффициентов:

(46)

Таким образом, необходимо определить 3n – неизвестных коэффициентов .

Условие непрерывности в точкахприводит к равенствам:

Или в соответствии с (45) и с (46)

(47)

Обозначив длину интервала как

,

перепишем (47) с учетом (45)

(48)

Дифференцируя (45) и накладывая условие непрерывности первой производной в узлах, получаем ещеn- уравнений

(49)

Далее непрерывность второй производной , дает нам основание записать

(50)

Совокупность уравнений (48)-(50) образует систему (3n-2) – уравнений относительно 3n- неизвестных .

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

(51)

Таким образом мы получили систему 3n- уравнений (48-51) относительно 3n- неизвестных .

Из уравнения (48) выразим :

(52)

Понижая индекс суммирования на единицу

(53)

и вычитая (52) из (53), далее подставляя полученную разность в (49), после простых преобразований получим

(54)

Из уравнения (50) имеем:

(55)

Подставляя (55) в (54), получим

(56)

Неизвестные координаты находим из последнего уравнения. Подставив их в (55) определим, а затем с помощью (52) и.

Таким образом, задачу можно считать решенной.

Пример 7. Построить сплайн-интерполяцию функции по таблице

i

0

1

2

3

xi

0

2

4

6

yi

1

1/9

1/81

1/729

с дополнительными условиями . Найти с помощью интерполяции значение функциипри.

Решение.

Учитывая, что , система (56) сводится к двум уравнениям:

Решение этой системы будет

Далее находим по (55) значения коэффициентов :

И, наконец, определим по (52) коэффициенты :

Значения коэффициентов суть значения таблично заданной функции:

Таким образом, можно считать сплайн-интерполяцию построенной в виде

Для нахождения значения интерполирующей функции в заданной точке заметим, что, и поэтому используем многочлен:.Frame2

Пример 8. Построить сплайн-интерполяцию функции по таблице

i

0

1

2

3

xi

-1

0

1

2

yi

1/2

1

2

4

с дополнительными условиями . Найти с помощью интерполяции значение функциипри.

Решение.

Так как дополнительные краевые условия аналогичны предыдущему примеру, вновь имеем , но, учитывая, чтосоставим систему (56):

Решение этой системы будет

Значения коэффициентов ,:

Таким образом, можно считать сплайн-интерполяцию построенной в виде

Для нахождения значения интерполирующей функции в заданной точке заметим, что, и поэтому используем многочлен:.

Frame3

Сравнивая примеры 7 и 8 обратим внимание на следующее: погрешность в последнем явно меньше. Связано это в первую очередь с тем, что интервал выбран в два раза меньше. Можно показать, для случая равноотстоящих узлов

где - промежуток интерполяции.

Интерполяция сплайнами сопряжена с немалым объемом вычислительной работы по сравнению с другими видами интерполяции. Однако эта трудность легко решается с помощью ЭВМ.