лабораторные занятия по численным методам...

33
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ» ЛАБОРАТОРНЫЕ ЗАНЯТИЯ ПО ЧИСЛЕННЫМ МЕТОДАМ: ИНТЕРПОЛИРОВАНИЕ И ПРИБЛИЖЕНИЕ ФУНКЦИЙ Часть I. Теория Учебно-методическое пособие Составители: В. В. Корзунина, К. П. Лазарев, З. А. Шабунина Воронеж Издательский дом ВГУ 2014 Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Upload: -

Post on 13-Apr-2017

484 views

Category:

Data & Analytics


19 download

TRANSCRIPT

Page 1: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ

ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

ЛАБОРАТОРНЫЕ ЗАНЯТИЯ ПО ЧИСЛЕННЫМ

МЕТОДАМ: ИНТЕРПОЛИРОВАНИЕ И ПРИБЛИЖЕНИЕ ФУНКЦИЙ

Часть I. Теория

Учебно-методическое пособие

Составители: В. В. Корзунина, К. П. Лазарев, З. А. Шабунина

Воронеж Издательский дом ВГУ

2014

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 2: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

2

Утверждено научно-методическим советом факультета прикладной матема-тики, информатики и механики 20 марта 2014 г., протокол №7 Рецензент: доцент кафедры математического обеспечения ЭВМ Воронеж-ского госуниверситета Горбенко О.Д. Учебное пособие подготовлено на кафедре вычислительной математики и прикладных информационных технологий факультета прикладной матема-тики информатики и механики Воронежского государственного универси-тета.

Для направлений: 010400 – Прикладная математика и информатика, 010500 – Математическое обеспечение и администрирование информаци-онных систем, 010300 – Фундаментальная информатика и информационные технологии, 010800 –

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 3: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

3

Содержание Введение................................................................................................................. 4 §1. Алгебраическое интерполирование и основные интерполяционные формулы ................................................................................................................ 5

1.1. Разрешимость задачи алгебраического интерполирования............... 5 1.2. Интерполяционная формула Лагранжа................................................ 5 1.3. «Барицентрическая» форма многочлена Лагранжа ............................ 9 1.4. Многочлены Эрмита .............................................................................. 9 1.5. Интерполяционный многочлен в форме Ньютона ........................... 11 1.6. Остаточный член интерполирования ................................................. 13 1.7. О сходимости интерполяционных процессов .................................. 14 1.8. Стандартная задача (программа) интерполирования ....................... 16 1.9. Уплотнение таблиц .............................................................................. 17

§2. Локальное сглаживание сеточных функций .............................................. 22 §3. Эмпирические формулы ............................................................................... 27 §4. О демонстрации работы программ.............................................................. 30 Список литературы ............................................................................................. 32

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 4: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

4

Введение Одним из основных курсов, читаемых на факультете прикладной ма-

тематики, информатики и механики, является курс «Численные методы» (для некоторых направлений – «Методы вычислений» или «Вычислитель-ная математика»). Приближение функций – важный раздел этих курсов. На-стоящее учебно-методическое пособие в части I содержит краткое конспек-тивное изложение лекционного материала, а также включает теоретические материалы, передаваемые студентам для самостоятельного изучения; дает описание основных вычислительных алгоритмов и рекомендации к их практическому использованию; учит грамотно составлять тестовые и де-монстрационные примеры. В части II даны индивидуальные задания для выполнения лабораторных работ, которые разделены по уровню сложности. Этот уровень может быть или рекомендован преподавателем, или выбран самим студентом. В дальнейшем при проведении промежуточных аттеста-ций преподавателем помимо качества выполнения задания учитывается и его сложность. Индивидуальные задания составлены авторами так, чтобы они соответствовали девизу Р.В. Хемминга “Цель расчетов – не числа, а по-нимание".

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 5: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

5

§1. АЛГЕБРАИЧЕСКОЕ ИНТЕРПОЛИРОВАНИЕ И ОСНОВНЫЕ ИНТЕРПОЛЯЦИОННЫЕ ФОРМУЛЫ

Пусть заданы точки nxxx ,,, 10 и значения функции )(xf в этих точках.

Алгебраическим интерполяционным многочленом называется многочлен

n

nn xcxccxP 10)( (1)

степени не выше n, который в узлах nxxx ,,, 10 принимает значения

)(,),(),( 10 nxfxfxf соответственно. Функция )(xf , по значениям которой строится интерполяционный многочлен, называется интерполируемой функцией. Соответствие

0x 1x ... nx

)( 0xf )( 1xf … )( nxf

будем называть таблицей значений функции )(xf в узлах nxxx ,,, 10 .

1.1. Разрешимость задачи алгебраического интерполирования Имеет место следующая теорема существования и единственности

интерполяционного многочлена [1]. Теорема 1. Пусть заданы узлы nxxx ,,, 10 , среди которых нет совпа-

дающих, и значения )(,),(),( 10 nxfxfxf функции в этих узлах. Тогда суще-

ствует один и только один многочлен ),,,,,()( 10 nnn xxxfxPxP степени не

выше n, принимающий в заданных узлах xk заданные значения )( kxf , nk ,,1,0 .

Интерполяционный многочлен )(xPn допускает различные формы записи, наиболее употребительными являются записи интерполяционного многочлена в форме Лагранжа и в форме Ньютона.

1.2 Интерполяционная формула Лагранжа Введём в рассмотрение вспомогательные многочлены

)())(())((

)())(())(()(

1110

1110)(

niiiiiii

niiin xxxxxxxxxx

xxxxxxxxxxxL

. (2)

Очевидно, что )()( xL in есть многочлен степени n и что выполняются равенст-

ва

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 6: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

6

njixxxx

xLij

ij

x

in

j,,1,0, ,

,0

,1)()(

.

Многочлены )()( xL in называются коэффициентами Лагранжа, а интерпо-

ляционный многочлен )(xPn , записанный в виде

)()()()()()()( )()1(1

)0(0 xLxfxLxfxLxfxP n

nnnnn ,

называется интерполяционным многочленом в форме Лагранжа и обо-значается )(xLn :

n

i niiiiiii

niiin xxxxxxxxxx

xxxxxxxxxxxfxL0 1110

1110

)())(())((

)())(())(()()(

. (3)

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

Свойство 1. Пусть по заданным узлам nxxx ,,, 10 , среди которых нет

совпадающих, построены коэффициенты Лагранжа )()( xL in и ni ,,1,0 .

Тогда сумма коэффициентов )()( xL in тождественно равна единице в любой

точке x:

n

i

in xL

0

)( 1)( . (4)

Свойство 2. Коэффициенты Лагранжа инвариантны относительно ли-нейной замены переменной x. Иными словами, если переменные x и t связа-ны линейной зависимостью batx , причём nibatx ii 1,0 , , то имеют место равенства:

nitLxL in

in ,,1,0 ),()( )()( . (5)

Пример. Функция )(xf задана в точках 3,2,1,0 ,8

1 iixi

. По-

лучить расчетную формулу для вычисления )16

51( f .

Решение. Функция )(xf задана в равноотстоящих узлах

)8

31 ,

8

21 ,

81 ,1(

. Для упрощения построения коэффициентов Ла-

гранжа найдём линейное преобразование , xt переводящее узлы ix

в узлы it с более простыми значениями, например, в узлы (–1, 0, 1, 2). Не-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 7: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

7

трудно определить, что такое преобразование имеет вид 8

18 xt .

Кроме того, значению 16

51x соответствует значение

2

3t . Вычислим

три коэффициента Лагранжа (i)3 (t), i 0,1,2L в точке

2

3t :

16

1

6

)2

1(

2

1

2

3

)3()2(1

)2)(1()

2

3(

2

3

)0(3

t

tttL ,

16

5

2

)2

1(

2

1

2

5

)2()1(1

)2)(1)(1()

2

3(

2

3

)1(3

t

tttL ,

16

15

2

)2

1(

2

3

2

5

)1(12

)2()1()

2

3(

2

3

)2(3

t

tttL .

По свойству 1 коэффициентов Лагранжа:

16

5)

2

3()

2

3()

2

3(1)

2

3( )2(

3)1(

3)0(

3)3(

3 LLLL .

Расчетная формула для вычисления )(xf в точке 16

51 , имеет вид:

16))(5)(15)(5)(()16

51()

16

51( 32103 xfxfxfxfLf .

Если требуется найти не общее выражение интерполяционного мно-

гочлена )(xLn , а его значение при некотором значении x , удобно пользо-ваться интерполяционной схемой Эйткена [1]. Опишем её.

Выражение

01

11

00

01

)(xx

xxfxxf

xL

(6)

является многочленом первой степени, построенным по точкам ),(),,( 1100 fxfx . Выражение

01 0

12 1012

2 0

( )

( )( )

L x x x L x x x

L xx x

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 8: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

8

является многочленом второй степени. Вычислим его значения в узлах

210 ,, xxx :

0

12 2 0012 0 0

2 0

0

( )( ) 0

f L x x x

L x fx x

; 1

02

121

101

1012

)( fxx

xxfxxf

xL

;

202

2

20201

2012

0

)(x

)( fxx

fxxL

xL

.

Следовательно, )(012 xL совпадает с интерполяционным многочленом Ла-

гранжа второй степени, построенным по точкам ),(),,(),,( 221100 fxfxfx . Аналогичным образом легко показать, что интерполяционный многочлен Лагранжа, построенный по точкам ),(,),,(),,( 1100 nn fxfxfx можно выра-

зить через значения многочленов )(),( 1231012 xLxL nn :

0

123

01012

0123

)(

)(

)(xx

xxxLxxxL

xLn

nn

n

n

. (7)

Отметим, что порядок точек и их нумерация не имеют значения. Вычислительную схему Эйткена для получения значения интерполя-

ционного многочлена можно представить в виде таблицы 1, которая после-довательно заполняется по строкам:

Таблица 1 i ix iy xxi iiL ,1 iiiL ,1,2 iiiiL ,1,2,3 iiiiiL ,1,2,3,4

0 0x 0y xx 0 1 1x 1y xx 1 )(01 xL 2 2x 2y xx 2 )(12 xL )(012 xL 3 3x 3y xx 3 )(23 xL )(123 xL )(0123 xL 4 4x 4y xx 4 )(34 xL )(234 xL )(1234 xL )(01234 xL

… … … … … … … …

Интерполяционный процесс Эйткена характерен своим единообрази-

ем и поэтому легко реализуется на ЭВМ. При численной реализации хра-нить в памяти машины всю таблицу нет необходимости, так как для запол-нения некоторой (k + 1)-й строки таблицы используются значения только предыдущей, k-й строки. Отметим, что использование схемы Эйткена по-зволяет добавлять всё новые и новые точки ),( ii fx без пересчёта всей таб-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 9: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

9

лицы, в то время как при вычислении значения многочлена Лагранжа в форме (3) добавление новой точки требует полного пересчёта всего много-члена.

1.3. «Барицентрическая» форма многочлена Лагранжа Формулу (3) интерполяционного многочлена Лагранжа можно запи-

сать несколько иначе, сделав её более удобной для вычислений. Введём обозначения:

n

kkn xxx

0

)()( , (8)

1

( )i /

i kk

Ax –x

, (9)

где штрих у знака произведения означает: «исключая i -й сомножитель», то есть

0 1 1( ) ( ) ( )( ) ( ),/

i k i i i i i i nkx x x x x x x x x x

0 1 1( ) ( ) ( )( ) ( ),/

k i i nkx x x x x x x x x x

Тогда свойство 1 коэффициентов Лагранжа (4) принимает вид:

n

i 0

( )1

( )

/kk

/i kk

x x

x x

или

1)(

)(0

n

i i

in xx

Ax , (10)

а многочлен Лагранжа запишется как

n

i i

iinn xx

AfxxL0 )(

)()( . (11)

Поделив правую часть многочлена Лагранжа на соотношение (10), получим «барицентрическую» форму многочлена Лагранжа:

n

i i

i

n

i i

ii

n

xxA

xxAf

xL

0

0

)(

)()( . (12)

1.4. Многочлены Эрмита Построим интерполяционный многочлен, принимающий в узлах ин-

терполирования nixi ,,1,0, значения if и имеющий в них производ-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 10: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

10

ные, равные

if . Такие многочлены называются многочленами Эрмита. Ясно, что многочлен Эрмита имеет степень не меньше, чем 12 n , посколь-ку должны быть удовлетворены 22 n условий. Аналогично коэффициен-

там Лагранжа )()( xL in определим коэффициенты Эрмита )(xH i и )(xhi . Ко-

эффициенты Эрмита – это многочлены степени 12 n , удовлетворяющие условиям:

;)( ;0)(

;0)( ;)(

ijjiji

jiijji

xhxH

xhxH

nji ,,1,0, . (13)

Построим многочлен )(xhi . Если 0)()( jiji xhxh при ji , то )(xhi

должен содержать множители 2)( jxx . Так как 0)( ii xh , то )(xhi должен

содержать простой множитель )( ixx . Для того чтобы 1)( ii xh , нужно

взять

221

21

21

20

221

21

21

20

)()()()()(

)())(()()()()(

niiiiiii

niiii xxxxxxxxxx

xxxxxxxxxxxxxh

. (14)

Построение многочлена )(xH i похоже на построение многочлена

)(xhi . Многочлен )(xH i должен иметь множители 2)( jxx для ji и про-

стой множитель )( ii bxa . Будем искать )(xH i в виде:

221

21

21

20

221

21

21

20

)()()()()(

)())(()()()()(

niiiiiii

niiiii xxxxxxxxxx

xxxxbxaxxxxxxxH

. (15)

Продифференцировав выражение )(xH i и подставив в производную

)(xH i значение ixx , получим

niiii

iiiiii xxxx

axxxxxx

xH

22222)(

1121

.

По определению коэффициента Эрмита 0)( ii xH и 1)( ii xH . Следо-

вательно, необходимо положить

n

ikkiii

kii xab

xxa

,0

1 ,1

2 . (16)

Итак, требуемая формула (15) для коэффициентов Эрмита )(xH i по-строена. Теперь записать многочлены Эрмита не представляет труда:

n

iiiii fxhfxHxH

0

))()(()( . (17)

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 11: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

11

Заметив, что коэффициенты Эрмита (14), (15) связаны соотношения-ми

)()()( xhbxaxH iiii , (18)

запишем многочлен Эрмита в иной, более удобной для вычислений форме:

)(]))[()(0

xhffbxaxH i

n

iiiii

. (19)

1.5. Интерполяционный многочлен в форме Ньютона Разделённая разность нулевого порядка )( kxf функции )(xf в точке

kx совпадает со значением функции )(xf в точке kx . Разделённая разность первого порядка ),( tk xxf функции )(xf для произвольной пары точек tk xx , определяется через разделённые разности нулевого порядка:

kt

kttk xx

xfxfxxf

)()(

),( .

Разделённая разность ),,,( 10 nxxxf n-ого порядка определяется через разделённые разности (n-1)-ого порядка:

0

102110

),,,(),,,(),,,(

xxxxxfxxxf

xxxfn

nnn

. (20)

Теорема 2. Интерполяционный многочлен ),,,,,( 10 nn xxxfxP до-пускает запись в следующей форме Ньютона:

),,,()())((

),,())((

),()()(),,,,,(

10110

21010

100010

nn

nn

xxxfxxxxxxxxxfxxxx

xxfxxxfxxxfxP

(21)

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

1. Справедливо равенство

),,,()())((

),,,,,( ),,,,,(

10110

110110

nn

nnnn

xxxfxxxxxxxxxfxPxxxfxP

. (22)

2. Разделённая разность ),,,( 10 nxxxf порядка n равна коэффици-

енту nc при члене nx , входящем в интерполяционный многочлен n

nnn xcxccxxxfxP 1010 ),,,,,( , (23)

то есть справедливо равенство: nn cxxxf ),,,( 10 .

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 12: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

12

3. Разделённая разность ),,,( 10 nxxxf обращается в ноль в том и

только том случае, если )(,),(),( 10 nxfxfxf есть значения некоторого мно-гочлена )(xQm , степень которого m строго меньше n.

4. Разделённая разность ),,,( 10 nxxxf не изменяется при произ-вольной перестановке её аргументов nxxx ,,, 10 .

5. Справедливо равенство

)())((

),,,,,()(),,,(

110

110110

nnnn

nnnnn xxxxxx

xxxfxPxfxxxf

. (24)

6. Разделённые разности можно расположить в следующей таблице 0x

0y ),( 10 xxf

),,( 210 xxxf

),,,( 3210 xxxxf

),,,,( 43210 xxxxxf

),,,,,( 543210 xxxxxxf

1x 1y ),( 21 xxf

),,( 321 xxxf

),,,( 4321 xxxxf

),,,,( 54321 xxxxxf

2x

2y

),( 32 xxf

),,( 432 xxxf

),,,( 5432 xxxxf

3x 3y ),( 43 xxf

),,( 543 xxxf

4x

4y

),( 54 xxf

5x 5y

Разделённые разности, входящие в многочлен Ньютона (18), распо-ложены в первой строке таблицы. Таблицу можно заполнять последова-тельно по столбцам, поэтому при реализации на ЭВМ нет необходимости использовать двумерные массивы, а можно обойтись двумя столбцами (од-номерными массивами).

Если не вводить обозначения для разделённых разностей, то можно сказать, что интерполяционный многочлен Ньютона – это многочлен вида

)())(())(()()( 110102010 nnn xxxxxxbxxxxbxxbbxP . (25) Из теоремы 2 следует, что ib – это значения соответствующих разделённых разностей, которые определяются рекуррентно в соответствии с определе-нием (20).

Получим явные выражения для разделённых разностей через значе-ния функции в узлах интерполирования.

Рассмотрим формулы (3) и (25) при kn , и сравним коэффициенты при kx . В силу единственности интерполяционного многочлена, эти коэф-фициенты должны совпадать. Поэтому

k

i kiiiiii

ik xxxxxxxx

fb0 110 )())(()( (26)

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 13: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

13

при любых ,1,0k , и мы получаем компактное выражение для разделён-ных разностей:

.

,))(())(())((

,

,

1202

2

2101

1

2010

02

01

1

10

01

00

xxxx

fxxxx

fxxxx

fb

xxf

xxfb

fb

(27)

Заметим, что если узлы равноотстоящие, например, ihxxi 0 , то формула (26) легко преобразуется к виду

k

ik

iikk hiki

fb0 )!(!

)1( . (28)

1.6. Остаточный член интерполирования Разность между интерполируемой функцией )(xf и её интерполяци-

онным многочленом )(xPn называют остаточным членом (погрешно-

стью) интерполирования и обозначают ),( xfRn :

)()(),( xPxfxfR nn . (29)

Теорема 3. Пусть )(xf непрерывно дифференцируема )1( n раз на

промежутке ],[ ba , содержащем узлы интерполирования nxxx ,,, 10 . Тогда

для любой точки ],[ bax существует точка ],[ ba такая, что

n

ii

n

n xxn

fxfR0

)1(

)()!1(

)(),(

. (30)

Заметим, что остаточный член не зависит от формы записи интерпо-ляционного многочлена. Поэтому (30) является остаточным членом и для многочлена Лагранжа, и для многочлена Ньютона, и для любого иного мно-

гочлена, построенного по значениям )( ixf в узлах .,,1,0, nixi Теорема 4. Пусть )(xf непрерывно дифференцируема )22( n раза на

промежутке ],[ ba , содержащем узлы интерполирования nxxx ,,, 10 , в ко-

торых известны значения функции )( ixf и её производных )( ixf . Тогда для любой точки ],[ bax существует точка ],[ ba такая, что остаточный

член ),( xfRH интерполяционного многочлена Эрмита )(xH определяется соотношением:

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 14: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

14

n

ii

n

H xxn

fxHxfxfR0

2)22(

)()!22(

)()()(),(

. (31)

1.7. О сходимости интерполяционных процессов Если для функции f(x) на отрезке ],[ ba строится единый для всего

отрезка интерполяционный многочлен )(xPn , то его называют глобаль-ным интерполяционным многочленом. На первый взгляд, кажется, что чем выше степень глобального интерполяционного многочлена, тем точнее он приближает интерполируемую функцию f(x). Поэтому при решении за-дачи интерполяции функции f(x) на отрезке ],[ ba , неплохо бы иметь один многочлен, пригодный для приближения функции f(x) во всех точках

],[ bax с достаточно высокой степенью . Существование такого много-члена следует из теоремы Вейерштрасса.

Теорема Вейерштрасса. Пусть функция )(xf непрерывна на отрезке

],[ ba . Тогда для любого 0 существует многочлен )(xPn степени

)(nn такой, что

)()(max],[

xPxf nba .

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

..............................

..............................

)()(2

)(1

)(0

)2(2

)2(1

)2(0

)1(1

)1(0

)0(0

nn

nnn xxxx

xxxxx

x

, (32)

в каждой n -ой строке которой записаны узлы nix ni 1,0,)( из промежутка

],[ ba , причём )()( nm

nk xx при mk . Рассматривая элементы )1( n -ой

строки матрицы как узлы интерполяции функции )(xf многочленом степе-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 15: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

15

ни n , можно построить последовательность многочленов ),(,),,(),,( 1 xfPxfPxfP no , интерполирующих в точках nix n

i 1,0,)( . Будем говорить, что интерполяционный процесс для функции )(xf

сходится в точке ],[ bax , если )(),(lim xfxfPnn

. Если последователь-

ность ),( xfPn сходится к )(xf равномерно, то интерполяционный процесс называют равномерно сходящимся.

Приведём несколько фундаментальных результатов теории сходимо-сти интерполяционных процессов.

Теорема Фабера. Какова бы ни была стратегия выбора узлов интер-поляции, найдётся непрерывная на отрезке ],[ ba функция )(xf , для кото-рой

)()(max],[

xPxf nba при n .

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

Теорема Марцинкевича. Для любой непрерывной на ],[ ba функции )(xf найдётся такая матрица узлов, что соответствующий ей интерполяци-

онный процесс для функции )(xf сходится равномерно. Не так пессимистично обстоит дело с гладкими функциями. Теорема. Пусть в качестве узлов интерполирования на отрезке ],[ ba

выбираются чебышевские узлы

niiiabbaxi ,1,0),

22

12cos(

22

. (33)

Тогда для любой непрерывно дифференцируемой на отрезке ],[ ba

функции )(xf интерполяционный процесс сходится равномерно. Далее приведём два наиболее известных примера расходимости ин-

терполяционных процессов. Пример Рунге. Аналитическая функция )251(1)( 2xxf интерпо-

лируется глобальным образом по равноотстоящим узлам на отрезке [–1, 1]. При больших n интерполяция даёт очень хорошие результаты в централь-ной части отрезка. Для 17.0 x последовательность )(xPn расходится.

Пример Бернштейна. Последовательность интерполяционных мно-гочленов )(xPn для функции xxf )( на отрезке [–1, 1], построенная по

равноотстоящим узлам, не стремится к )(xf ни в одной точке, за исключе-нием точек –1,0,1.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 16: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

16

Чебышевский набор узлов (33) может быть полезен для непрерывных функций, но для них требуется некоторое видоизменение интерполяцион-ного процесса. Рассмотрим частный случай интерполяционного многочлена

Эрмита (17), построенного в предположении, что nixfi ,,1,0,0)( :

n

iii xHfxH

0

)()( . (34)

Такой многочлен называется интерполяционным многочленом Фай-ера и обозначается )(12 xn .

Теорема Файера. Пусть в качестве узлов интерполяции на отрезке ],[ ba выбираются чебышевские узлы (33). Тогда для любой непрерывной

на ],[ ba функции )(xf последовательность многочленов Файера )(12 xn

сходится к )(xf равномерно на ],[ ba .

1.8. Стандартная задача (программа) интерполирования По установившейся традиции под стандартной задачей (программой)

интерполирования понимается следующая задача. Дана таблица значений некоторой функции )(xf ; требуется для за-

данного значения *x вычислить значение )( xf с заданной точностью EPS или с наилучшей возможной точностью при имеющейся информации.

Пусть есть некоторая формула или некоторое правило для построения

интерполяционных многочленов )(xPm . Каждый многочлен вычисляется

по значению в узлах матрицы, наименее удалённых от точки *x , поэтому перед началом всех вычислений перенумеруем узлы матрицы в порядке

возрастания *xxi . Предполагая функцию )(xf гладкой, примем сле-

дующий практический критерий оценки погрешности

)()()()( **1

** xPxPxPxf mmmm . (35)

Далее строим интерполяционный процесс, вычисляем многочлены возрастающих степеней с одновременной оценкой погрешностей:

, ),( , , ),( , ),( , ),( ),( *12

*31

*20

*1

*0 mm xPxPxPxPxP (36)

Интерполяционный процесс прекращается при выполнении одного из следующих условий:

m < EPS, то есть достигается заданная точность интерполяции;

1 mm , то есть абсолютное значение разности между двумя последовательными интерполяционными значениями перестаёт уменьшать-ся (проверка начинается с 2m );

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 17: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

17

использованы все значения заданной таблицы; обнаружены два одинаковых значения среди заданных табличных

значений аргумента. Заметим, что при построении интерполяционного процесса (37) ста-

новится очевидным преимущество использования многочлена в форме Ньютона (21) по сравнению с формой Лагранжа (3). Пусть многочлен nP уже найден и для его уточнения привлекается ещё один узел 1nx . Тогда для вычисления 1nP в форме Лагранжа приходится полностью пересчитывать весь многочлен, а при вычислении в форме Ньютона достаточно к уже вы-численному значению добавить одно слагаемое (22), модуль которого даёт оценку погрешности n .

Описанное выше преимущество использования многочлена в форме Ньютона относится также к случаю построения многочленов по схеме Эйт-кена.

1.9. Уплотнение таблиц Пусть задана таблица значений некоторой функции )(xf в равноот-

стоящих узлах niihxxi ,,1,0 ,0 . Построение по этой таблице новой

таблицы с меньшим шагом, например, с шагом 4

,3

,2

hhh, называется уплот-

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

,,,1,2,,3,21,,2,1,,1,0 , , , , nmnmnmmm PPPP ,

каждый из которых совпадает с табличными значениями )1( m -ой последо-

вательной точки. Многочлен mP ,,1,0 строится по узлам mxxx ,,, 10 , мно-

гочлен 1,,2,1 mP строится по узлам 121 ,,, mxxx и т.д. Каждый такой мно-

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

Пример. Рассмотрим сетку узлов 5,,1,0, ixi . Предположим, что по этой сетке узлов нам надо уплотнить таблицу значений функции: а) в два раза, б) в три раза.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 18: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

18

Рассмотрим схему, изображённую на рисунке. В первой строке схемы

помечены только точки исходной схемы. Во второй и третьей строках кре-стиками помечены новые точки, в которых необходимо вычислить значения функции при уплотнении таблицы в два и в три раза соответственно. Вер-тикальными линиями размечены области, для точек которых ближайшими узлами являются узлы 0,1,2; 1,2,3; 2,3,4; 3,4,5 и для которых можно по-строить последовательность многочленов второй степени P0,1,2, P1,2,3, P2,3,4, P3,4,5,.... Заметим, что точки пересечения оси абсцисс с вертикальными ли-ниями можно отнести как к левой, так и к правой областям.

Учитывая, что коэффициенты Лагранжа инвариантны относительно линейной замены переменных (5), выделим конфигурации точек (шаблоны), для которых необходимо вычислить коэффициенты Лагранжа. В случае уп-лотнения таблицы в два раза (см. вторую строку схемы) таких шаблонов два:

1-ый шаблон.

2-ой шаблон.

В случае уплотнения таблицы в три раза (см. третью строку схемы) шаблонов четыре:

1-ый шаблон,

2-ой шаблон,

ox

0xox

0x 1x

1x

1x

2,1,0P

2x

2x

2x

3,2,1P 4,3,2P 5,4,3P

3x

3x

3x

4x

4x

4x

5x

5x

5x

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 19: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

19

3-ий шаблон,

4-ый шаблон.

Вычислим коэффициенты Лагранжа для первого шаблона

при уплотнении таблицы в три раза:

))((

))(()(

2010

21)0(2 tttt

tttttL

))((

))(()(

2101

20)1(2 tttt

tttttL

))((

))(()(

1202

10)2(2 tttt

tttttL

.

Опираясь на инвариантность коэффициентов Лагранжа, положим для простоты вычислений 2,3,0,3 210 tttt . Тогда

9

5

)6)(3(

)32(*2)(

2

)0(2

ttL ;

9

5

)3(*3

)5(*1)(

2

)1(2

ttL ;

9

1

6*3

)2(*1)(

2

)2(2

ttL .

Теперь можно выписать значения многочлена в точке t = –2:

21022 9

1

9

5

9

5)( yyytL

t

. (37)

Итак, расчётная формула для первого шаблона для уплотнения табли-цы в три раза имеет вид

21 9

1

9

5

9

5)

3( iiii yyyhxy . (38)

Аналогичным образом нетрудно получить расчетную формулу для других шаблонов. Замечая, что шаблоны 1 и 4 симметричны, и, опираясь на свойство инвариантности коэффициентов Лагранжа относительно линейной замены аргумента, можно не вычислять заново коэффициенты Лагранжа для шаблона 4, а сразу выписать расчетную формулу

21 9

1

9

5

9

5)

3( iiii yyyhxy . (39)

Таким образом, при уплотнении таблицы в три раза необходимо фак-тически вычислить коэффициенты Лагранжа только для двух шаблонов –

0t

1t 2t t

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 20: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

20

первого и второго, так как третий шаблон симметричен второму, а четвёр-тый – первому.

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

Пример. Оценить погрешность интерполирования в точке 30

hx по

формуле (38) из предыдущего примера при уплотнении таблицы в три раза. Получим значения коэффициентов Лагранжа для шаблона

в предположении, что 2,6,3,0,3 3210 ttttt :

81

40

)9)(6)(3(

)6)(3(*)(

22

)0(3

tt

ttttL ;

27

20

)6)(3(*3

)6)(3)(3()(

22

)1(3

tt

ttttL ;

27

8

)3(*3*6

)6(**)3()(

22

)2(3

tt

ttttL ;

81

5

3*6*9

)3(**)3()(

22

)3(3

tt

ttttL .

Следовательно, приближённое значение функции точки 30

hx , вы-

численное по многочлену Лагранжа третьей степени, равно

)5246040(81

13210 yyyy . Вычитая из этого выражения значение, вычислен-

ное по многочлену Лагранжа второй степени по формуле (39), и беря полу-ченную разность по абсолютной величине, будем иметь оценку погрешно-

сти в точке 30

hx :

321002 51515581

1)

3( yyyyhxR .

Рассмотрим теперь случай, когда исходные табличные значения функции, заданной с некоторой предельной абсолютной погрешно-стью YEPS _ , т.е табличные значения yi, связаны с точными значениями

функции .точнiy неравенством:

0t

1t 2t t t3

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 21: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

21

YEPSyy точнii _. . (40)

Тогда, погрешность формулы (40), возникающая за счёт входных данных, оценивается как

YEPSYEPSyhxy точнii _

9

11)

9

1

9

5

9

5(*_)

3( .

3/1 (41)

и не зависит от значений функции 21 ,, yyi yyy . Если при уплотнении таб-

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

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 22: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

22

§2. ЛОКАЛЬНОЕ СГЛАЖИВАНИЕ СЕТОЧНЫХ ФУНКЦИЙ Замена таблично заданной функции приближённой аналитической

функцией называется аппроксимацией табличной функции. Аппроксима-ция – задача более общая, чем задача интерполирования. Известно много методов аппроксимации функции. Приведём пример точечного среднеквад-ратичного аппроксимирования функции.

Пусть в узлах nxxx ,,, 10 заданы значения функции )( ii xfy , и надо построить приближающий эту функцию )(xf многочлен )(xQm , причём степень многочлена m меньше числа узлов. За меру отклонения многчлена

mmm xaxaaxQ 10)( (42)

от функции )(xf на множестве точек nxxx ,,, 10 принимают величину

n

iiim yxQS

0

2))(( . (43)

Очевидно, что S есть положительно определённая квадратичная функция коэффициентов maaa ,,, 10 . Эти коэффициенты надо подбирать так, чтобы значение S было минимальным. Приравнивая частные производ-ные по maaa ,,, 10 нулю, получим систему )1( m уравнений с )1( m неиз-

вестными maaa ,,, 10 :

01*)(2

1

010

0

n

ii

mimi yxaxaa

aS ;

0*)(2

1

010

1

i

n

ii

mimi xyxaxaa

aS ; (44)

0*)(2

1

010

mi

n

ii

mimi

m

xyxaxaaaS .

Введём обозначения mkxxxs k

nkk

k 2,,1,0 ,10 , (45)

mkyxyxyxt nkn

kkk ,,1,0 ,1100 .

Преобразуем систему (44), используя введённые обозначения (45):

mmmmm

m

m

t

tt

a

aa

sss

ssssss

1

0

1

0

21

121

10

, (46)

здесь 10 ns . Если среди точек nxxx ,,, 10 нет совпадающих и nm , то определитель системы (46) отличен от нуля и, следовательно, эта система

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 23: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

23

имеет единственное решение. Заметим, что если nm , то аппроксими-

рующий многочлен )(xQm совпадает с интерполяционным. Говорят, что построенный таким образом многочлен является много-

членом среднеквадратичного приближения степени m , или многочле-ном, полученным методом наименьших квадратов.

Пример. Построим многочлен первой степени xaaxQ 101 )( , имеющий минимальное среднеквадратичное отклонение

n

iii yxaaaaS

0

21010 )(),( .

Приравнивая нулю частные производные ),( 10 aaS по 10 ,aa , приходим к системе двух линейных уравнений относительно 10 ,aa :

01*)(0

10

n

iii yxaa ;

0*)(0

10

i

n

iii xyxaa .

Принимая обозначения, введённые выше, а именно,

n

i

n

iii

n

iii

n

ii yxtytxsxsns

0 01

00

22

010 , ,)( , ,1 ,

полученную систему уравнений запишем как

1

0

1

0

21

10

tt

aa

ssss

. (47)

Нетрудно выписать решение этой системы:

2120

100112

120

11200 ,

sssststa

ssstssta

. (48)

Итак, многочлен первой степени )(1 xQ методом наименьших квадра-тов построен.

Остановимся на случае, часто встречающемся в приложениях, когда аппроксимирующий многочлен строится по трём точкам )2( n :

Получим значение 11011 )( xaaxQ . Используя выражения (48) для

10 ,aa и обозначения 121010 , xxhxxh , вычислим интересующее нас зна-чение

0h

0x 1x 2x

1h

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 24: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

24

)(2

)()()()(

2110

20

01022

12011100

11 hhhhhhhyhhyhhhyxQ

. (49)

Вводя параметр 01 hh , перепишем последнюю формулу в виде

)1(2

)1()1()1()(

22

210

11

yyyxQ . (50)

Если узлы 210 ,, xxx равноотстоящие, то 1 и формула (50) приобре-тает особенно простой вид:

3)( 210

11

yyyxQ . (51)

Сделаем следующее замечание. Если многочлен среднеквадратич-ного приближения строится вручную для того чтобы вычислить значение в некоторой точке *x , а сами коэффициенты maaa ,,, 10 не представляют ин-тереса, то поступают следующим образом. Многочлен среднеквадратичного приближения ищется не в форме (42), а в форме

mmm xxaxxaxxaaxQ )()()()( *2*

2*

10 .

Иными словами, вводится линейное преобразование *xxz и ищется многочлен

mmm zazaazQ 10)( ,

совпадающий по форме с многочленом (42), коэффициенты которого опре-деляются из системы (46) с учётом того, что *xxz . Определить только один коэффициент 0a , равный значению среднеквадратичного многочлена

в точке *xx , часто бывает проще, чем целиком решать систему (46). Если таблица значений функции )(xf получена путём измерения ка-

кой-либо физической величины или с помощью численных расчетов, то к ней часто применяют процедуру сглаживания, то есть заменяют табличные значения иными, более гладкими приближёнными значениями. Многие ме-тоды локального сглаживания сеточных функций базируются на идее сред-неквадратичного аппроксимирования. Такие методы локального сглажива-ния отличаются друг от друга двумя параметрами – степенью многочлена m, которым аппроксимируется табличная функция, и количеством точек, по которым этот аппроксимирующий многочлен строится. Допустим, что мы хотим проводить аппроксимацию многочленом второй степени по пяти точкам. Это значит, что для каждой табличной точки xi, за исключением то-чек начала и конца таблицы, надо найти в таблице четыре ближайшие к ней точки. По пяти точкам (сама точка и четыре ближайшие) среднеквадратич-ным образом строится многочлен второй степени и его значение в точке ix

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 25: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

25

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

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

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

Рассмотрим такую точку xi таблицы, у которой слева и справа есть по две соседние точки из заданной таблицы:

Построим многочлен 2

2102 )( xaxaaxQ по пяти точкам

2112 ,,,, iiiii xxxxx методом наименьших квадратов. С учётом сделанного выше замечания, положим hxhxxhxhx iiiii 2 , ,0 , ,2 2112 . Тогда

значения 4,3,2,1,0, ksk , вычисленные по (45), равны

42

2

44

32

23

22

2

22

2

210 34)(,0)(,10)(,0,5 hxsxshxsxss

k

ikk

k

ikk

k

ikk

k

ikk

.

Составим систему, аналогичную (46):

)44(

)22(

34 0 10

010 0

10 0 5

21122

2112

2112

2

1

0

42

2

2

iiii

iiii

iiiii

yyyyhyyyyh

yyyyy

aaa

h h h

h

. (52)

Решая систему трёх линейных уравнений, нетрудно получить значе-ния для 210 ,, aaa :

.14)2222(

;10)22(

;35)31217123(

221122

21121

21120

hyyyyyahyyyya

yyyyya

iiiii

iiii

iiiii

(53)

Теперь получим значения среднеквадратичного многочлена )(2 xQ в

точках 11 ,, iii xxx :

2ix 1ix ix 2ix 2ix

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 26: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

26

.70)1826241210()(

;35)31217123()(

;70)1012242618()(

211212

21122

211212

iiiiii

iiiiii

iiiiii

yyyyyxQ

yyyyyxQ

yyyyyxQ

(54)

Формулы (54) есть расчетные формулы локального сглаживания. Ес-ли сглаживание производится на системе равноотстоящих точек

nnn xxxxxx ,,,,,, 12210 , то значения функции в точках nxx ,0 не изменяют-ся. Сглаженное значение функции в точке 1x вычисляется по первой фор-муле (54), если положить в ней 2i ; значение в точке 1nx вычисляется по третьей формуле (54), если положить в ней 2 ni ; во всех остальных точ-ках сглаженные значения функции вычисляются по второй формуле (54).

Итак, расчётные формулы сглаживания на системе равноотстоящих точек, полученные с помощью многочлена второй степени по пяти точкам, имеют вид:

,~;.70)1826241210(~

;2,,3,2,35)31217123(~;70)1012242618(~

;~

12341

2112

432101

00

nn

nnnnnn

iiiiii

yyyyyyyy

niyyyyyyyyyyyy

yy

(55)

где знаком “тильда” помечены сглаженные значения. Заметим, что в фор-мулы для сглаженных значений функции (55) не входит величина шага таб-лицы h .

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 27: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

27

§3. ЭМПИРИЧЕСКИЕ ФОРМУЛЫ Пусть задана таблица экспериментальных значений niyx ii ,,1,0),,(

некоторой функции )(xfy . Мы хотим на основе метода наименьших квадратов получить эмпирическую формулу

),,,,( 10 maaaxQy ,

где maaa ,,, 10 – числовые параметры. Наилучшими параметрами

maaa ~,,~,~10 будем считать те, для которых сумма квадратов уклонений

функции ),,,,( 10 maaaxQ от экспериментальных точек niyx ii ,,1,0),,( является минимальной, то есть функция

n

iimim yaaaxQaaaS

0

21010 )),,,,((),,,(

достигает минимума в точке )~,,~,~( 10 maaa . Отсюда, используя необходи-мые условия экстремума функции нескольких переменных, получаем сис-тему уравнений для определения параметров maaa ~,,~,~

10 :

mkaS

k

,,1,0,0

. (56)

Если система (56) имеет единственное решение maaa ~,,~,~10 , то оно яв-

ляется искомым и эмпирическая формула приобретает вид: )~,,~,~,( 10 maaaxQy .

Сделаем два замечания. Первое: если m

mm xaxaaaaaxQ 1010 ),,,,( , то мы получаем среднеквадратич-ную аппроксимацию многочленами , описанную в предыдущем пункте, где показывалось, что система (56) для определения maaa ~,,~,~

10 является линей-ной системой уравнений. Второе: подчеркнём, что в общем случае система (56) нелинейна и её решение может вызвать определённые трудности.

Далее ограничимся рассмотрением эмпирических формул с двумя па-раметрами ),,( xQy . В этом случае система (56) является системой двух уравнений

0),,(

)),,((

0),,(

)),,((

0

0

n

i

iii

n

i

iii

xQyxQ

xQyxQ

. (57)

В частном случае, когда эмпирическая формула является линейной,

имеем 1 ; ;),,(

bQx

kQbkxbkxQy . Тогда система уравнений (57)

примет вид:

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 28: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

28

0))((

0))((

0

0

n

iiii

n

iii

xybkx

ybkx

n

iii

n

ii

n

ii

n

ii

n

ii

xyxkxb

yxknb

00

2

0

00

)1(

(58)

Естественно, что система уравнений (58) с точностью до обозначений совпадает с системой (47).

Пусть априори известно, что экспериментальные данные плохо «ук-ладываются» на прямую. Тогда возможны две ситуации. Первая ситуация – известен вид функциональной зависимости )(xfy . Например, заранее известно, что экспериментальные данные удовлетворяют зависимости

xxy и нужно только определить значения параметров , . Вторая

ситуация – вид функциональной зависимости )(xfy неизвестен, нужно подобрать наиболее удачную из некоторого набора зависимостей. В обеих ситуациях для определения функциональных зависимостей можно восполь-зоваться приёмом, называемым методом выравнивания эксперименталь-ных данных. Суть его состоит в том, что выбираются новые переменные

),( ),,( yxYyxX , (59)

так, чтобы преобразованные экспериментальные данные Xi = φ(xi, yi), Yi = ψ(xi, yi) в новой системе координат ),( YX давали точки ii YX , , мало ук-лоняющиеся от прямой. Для аппроксимирующей прямой bkXY пара-метры bk , определяются из уравнений (58), где вместо ii yx , подставля-ются значения ii YX , .

Таким образом, функциональная зависимость )(xfy определяется неявным уравнением byxkyx ),(),( , разрешить которое относительно y удаётся в некоторых частных случаях. Ниже приведена таблица для шес-ти наиболее употребительных функциональных зависимостей с двумя па-раметрами , .

Таблица 2 N Выравнивание данных

(преобразование переменных) Эмпирическая формула

1 xyYxX , bkx

y ,,

2 y

YxX 1 , bk

xy

,,

1

3 yxYxX , bk

xxy

,,

4 yYxX ln , )exp(),exp(, kby x

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 29: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

29

5 yYxX ,ln bkxy ,,ln 6 yYxX ln ,ln kbxy ),exp(,

Предложенные в таблице экспериментальные формулы нужно выби-

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

Пример. Табличные данные niyx ii ,,1,0),,( отвечают показатель-ной зависимости

0, ccey ax. (61)

Найти параметры ca, . Логарифмируя зависимость (61), будем иметь axcy lnln . Отсюда,

полагая yYxX ln , , получим линейную зависимость:

cbakbkXY ln , , . (62)

Параметры bk, определяются системой уравнений вида (58), в кото-рой значения ix соответствуют исходным значениям, а вместо iy подстав-ляются значения iyln . Таким образом, параметры искомой показательной

зависимости becka , получены. Отметим, что разобранный пример яв-ляется частным случаем эмпирической формулы (4) приведенной таблицы.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 30: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

30

0x

*4x

*1x *

0x *2x *

3x

§4. О ДЕМОНСТРАЦИИ РАБОТЫ ПРОГРАММ

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

Замечание 1 (об определении значения функции в точке *x с помо-

щью интерполяционного многочлена степени m). Если дана таблица значе-ний niyx ii ,,1,0 ,, и требуется вычислить значение табулированной

функции в точке *x , построив многочлен степени m по ближайшим к

*x точкам, то нужно показать, что:

a) действительно строится многочлен степени m и на выход подаётся

значение этого многочлена в точке *x ;

b) многочлен строится по ближайшим точкам; c) в исходной таблице содержится достаточное количество точек для

построения многочлен степени m , то есть точек больше, чем m . Последнее требование тестируется очевидным образом. Поэтому полагаем, что в ис-ходной таблице достаточно много точек. Тестирование требований a, b рас-смотрим на примере, взяв 3m , то есть многочлен должен строиться по че-

тырём ближайшим к *x точкам.

Выберем такой набор узлов nixi ,,1,0 , , в котором четыре после-

довательных узла 321 ,, jjjj xxxx находятся на значительном расстоянии от

остальных узлов.

Тогда в точках 4,3,2,1,0,* kxk приближённые значения функции долж-ны определяться значениями многочлена )(3 xP , построенного по точкам

321 ,, jjjj xxxx :

0x Nx… 4ix … 3jx

2jx

1jxjx1jx1x

Nx… 4ix

… 3jx

2jx

1jxjx1jx 1x

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 31: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

31

Возьмём некоторый конкретный многочлен )(~

3 xP и положим в узлах 3,2,1,, jjjjkxk табличные значения ky равными значениям много-

члена )(~

3 xP . В остальных узлах 3,2,1, ,,,1,0 , jjjjinixi табличные

значения не есть значения многочлена )(~

3 xP , а равны, к примеру,

)(~

1000 3 xP . Построив описанную выше входную таблицу, можно провести

пять тестов: зададимся некоторым конкретным многочленом )(~

3 xP , про-граммно вычислим значения в точке 4,3,2,1,0,* kxk . Полученные значения

должны совпадать со значениями )(~ *

3 kxP . Этими тестами мы показываем,

что в самом деле строится многочлен третьей степени по ближайшим к *x

узлам таблицы при любом взаимном расположении узлов и точки *x .

Теперь возьмём произвольную сетку узлов 3 ,,,1,0 , nnixi и про-

извольное х*, nxxx *0 . Проведём три теста: во всех узлах сетки значени-

ям niyi ,,1,0 , присвоим значения )(0 ii xQy в первом тесте, )(1 ii xQy во втором, )(2 ii xQy в третьем, где )( ),( ),( 210 xQxQxQ - много-

члены нулевой, первой и второй степени соответственно. Поскольку много-члены )( ),( ),( 210 xQxQxQ формально являются многочленами третьей сте-

пени, вычисленные программные значения функции в точке *x должны

быть равны )( ),( ),( *2

*1

*0 xQxQxQ .

Замечание 2 (о выходном параметре «индикатор» ошибки). Среди тестов, демонстрирующих работу программы, должны быть тесты, в кото-рых программа завершается со всеми (!) требуемыми кодами завершения (значениями «индикатора» ошибки).

Замечание 3 (об определении значения функции в точке *x с помо-

щью интерполяционных многочленов Эрмита). Идеи тестирования при ин-терполировании многочленами Эрмита аналогичны идеям тестирования, изложенным в Замечании 1. Нужно только иметь в виду, что если много-

член Эрмита строится по k точкам, то он будет иметь степень 12 k . На-пример, по одной точке можно построить многочлен первого порядка, а по двум точкам – многочлен третьего порядка и т.д.

Замечание 4 (об уплотнении таблиц). В заданиях об уплотнении таб-лиц обязательно указывается метод получения новых приближённых значе-ний. Например, при уплотнении таблицы в два раза (Задание 11) в качестве нового значения уплотнённой таблицы принимаются значения многочлена Лагранжа второй степени, вычисленного по трём ближайшим точкам. Обя-зательным тестовым примером в этом случае должен быть пример, когда уплотнение проводится для таблицы значений некоторого многочлена вто-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 32: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

32

рой степени. Понятно, что все новые значения точно совпадают со значе-ниями этого многочлена в соответствующих точках.

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

Замечание 6 (о вычислении параметров эмпирических формул). До-пустим, что подбираются параметры , для эмпирической формулы

xy . Если входная таблица является таблицей значений функции

xxf

~~)( , то программно полученные значения , должны совпа-

дать со значениям ~,~ .

Список литературы 1. Бахвалов Н.С. Численные методы : учеб. Пособие / Н.С. Бахвалов,

Н.П. Жидков, Г.М. Кобельков. – М. ; Спб. : Физматлит, 2002. – 630 с.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 33: лабораторные занятия по численным методам интерполирование и приближение функций. часть 1. теория

33

Учебное издание

ЛАБОРАТОРНЫЕ ЗАНЯТИЯ ПО ЧИСЛЕННЫМ МЕТОДАМ: ИНТЕРПОЛИРОВАНИЕ

И ПРИБЛИЖЕНИЕ ФУНКЦИЙ.

Часть I. Теория.

Учебно-методическое пособие

Составители: Корзунина Вера Васильевна, Лазарев Константин Петрович, Шабунина Зоя Александровна

Редактор В. В. Юргелас Компьютерная верстка Н. А. Сегида

Подписано в печать 16.06.14. Формат 60×84/16. Усл. печ. л. 1,9. Тираж 25 экз. Заказ 543

Издательский дом ВГУ

394000, г. Воронеж, пл. Ленина, 10

Отпечатано в типографии Издательского дома ВГУ 394000, г. Воронеж, ул. Пушкинская, 3

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»