ЭВМ_Семестр3_МетодПособие
.pdfСпособы приведения исходной СЛАУ к сходящейся (по методу Зейделя)
(Способ 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