Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
M1_309.DOC
Скачиваний:
13
Добавлен:
04.12.2018
Размер:
1.51 Mб
Скачать

2. Квадратичная интерполяция.

( x - xi2)(x - xi3) ( x - xi1)(x - xi3) ( x - xi1)(x - xi2)

у= yi1 ------------------- + yi2 ------------------- + yi3 -------------------;

(xi1 - xi2)(xi1 - xi3) ( xi2 - xi1)(xi2 - xi3) ( xi3 - xi1)(xi3 - xi2)

где

xi1, xi2, xi3 - ближайшие к х узловые точки ( рис. 15 ).

Квадратичная интерполяция осуществляется по трем ближайшим точкам.

Пример.

1. х  [ x1, x3 ],

( x - xi2)(x - xi3) ( x - xi1)(x - xi3) ( x - xi1)(x - xi2)

у= yi1 ------------------- + yi2 ------------------- + yi3 -------------------;

(xi1 - xi2)(xi1 - xi3) ( xi2 - xi1)(xi2 - xi3) ( xi3 - xi1)(xi3 - xi2)

2. х  [ x1, x3 ],

( x - xi2)(x - xi3) ( x - xi1)(x - xi3) ( x - xi1)(x - xi2)

у= yi1 ------------------- + yi2 ------------------- + yi3 -------------------;

(xi1 - xi2)(xi1 - xi3) ( xi2 - xi1)(xi2 - xi3) ( xi3 - xi1)(xi3 - xi2)

Рис. 15

3 . Интерполирование многочленом степени n-1

Интерполирование многочленом степени n-1 производите по n экспериментальным точкам (рисунок 16). Интерполирование будет осуществляться по формуле (1).

Блок-схема алгоритма представлена на рисунке 17.

Основные обозначения:

x и у - массивы размерностью N;

N - число узловых точек;

x0 - значение х, при котором необходимо найти интерполированное значение функции;

у0 - значение функции, вычисленное в точке х0.

Рис. 16.

3. 3. 2. Форма Ньютона.

Определение. Пусть х1, х2, ... , хN - произвольные точки (узлы), причем xi xj при i  j.

Значения y1, y2, ... , yn функции у в узлах называются разделенными разностями нулевого порядка и обозначаются как [xi], где i=1,N.

Рис.17

[ x1] = y1

[ x2] = y2

. . . ___

[ xn] = yn [ xi] = yi i = 1, n .

y(x2)-y(x1) y2-y1

Число y( x1 ; x2) = y( x2 ; x1) = ------------- = ------

x2-x1 x2-x1

называется разделееной разностью первого порядка функции у и обозначается [ x1 ; x2 ] = [ x2 ; x1 ]. В общем виде

y(xi)-y(xi-1) yi-yi-1

y ( xi-1 ; xi ) = y ( xi ; xi-1 ) =------------- = -------

xi-xi-1 xi-xi-1

___

где i =1, n

Число

1 y3-y2 y2-y1

y ( x1 ; x2 ; x3 ) = ------- (-------- - -------- )

x3-x1 x3-x2 x2-x1

называются разделенной разностью второго порядка функции у и обозначаются [ x1 ; x2 ; x3 ] . В общем виде

1 yi-yi-1 yi-1-yi-2

y ( xi-2 ; xi-1 ; xi ) = ------- (--------- - ---------- )

xi-xi-2 xi-xi-1 xi-1-xi-2

___

где i =1, n

Разделенная разность k-го порядка определяется через разделенные разности ( k - 1) -го порядка по рекуррентной формуле ;

y ( x2 ; x3 ; x4 ;… ; xk+1) - y ( x1 ; x2 ; x3 ;… ; xk.)

y ( x1 ; x2 ;… ; xk+1) = ---------------------------------------------------

_____ xk+1 - x1

k = 1, n-1

или

[ x2 ; x3 ; x4 ;… ; xk+1] - [ x1 ; x2 ; x3 ;… ; xk.]

[ x1 ; x2 ;… ; xk+1] = -----------------------------------------------

xk+1 - x1

Например , k = 1

[ x2 ] - [ x1] y2 - y1

y ( x1 ; x2 ) = --------------- = ----------

x2 -x1 x2 - x1

Лемма. Пусть x1, x2, …, xn произвольные попарно несовподающие узлы, в которых известны значения функции y1, y2, …, yn. Алгебраический многочлен ( n - 1)-й степени

ln-1(x) = y(x1) + (x - x1) y( x1 ; x2 ) + (x - x1)(x - x2) y( x1 ; x2 ; x3) +

… +(x - x1)(x - x2)… (x - x1)(x - x2)… (x - xn-1) y(x1 ; x2 ; x3 ;… ; xn) (2)

является интерполяционным, т. е.

____

ln-1(xi) = y (xi), i = 1, n.

Так как разделенные разности y(x1), y(x1 ; x2), …, y ( x1 ; x2 ;… ; xn) это вполне определенные числа то функция (2) является многочленом (n-1)-й степени. Многочлен (2) называется интерполяционным многочленом Ньютона для неравных промежутков. Согласно утверждению, существует только один интерполяционный многочлен, интерполяционный многочлен Лагранжа тождественно совпадает с интерполяционным многочленом Ньютона, т,е,

ln-1(x)  Fn-1(x).

У интерполяционного многочлена Лагранжа видна явная его зависимость от каждого значения функции yi, где i = 1, n. Это во многих случаях бывает полезно. Однако при изменении n интерполяционный многочлен Лагранжа требуется строить заново. В этом состоит его недостаток, Интерполяционный многочлен Ньютона (2) выражается не через значения функции y, а через ее разделенные разности,

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

n

ln-1(x) =  Ci Ni (x) , где

i=1

___

Ni(x) = (x - x1)(x - x2)(x - x3)… (x - xi-1) ; i = 2,n ;

N1(x) = 1 ;

Ci = [ x1 ; x2 ;… ; xi ] ;

___

[ xi ] = yi ; i = 1,n ;

1

[ x1 ; x2 ;… ; xi ] = ------- ( [ x2 ;… ; xi ] - [ x1 ;… ; xi-1]).

xi-x1

При вычислениях разделенные разности записываются в виде таблицы 4,

Таблица 4,

xi

[xi]

[xi xi+1]

[xi;xi+1;xi+2]

[xi;xi+1;xi+2;xi+3]

[xi;xi+1;xi+2;xi+3;xi+4]

x1

y(x1)

y(x1;x2)

x2

y(x2)

y(x1;x2;x3)

y(x2;x3)

y(x1;x2;x3;x4)

x3

y(x3)

y(x2;x3;x4)

y(x1;x2;x3;x4;x5)

y(x3;x4)

y(x2;x3;x4;x5)

x4

y(x4)

y(x3;x4;x5)

y(x4;x5)

x5

y(x5)

Программа использует следующие переменные :

Х0 - аргумент, при котором необходимо вычислить значение функции ;

(N-1) - степень многочлена ;

N - число экспериментальных данных ;

X(N),Y(N) - массивы, i = 1,N.

Замечание :

Разделенные разности помещаются в массив Y.

I,K - параметры циклов ;

L - значение многочленов в точке Х0 ;

P и I1 - рабочие переменные.

Блок-схема алгоритма представлена на рисунке 18,

3. 3. 3. Погрешность интерполяции.

Если функция (x), подлежащая интерполяции, достаточное число дифференцируема, то можно вывести формулу для определения погрешности интерполяции, Оценка максимальной погрешности интерполяции на всем отрезке [ a ; b ] :

Mn

max | (x) - Fn-1(x) |  ---- max | Wn-1(x) | ;

[a,b] n!

Mn = max | (n)(x) | <  ;

[a,b]

Wn-1(x) = (x-x1)(x-x2)… (x-xn-1).

Рис. 18

3. 3. 4. Многоинтервальная интерполяция.

Многоинтервальная интерполяция заключается в интерполяции y(x) в ряде частичных интервалов ( ограниченых двумя узлами или группой узлов ) отдельными полиномами невысокой степени. Такая интерполяция может применяться при широком общем отрезке [ a ; b ] , когда обычная интерполяция полиномом высокой степени дает большую погрешность и ведет к большему времени вычислений. Заметим также, что по виду

полинома и значениям его коэффицентов трудно судить о виде зависимости y(x).

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

Сплайн-интерполяция - есть специальный вид многоинтервальной интерполяции.

Определение. Пусть отрезок [ a ; b ] разбит на ( N-1 ) равных частичных отрезков

[ xi, xi+1 ], где

xi = a + ( i-1 ) h , i = 1, 2.,…, N-1, xN = b ; x1 = a ;

h = ( b - a ) / ( N-1 ).

Сплайном называется функция, которая вместе с несколькими производными непрерывна на всем заданном отрезке [ xi ; xi+1 ] в отдельности является некоторым алгебраическим многочленом.

Максимальная по всем частичным отрезкам степень многочленов называется степенью сплайна, а разность между степенью сплайна и порядком наивысшей непрерывной на [ a, b] производной - дефектом сплайна,

Например, непрерывная кусочно - линейная функция ( рисунок 19 ) ( ломаная ) является сплайном первой степени с дефектом, равном единице, т.к. непрерывна только сама функция ( нулевая производная ), а первая производная уже разрывна.

На практике наиболее широкое применение получили сплайны третьей степени, имеющие на [ a, b ] непрерывную, по крайней мере , первую производную.

Эти сплайны называются кубическими и обозначаются через S3(x). Величина mi = S’3(xi) называется наклоном сплайна в точке ( узле ) xi. В общем случае сплайн задается глобальным способом, т.е. с использованием всех узлов при любом их расположении. Рассмотрим кубический сплайн, заданный локальным способом. Это задание реализуется сравнительно просто и требует существенно меньшего объема памяти ЭВМ, чем при глобальном способе задания.

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

i = int (( b-a ) / h ) ;

h = ( b-a ) / ( N-1) ;

(xi+1-x)2(2(x-xi)+h) (x-xi)2(2(xi+1-x)+h)

S3(x)= ----------------------- yi + ----------------------- yi+1 +

h3 h3

(xi+1-x)2(x-xi) (x-xi)2(x-xi+1)

+ ----------------- mi + ---------------- mi+1 ,

h2 h2

где mi , mi+1 --первые производные S3(x).

Производные локального сплайна могут задаваться двумя способами.

Способ 1. Производные mi и mi+1 вычисляются с помощью формул численного дифференцирования по трем точкам:

mi=(yi+1-yi-1)/2h , i=2 , ... , n-1 ;

mi=(4y2-y3-3y1)/2h , i=1 ;

mn=(3yn+yn-2-4yn-1)/2h , i=n .

Способ удобен тем, что для задания сплайна требуется вводить лишь ординаты yi (значения mi вычисляются программой). Для уменьшения времени многократных вычислений y(x) желательно предварительно вычислить массив mi и хранить его в памяти ЭВМ.

Способ 2. Значения mi (вычесленные отдельно или полученные из графика как наклоны его в узлах) задаются непосредственно в виде массива mi.

Блок-схема алгоритма представлена на рисунке 20.

Примечание. Вввод данных и вывод результата осуществить с соответствующими коментариями.

Например:

а) 20 PRINT “ВВЕДИТЕ ЗНАЧЕНИЕ Х , ПРИ КОТОРОМ ВЫЧИСЛЯЕТСЯ”

30 PRINT “ИНТЕРПОЛЯЦИОННОЕ ЗНАЧЕНИЕ Y”

40 INPUT X0

50 PRINT “ВВЕДИТЕ КООРДИНАТЫ БЛИЖАЙШИХ УЗЛОВЫХ ТОЧЕК”

60 INPUT X(1) , Y(1) , X(2) , Y(2)

. . .

б) 100 “ИНТЕРПОЛЯЦИОННОЕ ЗНАЧЕНИЕ ФУНКЦИИ В ТОЧКЕ”; Х0

110 “РАВНО “; Y0 ; “КОД ОШИБКИ L=”; L

. . .

Рис. 20

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ

1. Волков Е.А. Численные методы: Учеб. пособие для вузов.-.: Наука, 1987. - 248с.

2. Уолш Б. Программирование на Бейсике. - М.: Радио и связь, 1988. - 336 с.

3. Гринчишин Я.Т., Ефимов В.И., Ломакович А.Н. Алгоритмы и программы на Бейсике. - М.: Просвещение, 1988. - 160 с.

4. Дьяконов В.П. Справочник по алгоритмам и программам на языке Бейсик для персональных ЭВМ. - М.: Наука,1987. - 240 с.

5. Светозарова Г.И., Мельников А.А., Козловский А.В. Практикум по программированию на языке Бейсик. - М.: Наука, 1988. - 368 с.

6. Сергованцев В.Т., Смирнов С.М. Сборник задач по вычислительной технике в инженерных и экономических расчетах. - М.:Финансы и статистика, 1985. - 160с.

7. Бронштейн И.Н., Семендяев К.А. Справочник по математике. - М.: Наука, 1986. - 544 с.

56

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]