Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


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



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

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

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

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

Геометрически это означает, что нужно найти кривую y=F(x)некоторого определенного типа, проходящую через заданную систему точек Mi(xi, yi)(i=0, 1, 2, …, n)(см. рис. 2.1).

 
 

Функцию F(x) будем искать в виде полинома Pn(x) степени не выше n. Полученную интерполяционную формулу y=F(x)обычно используют для приближенного вычисления значений данной функции f(x) в точках x, отличных от узлов интерполирования, при этом, если xÎ [x0, xn], то речь идет о задаче интерполирования, если [x0, xn] - экстраполирования.

 
 
Рис. 2. 1


Интерполяционный многочлен Лагранжа

Интерполяционный многочлен Лагранжа степени n имеет вид

f(x) = L n (x) = +R n (x),

где R n (x) = f(x) – L n (x)– остаточный член, вычисляемый по формуле

R n (x) = , где x Î [x1, x2],

x1=min(x1, x2, …, xn), x2=max(x1, x2, …, xn).

Оценка погрешности остаточного члена представлена в виде неравенства

|R n (x)| , где M n+1 = |f (n+1)(x)|.

Интерполяционная формула Гаусса

В случае квадратичной интерполяции (n=2) вычисление значения функции в некоторой точке x, с заданной точностью ε, предполагает использование трех ближайших к x узлов. Пусть h = x j – x j-1 - шаг сетки узлов интерполирования, - значения функции в узлах сетки.

Обозначим за xj ближайший узел к данной точке x.

Обозначим и конечные разности первого и второго порядка:

;

.

Тогда интерполяционная формула Гаусса запишется в виде:

f(x)=L2(x)= ,

где R2(x)=f(x)-L2(x)остаточный член, вычисляемый по формуле:

R2 (x) = , где x Î [xj-1, xj+1].

Шаг h выбирается из условия | R2 (x) | ≤ ε

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

Сплайном соответствующей функции f(x), построенным по данным узлам сетки {x i}, i=0,..., n, называется функция Sm(x), удовлетворяющая следующим условиям:

a) условие кусочно-полиномиальной функции: на каждом отрезке [xi-1, xi] (i=1, …, n) функция является многочленом степени m;

б) условие непрерывности: сплайн-функция и ее (m-1) производная непрерывны в заданной области;

в) условие интерполирования: в узлах сетки значение сплайна и значение функции совпадают:

(i=0, …, n).

Линейный сплайн

Построим на отрезке [a, b] функцию Si(x) так, чтобы на каждом отрезке [x i-1, x i ] (i=1,..., n) эта функция являлась бы линейным многочленом вида:

Si(x)=ai+(xi-x)bi.

Поскольку

Si(xi)=f(xi);

Si(xi-1)=Si-1(xi-1)=f(xi-1),

то, обозначив yi=f(xi) и hi=xi-xi-1, получим формулы для вычисления коэффициентов:

ai=yi,

bi= (i=1, …, n).

Таким образом, линейный сплайн имеет вид

Si(x)= yi +(xi - x) .

Параболический сплайн

Параболические сплайны представляются в виде полинома второй степени: Si(x)=ai+(x-xi)bi+(x-xi)2ci с граничными условиями: b1=A1 либо bn=An, где A1 - значение первой производной в точке x=x1; An - значение первой производной в точке x=xn.

Si(x) Si+1(x)

xi xi+1 xi+2

Для определения коэффициентов сплайна ai, bi, ci используются условия:

Si(xi)=f(xi) i=1, …, n;

Si(xi+1)=Si+1(xi+1)=f(xi+1)

и условие непрерывности первой производной

(xi+1)= (xi+1).

Из граничных условий находим:

ai=yi, i=1, …, n;

ci= (i=1, …, n-1).

Коэффициенты bi вычисляются по одной из следующих рекуррентных формул:

при b1=A1; bi+1 = zi - bi ; i=1, …, n-1;

при bn=An; bn-i = zn-i - bn-i+1 ; i=1, …, n-1;

zi=2(yi+1 - yi) / hi, hi=xi+1-xi.

Кубический сплайн

Построим на отрезке [a, b] функцию Si(x) так, чтобы на каждом отрезке

[x i-1, x i ] (i=1,..., n) функция Si(x)представляла собой полином третьей степени

Si(x)=ai+ bi (xi-x) + ci(xi-x)2+ di(xi-x)3

и в узлах xi имела первую и вторую непрерывные производные:

(x)= -bi -ci(xi-x) - di(xi-x)2,

(x)=ci+di(xi-x),

(a) = =0.

Используя условие интерполирования и непрерывности, имеем:

Si(xi)= f(xi),

Si(xi)= Si+1(xi),

(xi)= (xi),

(xi)= (xi),

далее, обозначив yi=f(xi) и hi+1=xi+1-xi, получим, что

ai=yi, (2.1)

ai=ai+1+bi+1hi+1+ ci+1 + di+1 , (2.2)

bi=bi+1+ci+1hi+1 + di+1 , (2.3)

ci=ci+1+di+1hi+1. (2.4)

Из (2.4) следует:

di+1= (i=0, 1,..n-1).(2.5)

Подставим (2.5) в (2.2) и выразим bi+1:

bi+1= (i=0, 1, …n-1).(2.6)

Подставим (2.6) и (2.5) в (2.3) и получим систему из (n-1) трехточечного уравнения относительно переменной c:

α i ci-1i ci+ γ i ci+1 = φ i, (i=1, …, n-1), (2.7)

где

α i = hi,

β i = 2(hi+1+hi),

γ i = hi+1,

φ i = 6 .

Уравнение (2.7) при краевых условиях ( (a) = =0) c0=0, cn=0 решается методом прогонки:

ci = pi+1 ci+1 + qi+1 (i=n-1, …, 1).(2.8)

Запишем формулу (2.8) для ci-1 и подставим в уравнение (2.7):

α i (pi ci + qi )i ci + γ ici+1i.

Выразим отсюда ci:

ci= ci+1+ .

Сравнивая с формулой (2.8), выпишем формулы для прогоночных коэффициентов pi+1 и qi+1:

pi+1= ,

qi+1= (i=1, …, n-1).

Для вычисления p1, q1 запишем краевое условие c0=0 в виде (2.8):

с0=p1c1+q1=0.

Отсюда следует, что p1=0, q1=0. Определим все pi+1, qi+1 для i=1, …n-1 и, зная граничное условие cn=0 по (2.8) для i=n-1, …, 1, найдем все ci.. Затемиз формул (2.5) и (2.6) получим оставшиеся коэффициенты для кубического сплайна.

Задания

1. Используя интерполяционный многочлен Лагранжа степени n, построить на отрезке [a, b] графики заданной функции y=f(x) и полинома Лагранжа y=Ln(x). Вывести величину теоретической и практической погрешностей:

e теор. = | R n (x) |,

e практ. = | f(x) – L n (x) |.

2. Используя полином Гаусса при n=2, найти значение функции y = f(x) в точке x = x0 с заданной точностью e.

3. Используя интерполирование функции сплайнами, построить графики заданной функции y = f(x), линейного сплайна y = S1(x) и кубического сплайна y = S3(x). Вывести практическую погрешность для сплайнов.

Варианты функций


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-04-10; Просмотров: 1216; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.031 с.)
Главная | Случайная страница | Обратная связь