Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЭВМ_Семестр3_МетодПособие

.pdf
Скачиваний:
24
Добавлен:
05.06.2015
Размер:
2.99 Mб
Скачать

Способы приведения исходной СЛАУ к сходящейся (по методу Зейделя)

(Способ 1) Получение диагонального преобладания:

Сходящиеся системы

 

 

 

 

перестановкой строк

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(i)

2

4

 

 

1 x1

 

 

 

7

(iii)

7

4

 

2 x2

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(ii)

1

 

3

 

 

5

x2

 

 

 

0

(ii)

 

1

3

5 x1

 

 

0

 

 

 

 

 

 

 

 

 

 

7

 

4

 

 

2

 

 

 

 

 

 

1

 

 

(i)

 

2

4

 

 

 

 

7

 

 

 

 

 

 

 

 

 

(iii )

 

 

 

x2

 

 

 

 

 

 

1 x3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

перестановкой столбцов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(i)

2

4

1

x1

 

 

7

 

 

 

(i) 4

 

2

1

x1

 

7

 

 

 

(i) [ 4]

2

1

x1

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(ii)

1

3

5

 

x2

 

0

 

(i)

 

3

 

1

5

 

x2

 

0

 

(ii)

3

[5]

1

x2

 

0

 

 

7

4

2

 

 

 

 

 

 

 

 

 

(iii)

 

4

 

7

2

 

 

 

 

 

 

 

 

 

 

4

2

 

 

 

 

 

(iii)

 

x3

 

 

1

 

 

 

 

 

 

x3

 

1

 

 

 

 

(iii )

[ 7] x3

 

1

 

( j)

( jj)

( jjj)

 

 

 

 

 

 

 

 

 

 

 

( jj)

 

( j) ( jjj)

 

 

 

 

 

 

 

 

 

( jj)

( jjj)

( j)

 

 

 

 

(Способ 2)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Преобладание нижней левой (ii ' ) (ii) 2 (iii)

 

 

 

 

 

 

 

 

 

 

треугольной части матрицы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(i) 5 1

 

3

x1

 

 

1

 

 

 

 

 

(i) (ii) (iii)

 

 

 

 

 

 

 

 

 

 

 

(ii)

4

 

3

2

x

 

 

 

3

 

(i ' )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(iii)

3

1

5

x

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Проверка необходимого и достаточного условия сходимости:

 

 

 

 

 

 

( 4) ( 3) 5 60 ,

( 1) 2 3 6, 4 0 4 ( 1) 0

 

 

 

 

 

 

1 0 ( 3) 3 0, 2 ( 4) 2 ( 1) 8, 3 ( 1) 4 5 20

 

 

 

 

 

 

 

 

1 2

3 4

(0) 8 ( 20) 0 12

 

 

 

 

 

 

Случай

4 2

 

 

4 60 ( 6)

(12)2 .

 

 

 

 

 

 

 

 

 

 

При этом:

 

 

 

2 4 2

(12)2

4 602

 

-

верно !

 

и

sign (α) (α γ) |β | знак(60) (60 ( 6)) |12 |

1 (54) 12

-

верно !

 

Для случая 2

4 сходимость будет при

sign( ) ( ) 0 .

 

 

(Способ 3) Умножение (слева) системы на транспонированную матрицу

 

 

AT

 

A x

 

AT f

 

 

 

 

 

 

 

H

x f

 

 

5

4 3

5

1 3

 

x1

 

 

5

4 3

 

1

 

 

50

20

8

x1

 

2

 

1

3 1

4

3 2

 

x2

 

 

1

3 1

 

 

3

 

20 11

8 x

 

 

 

5

 

 

3

 

3

1 5

 

 

 

 

3

 

 

5

 

 

 

8

 

 

2

 

 

 

 

 

2 5

 

x3

 

 

2 5

 

 

 

8

38

x

3

 

 

22

 

50 ( 5) ( 5) 4 4 3 3 ;

 

20 1 ( 5) ( 3) 4 ( 1) 3 ;

8 3 ( 5) 2 4 5 3

11 1 1 ( 3) ( 3) ( 1) ( 1) ;

8 3 1 2 ( 3) 5 ( 1) ;

 

38 3 3 2 2 5 5

2 ( 5) 1 4 ( 3) 3 5

5 1 1 ( 3) ( 3) ( 1) 5

22 3 1 2 ( 3) 5 5

61

Поверим необходимое и достаточное условие для системы

A x b

H

x f , в которой просматривается доминирование ниж-

ней треугольной части матрицы.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2x1

1x2

1x3

1

(I)

 

Таблица 3.1

 

 

 

 

 

 

 

4x1

3x2

0x3

2

(II)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

H

 

 

 

 

H

 

 

 

 

 

 

 

 

2

 

1

 

 

1

2

 

 

1

1

2x1

2x2 3x3 9

(III)

 

 

 

 

 

 

 

4

 

3

 

 

0

4

 

 

3

0

По таблице 3.1

со сдвоенной

 

 

 

 

 

-2

 

2

 

 

3

-2

 

 

2

3

матрицей H системы вычисля-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ем коэффициенты: 18; 1 6; 2 0; 3

12; 4

8; ( 6) 0 12 8 2 .

Поскольку 2

4 22

4 18 0 , то для этого случая проверяем усло-

 

 

 

 

 

 

 

 

 

 

 

 

 

вия: 2 4 2 22

4 182

и sign ( ) ( )

 

 

 

1 (18 0)

2

.

 

Оба условия выполняются, следовательно, система H x f

 

будет да-

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

b. В соответствии с рекомендацией x(0) 1 2 2 3 9 3 T 0.5 0.67

3 T .

c. Приводим систему H

x f к итерационной форме:

 

x(k 1)

0x(k )

1x(k )

1x(k ) 2 1 2

 

 

1

1

2

3

 

 

4x1(k 1) 0x3(k ) 0x3(k ) 3 2 3

 

x2(k 1)

 

x(k 1)

2x(k 1) 2x(k 1)

0x(k ) 3 9 3

 

 

3

1

2

3

 

Для вычисления приближений по методу Зейделя используем макрос:

Sub Пример_4_1()

k = 0: x1 = 1 / 2: x2 = 2 / 3: x3 = 9 / 3

Cells(k + 2, 1) = k: Cells(k + 2, 2) = x1: Cells(k + 2, 3) = x2: Cells(k + 2, 4) = x3

Do

w = (1 - 1 * x2 - 1 * x3) / 2: Delta = Abs(w - x1): x1 = w

w = (2 - 4 * x1) / 3: v = Abs(w - x2): Delta = IIf(v > Delta, v, Delta): x2 = w w= (9+2 * x1 - 2 * x2) /3: v = Abs(w - x3): Delta = IIf(V > Delta, v, Delta): x3= w k = k + 1

Cells(k + 2, 1) = k: Cells(k + 2, 2) = x1: Cells(k + 2, 3) = x2: Cells(k + 2, 4) = x3 Loop While Abs(Delta) > 0.001

End Sub

Результаты решения представлены в таблице 3.2.

62

Таблица 3.2

 

A

B

C

D

1

k

x1

x2

x3

2

0

0,5

0,666667

3

3

1

-1,33333

2,444444

0,481481

4

2

-0,96296

1,950617

1,057613

5

3

-1,00412

2,005487

0,993599

6

4

-0,99954

1,99939

1,000711

7

5

-1,00005

2,000068

0,999921

 

 

 

 

 

 

n o o 3 o o o o o o

 

 

n

 

 

 

 

 

 

 

o n o o 3 o o

o o o

 

5

o o n o o 3 o

o o o

 

5

 

 

 

 

 

 

2 o o n o o 3

o o o

 

5

 

 

 

 

 

 

1 4 o o n o o

3 o o

 

5

A

 

 

,b

 

 

o 1 2 o o n o

o 3 o

 

5

 

 

 

 

 

 

o o 1 4 o o n

o o 3

 

5

o o o 1 2 o o

n o o

 

5

 

 

 

 

 

 

o o o o 1 4 o

o n o

5

o o o o o 1 2o

o o n

n

Рисунок 3.1

3.2.3 Пример выполнения задания 2

Sub Пример_3_2() ʹ См. рисунок 3.1, n=9

Dim x(1 To 10) As Double, y(1 To 10) As Double Dim b(1 To 10) As Double, S As Double

n=9: For i = 1 To 10: b(i) = 5: x(i) = b(i) / n: Next i b(1) = n: b(10) = n: x(1) = 1: x(10) = 1

k = 0: Cells(k + 2, 1) = k

For i = 1 To 10: Cells(k + 2, i + 1) = x(i): Next i Do: k = k + 1

For i = 1 To 10 S = b(i):

j = i + 3: If j < 11 Then S = S - 3 * x(j)

j = i - 3: If 0 < j Then S = S - IIf(i Mod 2, 4, 2) * x(j) j = i - 4: If 0 < j Then S = S - 1 * x(j)

y(i) = S / 9

Next i

Cells(k + 2, i) = k: Delta = 0: For i = 1 To 10:

S = Abs(y(i) - x(i)): If S > Delta Then Delta = S x(i) = y(i): Cells(k + 2, i + 1) = x(i)

Next i

Loop While Delta > 0.0001

End Sub

63

Вектор решения, вычисленный по программе, приведѐн в таблице 3.3.

Таблица 3.3

k

X(1)

X(2)

X(3)

X4)

X(5)

X6)

X(7)

X(8)

X(9)

X(10)

16

0,8829

0,5391

0,4746

0,3513

0,0493

0,2428

0,0242

0,5056

0,4422

0,9677

 

3.2.4 Варианты задания 1

(см. в разделе 2.3)

 

3.2.5 Варианты задания 2

Вар. n=1-5

2n

ooo1

A o

o

oooo

Варианты задания 2

o

o o 1

o

o o o o

 

 

n

 

2n o

o o 1

o

o o o

 

 

 

 

 

 

n

 

o

2n o o o 1

o

o o

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

o o

2n o o o 1

o

o

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

o

o o

2n o

o o 1

o

 

 

2

 

 

 

 

 

 

 

 

 

 

,

b

 

1

o

o o

2n o o o 1

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

o 1

o

o o

2n o o o

 

 

n

 

o o 1

o

o o

2n o o

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

o o o 1

o

o o

2n o

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

o o o o 1

o o o

2n

 

n

 

Вар. n=6-10

n

oo21

A o

oooo

Варианты задания 2

o o 2 1 o o o o

o

 

n

 

n o o 2 1 o

o o

o

 

 

 

 

 

 

n

 

o n o o 2 1 o o

o

 

 

n

 

 

 

 

 

 

 

 

o o n o o 2 1 o

o

 

 

n

 

 

 

 

 

 

 

 

2 o o n o o 2 1

o

 

 

2

 

 

 

 

,

b

 

1 2 o o n o o 2 1

 

 

2

 

 

 

 

 

 

 

o 1 2 o o n o o 2

 

 

n

 

o o 1 2 o o n o

o

 

 

n

 

 

 

 

 

 

 

 

o o o 1 2 o o n

o

 

 

n

 

 

 

 

 

 

 

 

o o o o 1 2 o o n

 

6

64

Вар. n=11-15

Варианты задания 2

 

 

 

 

 

 

 

 

n o o 2 1 o o o o

o

 

 

 

n

 

 

 

 

 

 

 

 

 

o

n o o 4 1 o o o

o

 

 

8

 

o

o n o o 2 1 o o

o

 

 

8

 

 

 

 

 

 

 

 

 

o

o o n o o 4 1 o

o

 

 

8

 

 

 

 

 

 

 

 

 

1

o o o n o o 2 1

o

 

 

8

 

A

 

 

 

,

b

 

 

o

1 o o o n o o 4 1

 

 

8

 

 

 

 

 

 

 

 

 

o

o 1 o o o n o o 2

 

 

8

 

o

o o 1 o o o n o

o

 

 

8

 

 

 

 

 

 

 

 

 

o

o o o 1 o o o n

o

 

8

o

o o o o 1 o o o n

 

n

Вар. n=16-20

n

6

o

o

1

 

 

 

 

 

6

n

6

o

o

 

 

 

 

 

o

6

n

6

o

o

o

6

n

6

 

 

 

 

 

1

o

o

6

n

A

 

 

 

 

o

1

o

o

6

 

 

 

 

 

o

o

1

o

o

o

o

o

1

o

 

 

 

 

 

o

o

o

o

1

o

o

o

o

o

Варианты задания 2

o

o

o

o

o

 

6

1

o

o

o

o

 

 

 

 

 

 

n

 

o

1

o

o

o

 

 

n

 

 

 

 

 

 

 

 

 

 

o

o

1

o

o

 

 

n

 

 

 

 

 

 

 

 

 

 

6

o

o

1

o

 

 

n

 

 

 

 

 

 

 

,

b

 

n

6

o

o

1

 

 

n

 

 

 

 

 

 

 

 

 

 

6

n

6

o

o

 

 

n

 

o

6

n

6

o

 

 

n

 

 

 

 

 

 

 

 

 

 

o

o

6

n

6

 

 

n

 

 

 

 

 

 

 

 

 

 

1

o

o

6

n

 

6

Вар. n=21-25

n

5

o

1

o

 

 

 

 

 

5

n

5

o

o

 

 

 

 

 

o

5

n

5

o

1

o

5

n

5

 

 

 

 

 

o

o

o

5

n

A

 

 

 

 

o

o

1

o

5

 

 

 

 

 

o

o

o

o

o

o

o

o

o

1

 

 

 

 

 

o

o

o

o

o

 

 

 

 

 

o

o

o

o

o

Варианты задания 2

o

o

o

o

o

 

n

o

o

o

o

o

 

 

 

 

 

 

 

4

1

o

o

o

o

 

 

 

4

 

 

 

 

 

 

 

 

 

o

o

o

o

o

 

 

 

4

 

 

 

 

 

 

 

 

 

5

o

1

o

o

 

 

 

4

 

 

 

 

 

 

,

b

 

n

5

o

o

o

 

 

 

4

 

 

 

 

 

 

 

 

 

5

n

5

o

1

 

 

 

4

o

5

n

5

o

 

 

 

4

 

 

 

 

 

 

 

 

 

o

o

5

n

5

 

 

 

4

 

 

 

 

 

 

 

 

 

o

1

o

5

n

 

n

65

Вар. n=26-30

Варианты задания 2

 

 

 

 

 

 

 

 

n o o 2 1 o o o o

o

 

 

 

n

 

 

 

 

 

 

 

 

 

8

n o o 2 1 o o o

o

 

 

8

 

 

 

 

 

 

 

 

 

o

8 n o o 2 1 o o

o

 

 

8

 

o

o 8 n o o 2 1 o

o

 

 

8

 

 

 

 

 

 

 

 

 

1

o o 8 n o o 2 1

o

 

 

8

 

A

 

 

 

,

b

 

 

o

1 o o 8 n o o 2 1

 

 

8

 

 

 

 

 

 

 

 

 

o

o 1 o o 8 n o o 2

 

 

8

 

o

o o 1 o o 8 n o

o

 

 

8

 

 

 

 

 

 

 

 

 

o

o o o 1 o o 8 n

o

 

8

o

o o o o 1 o o 8 n

 

n

66

4 РАСЧЕТНО-ГРАФИЧЕСКАЯ РАБОТА №4 Интерполяция полиномами и сплайнами

4.1 Краткие теоретические сведения

4.1.1 Формулировка задачи

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

ДАНО: таблично заданная функция

y(x)

 

 

 

 

x1

x2

. . .

xn

 

 

y1

y2

. . .

yn

НАЙТИ: на

[x1, xn ] функцию f (x)

Рис. 4.1.

 

 

 

f (x) c1 f1 (x) c2 f2 (x) cn fn (x) ,

c1 ,c2 , ,cn ?

(4.1)

заданного класса, совпадающую в узлах с исходной, то есть для

при-

ближающей

(интерполирующей) функции должны выполняться

интерполяционные условия:

 

 

 

f ( xi ) yi ,

i 1, , n .

 

(4.2)

4.1.2 Линейные и кусочно-линейные приближающие функции

Простейшей функцией (4.1) является линейная зависимость

f (x) c0 1 c1 x

(4.3)

с базисными функциями f0 (x) 1, f1(x) x . Два

еѐ коэффициента

c0 , c1 можно найти из условий (4.2) прохождения прямой через две точки (два узла). Заметим, что выбрав базисные функции в виде

67

g1(x) (x2 x) (x2

x1),

g2 (x) (x x1)

(x2 x1) , то есть,

записав

функцию в виде

 

 

 

 

 

g2 (x) y1 g1 (x) y2 g2 (x) ,

 

f (x) c1 g1 (x) c2

(4.4)

 

 

 

 

 

можно сразу получить коэффициенты: c1

y1, c2 y2 .

 

Если же число улов больше двух, то вместо линейной зависимости можно использовать кусочно-линейную зависимость (см. ломаную линию на рис. 4.2), которую можно представить в следующем виде:

f (x) c c x x

c x x

 

(4.5)

 

1

2

1

 

n

n

,

где выражение

x x

 

max( 0, x x )

с подстрочным знаком «+»

i

 

 

i

действует (не равно нулю) лишь, когда оно положительно,

то есть

 

 

 

 

x xi 0 .

Кусочно-линейную

функ-

 

 

 

 

цию (4.5) называют сплайном первой

 

 

 

 

степени. Она непрерывна, но еѐ пер-

 

 

 

 

вая производная имеет в узлах раз-

 

 

 

 

рывы, где производная слева обычно

 

 

 

 

не равна производной справа. Отме-

Рис. 4.2.

 

 

 

тим, что функцию (4.5) можно запи-

 

 

 

сать с помощью локального базиса –

 

 

 

 

функций Mi (x)

(см. треугольную эпюру на рис. 4.5), заданных на

двух смежных участках между узлами. Такие функции для среднего узла xi записываются в виде:

 

 

(x xi )

 

1

M i

(x)

 

 

 

h

 

 

 

h

 

 

i

 

i

 

1

 

x xi

 

 

x x

 

 

 

 

 

 

i 1

 

,

(4.6)

 

 

 

 

 

 

 

 

 

hi 1

 

 

 

 

hi 1

 

 

 

 

 

 

где hi

xi xi 1 .

Для крайних узлов можно

принять h1 hn 1 , а

дроби, содержащие эти величины, считать равными нулю.

Запись

сплайна

(4.5)

первой степени через локальные функции:

 

 

 

(x) cn Mn (x) y1M1 (x)

y2 M2 (x) yn Mn (x) , (4.7)

f (x) s(x) c1M1 (x) c2 M2

содержит коэффициенты, равные ординатам узлов интерполяции. Важно заметить, что при вычислении ординаты сплайна для абсциссы x [x1, xn ] сначала определяется отрезок [xi 1, xi ] , содержащий эту абсциссу, а затем используются лишь две не равные нулю на этом от-

68

резке базисные функции. Результат их использования будет равносилен применению формулы (4.4), то есть равен:

 

 

 

 

 

f (x) yi

 

xi 1 x

yi 1

 

 

x xi

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(4.8)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Полезно отметить, что

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

1

n

 

 

 

 

x x

 

 

 

 

 

 

 

1

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

f (x) s (x)

y

M

 

(x)

 

y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,

(4.9)

 

 

 

i

 

 

i

 

 

 

2

 

 

 

 

h

 

 

 

 

 

 

 

h

 

 

 

h

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

откуда получаем

 

 

для

 

x [x1, xn ]

 

следующую

 

 

 

интерполяционную

формулу

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y y

n

 

1

n y

i 1

 

 

 

 

 

1

 

 

 

1

 

 

 

 

 

 

 

 

 

 

y

i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x)

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

 

 

 

 

 

 

 

x x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

(4.10)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

2

 

 

2 i 1

hi 1

 

 

 

hi 1

 

 

hi

 

 

 

 

 

 

 

 

 

hi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Например, кусочно-линейная функция

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

1

 

 

 

 

2

 

 

3

 

4

f (x) 0.5 0.5 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

2

x 1

 

x 3

 

x 4

 

 

 

 

 

xi

 

 

 

 

 

0

 

 

 

 

1

 

 

3

 

4

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

 

 

 

 

 

 

 

 

 

 

yi

 

 

 

 

 

0

 

 

 

 

2

 

 

2

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вне отрезка x [x1, xn ]

функция сохраняет крайние значения.

 

 

 

 

 

4.1.3

Полиномиальные приближающие функции

 

 

Для гладкой интерполяции часто в (4.1) выбирают полиномиаль-

ный базис

f0 (x) 1, f1(x) x, , fn (x) xn ,

то есть используют поли-

ном вида:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x) c

0

1 c

x c

2

 

x2 c

n

xn ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(4.11)

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а его коэффициенты подбирают из условий (4.2) прохождения f (x) через заданные точки.

Задача 4.1. Дана таблица значений функции

y(x) :

 

 

 

 

 

 

 

xi

 

0

1

2

 

 

yi

 

0

1

0

 

 

 

 

 

 

 

Рис. 4.3.

 

 

 

 

 

 

Найти приближающую функцию вида:

f (x) c0 1 c1 x c2 x2 ,

( c0 , c1, c2 ? ), приближающую узлы, пока-

занные на рис. 4.3.

 

 

 

 

69

Способ 1 решения задачи 4.1. Запишем интерполяционные условия:

f (x1 ) y1 : f (x2 ) y2 : f (x3 ) y3

c0c0c0

c1 0 c2 02 0

c1 1 c2 12 1

c1 2 c2 22 0

 

0 и

c 1 c

 

1

1

 

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

1

2

 

 

.

 

 

c1 2 c2 4 0

 

Решив эту систему уравнений, получаем

c1 2

и c2 1, то есть

f (x) 0 1 2 x 1 x2 x (x 2) .

Вообще полином n-ой степени, и этот в частности, можно за-

дать как коэффициентами, так и несовпадающими узловыми точками – их число должно равняться (n+1).

Способ решения 2 (Способ Лагранжа). Для интерполяции точек

x1 0; x2 1;

 

x3 2

 

 

 

 

 

 

 

 

 

 

 

y1 0; y2 1;

 

y3

0

приближающую функцию можно записать в

 

 

 

 

 

 

 

 

 

 

 

 

виде f (x)

(x x1) (x x3 )

, так как.

x 0 , x3

2

- корни уравнения f (x) 0.

 

 

 

A

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

При x x2 1 числитель функции равен

(x2

x1) (x2 x3 ) , поэтому если

принять знаменатель равным этому значению A (x2 x1) (x2

x3 ) , то

функция f (x)

при

x x2

1 будет равна 1, а нули функции

останут-

ся на месте. Итак,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x)

(x x1 ) (x x3 )

 

 

(x 0) (x 2)

 

 

x (x 2)

x (x 2)

(x

2

x ) (x

2

x

)

(1 0) (1 2)

1

 

 

 

 

1

 

 

3

 

 

 

 

 

 

 

 

 

Для применения способа Лагранжа к общему случаю (см. формулировку задачи и рис. 4.1) представим точки, задающие полином с рис. 4.1 как сумму (суперпозицию) узлов, вспомогательных полиномов с рисунка 4.4а–4.4г. Заметим, что на рисунках их масштабы выбраны так, что ненулевые ординаты узлов равна единице.

70