Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






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






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

Слово,, сплайн’’ (английское spline) означает гибкую линейку, используемую для проведения гладких кривых через заданные точки плоскости. Наглядное представление о сплайнах дают трамвайные и железнодорожные пути. Простейший пример сплайнов - ломанные.

Преимущество сплайнов перед обычной интерполяцией является, во-первых, их сходимость, и, во-вторых, устойчивость процесса вычислений.

Рассмотрим частный, но распространенный в вычислительной практике случай, когда сплайн определяется с помощью многочленов третьей степени (кубический сплайн).

Пусть на задана непрерывная функция . Введем узлы (сетку):

и обозначим

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

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

б) функция , а так же ее первая и вторая производные непрерывны на ;

в)

Последнее условие называется условием интерполирования.

Способ построения сплайна.

На каждом из отрезков будем искать функцию в виде многочлена третьей степени

(14)

где - коэффициенты, подлежащие определению.

Выясним смысл введенных коэффициентов. Имеем

поэтому

Из условий интерполирования получаем, что

Доопределим, кроме того, . Далее, требование непрерывности функции приводит к условиям

Отсюда, учитывая выражения для функций получаем при уравнения

Обозначая перепишем эти уравнения в виде

(15)

Условия непрерывности первой производной приводят к уравнениям

(16)

Из условий непрерывности второй производной получаем уравнения

. (17)

Объединяя (15) -(17), получим систему уравнений относительно неизвестных

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

Заметим, что условие совпадает с уравнением (17) при . Таким образом, приходим к замкнутой системе уравнений для определения коэффициентов кубического сплайна:

(18-20)

Убедимся в том, что эта система имеет единственное решение. Исключим из (18-20) переменные и получим систему, содержащую только Для этого рассмотрим два соседних уравнения (20):

и вычтем второе уравнение из первого. Тогда получим

Подставляя найденное выражение для в правую часть уравнения (19), получим

(21)

Далее, из уравнения (18) получаем И подставляя эти выражения в (21), приходим к уравнению

Окончательно для определения коэффициентов получаем систему уравнений

(22)

В силу диагонального преобладания система (22) имеет единственное решение. Так как матрица системы трехдиагональная, решение можно найти методом прогонки. По найденным коэффициентам коэффициенты и определяются с помощь явных формул

(23)

Таким образом, существует единственный кубический сплайн, определяемый условиями а)-в) и граничными условиями Заметим, что можно рассматривать и другие граничные условия.

Пример. Построить интерполяционный кубический сплайн для функции у = 1 /( 1+25 x2) на отрезке [-1; 1 ] с узлами xi+1 = x1 + ih, i =1, 2, …, 20, x1 = -1, h = 0, 1

Пусть значения функции у(х) в заданных узлах равняются уi = у(хi), і = 1, 2,..., 21. Сплайн будем искать в виде (19). Учитываем, что расстояния hi = h между узлами постоянные, тогда система уравнений для определения неизвестных параметров имеет вид

Заметим, что i .

Из последней системы последовательно находим

где l1=0, F1=0,

Вычислив значение (i = 19, 18,..., 1), можно на каждом из отрезков 1; х2, ] [х2; х3],..., [Х20; x21] записать вид сплайна S(x). В таблицу внесены результаты интерполирования данной функции построенным интерполяционным кубическим сплайном, интерполяционным полиномом Лагранжа двадцатой степени с узлами, которые совпадают с узлами сплайна, и интерполяционным полиномом Лагранжа третьей степени с узлами {-1, -1/3, 1/3, 1}. Из таблицы видно, что интерполяционный кубический сплайн имеет наименьшие отклонения от точных значений заданной функции в точках между узлами интерполирования. Близ точек х = -1 и х = 1 наибольшие погрешности имеет интерполяционный полином Лагранжа двадцатой степени.

 

x y(Х) S(x) L20(x) L3(x)
-0, 975 0.040378 0.040469 -29.06340 0.051029
-0.875 0.049651 0.049624 2.177484 0.098116
-0.575 0.107926 0.107922 0.088064 0.208834
-0.275 0.345946 0.345536 0.348475 0.273738
0.025 0.984615 0.983324 0.985872 0.292828
0.225 0.441379 0.440515 0.446107 0.280101
0.525 0.126733 0.126740 0.081529 0.222833
0.725 0.070718 0.070721 0.857682 0.159202
0.825 0.055507 0.055492 8.648327 0.119750
0.925 0.044661 0.044711 -97.9204 0.075208

 


 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.014 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал