Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Численные методы. В 2 частях. Ч.1. Учебное пособие
.pdf
Правило. Для кубического интерполяционного сплайна имеет ме-
f
f
x
x
x
x
сто следующая оценка абсолютной погрешности приближения: если
1
k
() [, ]
xC ab
xxx x
,
03k
max ( ) ( ) max ( )
,a,b
1
kk
, то
() () 1 ( 1)
mm km k
xS x Ch f x
. (19)
Замечание. Кубический интерполяционный сплайн точно приближает полиномы до третьего порядка включительно, удовлетворяющие условию нулевой кривизны на концах отрезка
(2) (2)
() () 0fafb
ЗНАЧЕНИЕ СПЛАЙНА В ПРОИЗВОЛЬНОЙ ТОЧКЕ
.
[, ]ab, т. е. такие, что
Пусть задана точка
онный сплайн на разбиении
ходимо найти сегмент
и построен кубический интерполяци-
,xab
ω ...
x
1,kk
ax x b
01
1,kn
, такой, что
. Сначала необ-
n
xx
1,kk
k – номер сегмента. Вычислим значение интерполянта и его двух производных:
() ()()()
Sx a bxx cxx dxx
kk k k k k k
() 2 ( ) 3 ( )
Sx b c x x d x x
Замечание. Если
11 1
kk k k k
() 2 6 ( )
Sx c dx x
– внутренняя узловая точка, то можно вы-
11
kk k
23
2
.
1
,
,
брать любой из сегментов, содержащий эту узловую точку.
Пример. Пусть (0) 0f , (1) 1f , (2) 2f , (3) 3f , необходимо
построить кубический интерполяционный сплайн, вычислить его значе-
0,5x
ние и двух первых производных в точке
Заданы три сегмента
[0,1] , [1, 2 ] и [2, 3] одинаковой длины
.
1h
Если воспользоваться выведенными формулами для СЛАУ (16), то
ββ 4, 1γ 1 ,
12
1,
2
12
0 .
,
.
11

Решим СЛАУ с матрицей 2 × 2
с
2
с
3
0
,
откуда
23
0сс.
41 0
14
По формулам (5), (9) и (11)–(14) окончательно получаем
Точка
,
0,1,2a
0,5x
принадлежит сегменту
() ()()()Sx a bxx cxx dxx
11 0 1 0 1 0
() 2 ( ) 3 ( )Sx b cx x d x x
11 0 1 0
() 2 6 ( )Sx c dx x
,
1,1, 1b
0,0,0c
11 0
,
, значит,
0,1
23
,
откуда
(0,5) 0 1(0,5 0) 0(0,5 0) 0(0,5 0) 0,5S
(0,5) 1 2 0(0,5 0) 3 0(0,5 0) 1S
(0,5) 2 0 6 0(0,5 0) 0S
.
23
.
0,0,0d
,
2
,
,
2
,
АППРОКСИМАЦИЯ ПО МНК
Существуют два подхода в сплайн-теории: алгебраический и вариационный. В алгебраическом подходе сплайн понимается как гладкая кусочно-полиномиальная функция (например, кубический интерполяционный сплайн). В вариационном подходе сплайны – это элементы гильбертовых (или банаховых) пространств, минимизирующие определённые функционалы.
Функционал – функция, заданная на произвольном множестве
и имеющая числовую область
значений.
12

Пример. Рассмотрим
f
g
f
x
на отрезке
() 0,1ggdxgC
0,1
1
0
. Определим функционал
.
– множество непрерывных функций
0,1C
: 0, 1CR
такой, что
Пример. Норма – функционал, область значений которого – множе-
ство неотрицательных чисел. Пространство, полное в метрике, порождённой нормой, называют банаховым.
Задача об аппроксимации функции
зом: найти такую
()gxB , что
()fx ставится следующим обра-
() argmin () () ()
gx f x Gx Gx B
()
Gx B
2
. (20)
Замечание. Формулу (20) трактуют как задачу минимизации
() ()
функционала
задачи – функция
xGx
()gx , которая среди всех ()Gx B есть наилучшая
аппроксимация функции
2
в банаховом пространстве B. Решение
()fx .
Для решения задачи (20) необходимо ввести правило, по которому
можно определить норму. Естественным шагом является рассмотрение
гильбертовых пространств. Гильбертово пространство – банахово пространство, норма которого порождена положительно определённым
(, )
скалярным произведением, т. е.
Рассмотрим в гильбертовом пространстве
gg
.
дискретное ска-
,Hab
лярное произведение
,: ω ()()
где
ω
– весовые множители.
i
gfxgx
ii i
i
i
, (21)
,
ab
Замечание. Дискретное скалярное произведение (21) определяет
полунорму
сиомы нормы:
2
2
, так как не гарантирует выполнения первой ак-
,fff
0f
и
0 θff
, θ – нулевой элемент.
13

Пример. Пусть на отрезке
f
f
x
f
j
в точках
()() 0fx fx при любых ω
11
1x и
0
1
1x . Получаем, что
.
i
задана функция
1, 1
2
2
,()()ffffxfx
Пусть Ω – конечномерное линейное подпространство в
() 1
xx
00
,Hab
2
и
в подпространстве Ω для функции
наименьших квадратов (МНК): найти такую
мент
является нормой в Ω. Наилучшую аппроксимацию по норме
2
()fx можно построить по методу
()gx, что
() argmin () () ()
gx f x Gx Gx
Gx
()
В подпространстве Ω существует базис
2
2
ψi
. (22)
. Тогда любой эле-
()Gx можно разложить по этому базису:
N
()
Gx
k
1
kk
,
где N – размерность подпространства. Задача (22) сводится к поиску минимума функционала
N
Пусть
ax x b
01
() ()
xx
kk
1
k
...
– сеточное разбиение, в опорных
n
точках которого заданы значения функции
2
. (23)
2
()
x
i
. Воспользу-
0,in
емся формулой (21) и перепишем (23) в виде
nn
Если
ψi
– заданный базис, то необходимо найти такие
при которых функционал
() ()
fx x
ii jji
00
ij
достигает своего минимума.
14
2
. (24)
,

Замечание. Функция является квадратичной и имеет един-
x
x
x
ственную точку минимума. Это возможно только в том случае,
если
является нормой в подпространстве Ω.
2
Условия экстремума функции
nn
k
2() ()
ij
fx x
ii jji
00
принимают вид
() 0
x
ki
, (25)
0,kn
откуда получаем систему линейных алгебраических уравнений относительно
k
nn n
ij i
00 0
:
0,kn
i jji ki i i ki
() () () ()
xfxx
. (26)
Замечание. Для аппроксимации по МНК
Функция
()gx – наилучшая по норме
ω 1i
аппроксимация тогда
2
0,in
и только тогда, когда
, ψ 0fg
ψ. (27)
Замечание. Формулы (26) и (27) эквивалентны.
Выберем в качестве базисных функций
сплайны, носителями которых являются сегменты
ψ ()kx базисные
x
1,kk
На рис. 1 показан пример локальных базисных функций. На каждом
сегменте
заданы две финитные линейные функции (вне сег-
x
1,kk
мента тождественно равны 0).
Рис. 1. Локальные сплайны (первый порядок)
15
.
.
1,kn

Замечание. Локальные базисные функции могут быть любого
x
g
g
x
g
x
x
x
x
x
x
x
порядка. Использование первого порядка далее требуется только для
упрощения изложения материала.
На каждом сегменте
2( )
xx
k
где
h
k
1
k
1
1
,
hxx
.
Введём понятие «сшивки» базисных функций. На сегменте
() () ()
имеем
xxx
2
()
22
. Поведение функции ()
кой» базисных функций
11
01 12
1
1
:
x
1,kk
1
и
2
1kkk
, а на сегменте
x в узле
с
2
()
2
()
k
2
и
1
,
2
() ()
,xx
12
определяется «сшив-
1
1
()
2
с
2
()
1
,xx
01
xx
2
11
. Реализуется
«сшивка» как общий вклад в элемент матрицы СЛАУ, который отвечает
переменной
. Аналогично производится «сшивка» во всех внутрен-
1
них узлах разбиения.
Пример. Рассмотрим процедуру сборки СЛАУ (26). На сегменте
01
определены
,xx
1
()
1
и
1
()
, запишем два уравнения
2
n
0
i
n
0
i
где из всей суммы по
111
() () ()
ii ii
ii ii
xxx
01 12 1
n
() (),
ii i
i
0
111
() () () =
xxx
01 12 2
n
0,in
fx x
ii i
i
0
останутся только
1
fx x
1
1
() (),
2
и
0i
в силу фи-
1i
нитности локальных базисных функций. Тогда СЛАУ будет иметь вид
16

f
f
x
x
11 11
ω () () ω () ()
xx x x
11 12
ii i ii i
ii
11 11
ω () () ω () ()
ii
xx x x
21 2 2
ii i ii i
00
... ...
00
0
...
0
0
1
2
...
1
n
n
На сегменте
ω () ()
ii i
i
ω () ()
ii i
i
определены
,xx
12
n
0
i
n
0
i
222
() () () =
ii ii
ii ii
xxx
11 2 2 1
n
ii i
i
0
222
() () () =
xxx
11 2 2 2
n
ii i
i
0
1
xx
1
1
xx
2
0
...
0
0
2
()
и
1
2
() (),
fx x
1
2
() (),
fx x
2
.
2
()
, запишем уравнения
2
где из всей суммы по
останутся только
0,in
и
1i
в силу фи-
2i
нитности локальных базисных функций. СЛАУ будет иметь вид
17

x
x
g
11 11
ω () () ω ( ) ( ) 0 ... 0
xx x x
11 1 2
ii i ii i
ii
11
ω () ()
xx
22
ii i
11 22
ω () () ω ( ) ( ) ... 0
xx x x
21 1 2
ii i ii i
ii
0
i
22
ω () ()
xx
11
ii i
i
ω () () ω ( ) ( ) ... 0
22 22
xx xx
21 2 2
ii i ii i
ii
0 ...................... 0
ω () ()
ii i
i
0
ω () ()
ii i
1
2
...
1
n
niii
i
ω () ()
ii i
i
ω () ()
i
....
1
fx x
1
1
fx x
2
2
fx x
1
fx x
2
2
.
В конце сборки будет получена СЛАУ с трёхдиагональной матрицей, решить которую можно методом прогонки.
Замечание. Пусть задана точка
()gx
сплайна в этой точке
ходимо найти сегмент
номер сегмента. Тогда
строится следующим образом. Сначала необ-
x
1,kk
() () ()
xxx
kk
11 2
, такой, что
1,kn
kk
, алгоритм вычисления
,xab
xx
.
1,kk
Пример. Решить задачу о наилучшей аппроксимации функции на
подпространстве, если
(1) 1, ( 2) 2, (3) 1ff f.
, k –
18

Решение. Определим множество
g
x
x
x
g
f
x
найти такую функцию ()gx, что
[1, 2 ] [ 2, 3]
12
. Необходимо
() () min
fx gx
Сетка состоит из трёх точек, значит,
2
.
gx
()
3
() ()
xx
ii
i
1
, где
i
базис в Ω. Ограничимся полиномами первой степени и определим
()
функции
через локальные сплайны
i
2( )
xx
k
h
k
1
;
h – длина сегмента;
k
1
– начальная точка сегмента.
k
k
,
2
1
k
1
2
1
На рис. 2 показан вид базисных функций.
Рис. 2. Кусочно-линейные сегменты
Функция ()
гда и только тогда, когда
x – наилучшая аппроксимация функции ()fx в Ω то-
(, )0
fg. Выберем скалярное произве-
i
дение
n
( , ) , () () ()
gfg fxgxx
i
iii
0
, ψ.
()
, где
–
На отрезке [1, 2]:
23
сегмента,
как
,
()gx
12
12
11
1h – длина сегмента,
1
2, [1,2],
xx
1
1
0, [1, 2],
x
, то получаем два уравнения
19
1x – начальная точка
1
1, [1, 2 ]
xx
1
2
0, [1, 2]
x
. Так

x
x
111 1
12
121 1
111 1
12
122 2
, , f
, , f
,
.
После раскрытия скобок
111
11 11 1
12
iii
12
iii
() () () () () ()
000
111
000
ii ii ii
11 21 1
11 11 1
() () () () () ()
ii ii ii
12 22 2
xxxfxx
xxxfxx
,
.
Или в матрично-векторной форме
11 1
11 11 1
() () () () 0 () ()
xx xx fxx
ii i
00 0
11 1
ii i
00 0
ii ii i i
11 21 1
1
11 11 1
() () () () 0 () ().
xx xx fxx
ii ii i i
12 22 2
0000
2
3
Приведём результаты расчётов для первого диагонального элемента
матрицы и первой компоненты вектора правой части СЛАУ:
1
11 11 11
() () (1) (1) (2) (2)1
A
11
i
1
f
1
i
xx
ii
11 11 11
0
() () () () ( ) ( )1
fx x fx x fx x
0
111
ii
111
1122
,
;
имеем СЛАУ после сборки на первом сегменте
010 2
000
20
1100
1
0
.
2
3
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
