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

DiVM / DiVM / 12_116608_1_52628

.pdf
Скачиваний:
14
Добавлен:
11.05.2015
Размер:
1.09 Mб
Скачать

(1)

y1(10)

3.865; (2)

y2(10)

3.857; (3)

 

 

y3(10)

3.853.

 

 

y(9)

y(9)

1

y(9)

1

 

 

1

 

 

 

 

 

 

1

 

 

 

 

 

2

 

 

 

 

 

 

 

3

 

4) Вычисляем λ1 как среднее арифметическое (1)

, (2)

, (3)

 

 

 

 

 

 

 

 

 

 

 

 

1

 

1

 

 

1

 

 

 

 

 

 

 

(1) (2) (3)

3,858

 

 

 

 

 

 

 

 

 

 

 

1

1

1

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5) Определим соответствующий числу λ1 собственный вектор:

 

 

 

 

 

 

 

 

 

 

941370

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y(10) A(10) y(0) 812585 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

284508

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Нормируем y(10), разделив на длину вектора

 

 

 

 

 

 

 

 

 

 

 

 

y(10 )

 

 

 

 

 

 

 

 

 

9413702

8125852 2845082

1.28*106

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0.74

получим вектор x(1) 0.64 .

0.22

Далее можем определить второе собственное число

 

 

 

y(n 1)

y(n)

 

 

 

i

1 i

 

2

y(n 1)

y(n 1) ,

 

 

 

 

 

i

1 i

где i=1,2,…,n.

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

41

5. ЗАДАЧА ПРИБЛИЖЕНИЯ ФУНКЦИИ

Постановка задачи. Пусть на отрезке [a,b] задана функция у= f(x) своими

n+1 значениями y0 f(x0),...,yn f(xn), в точках x0 ,x1...,xn .

 

Допустим, что вид

функции

f(x)

неизвестен.

На

практике часто

встречается задача вычисления значений

функции

у=

f(x)

в точках х,

отличных от

x0 ,...,xn . Кроме того, в некоторых случаях, не смотря на то, что

аналитическое

выражение

у=f(x)

известно, оно

может

быть слишком

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

Определение. Точки x0 ,...,xn называются узлами интерполяции. Требуется найти аналитическое выражение функции F(x), совпадающей в

узлах интерполяции со значениями данной функции, т.е.

F(x0 ) y0,F(x1) y1,...,F(xn ) yn.

Определение. Процесс вычисления значений функции F(x) в точках отличных от узлов интерполирования называется интерполированием функции

f(x). Если х х0,xn , то задача вычисления приближенного значения функции в т. х называется интерполированием, иначе - экстраполированием.

Геометрически задача интерполирования функции одной переменной означает построение кривой, проходящей через заданные точки ( x0 ,y0 ),( x1,y1 ),...,( xn ,yn )(рисунок 5). То есть задача в такой постановке может иметь бесконечное число решений.

у

x0 x1

x2

x3 х

Рисунок 5 - Геометрическая иллюстрация задачи интерполирования функции

Задача становится однозначной, если в качестве F(x) выбрать многочлен степени не выше n, такой что:

Fn (x0 )=y0 , Fn (x 1 )=y1 ,..., Fn (xn )=yn .

42

Определение. Многочлен Fn (x), отвечающий вышеназванным условиям, называется интерполяционным многочленом.

Определение. Когда многочлен F(x) выбирается в классе степенных функций, то интерполяция называется параболической.

Знание свойств функции f позволяет осознанно выбирать класс G аппроксимирующих функций. Широко используется класс функций вида

Фm( x) c0 0( x) c1 1( x) ... cm m( x),

(5.1)

являющихся линейными комбинациями некоторых базисных функций 0 (x),..., m(x). Будем искать приближающую функцию в виде многочлена степени m, с коэффициентами с 0 ,...,сm , которые находятся в зависимости от вида приближения. Функцию Фm(х) называют обобщенным многочленом по системе функций 0(х), 1(х),…, m(х), а число m – его степенью. Назовем обобщенный многочлен Фm(х) интерполяционным, если он удовлетворяет условию

Фmi)=yi, (i=0,1,…,n). (5.2)

Покажем, что условие (5.2) позволяет найти приближающую функцию единственным образом

c0 0( x0

) c1 1( x0

) ... cm m( x0

) y0

 

( x1

) c1 1( x1

) ... cm m( x1

) y1

c0 0

 

 

 

 

(5.3)

. . . . . . . . . . .

 

( xn

) c1 1( xn ) ... cm m( xn ) yn,

c0 0

Система (5.3) есть система линейных алгебраических уравнений относительно коэффициентов с01,…,сm.

Эта система n линейных уравнений имеет единственное решение, если выполняется условие m=n и определитель квадратной матрицы Р

 

0

(x0 ), 1(x0 ),..., m(x0 )

 

detP

0

(x1 ), 1(x1 ),..., m(x1 )

0.

. . . . . . . .

 

 

 

0

(xn ), 1(xn ),..., m(xn )

 

43

Определение. Система функций 0 (x),..., m(x), линейно независимая в точках х01,…,хn, которые попарно различны и выписанный выше определитель не равен нулю, называется Чебышевской системой функций. Если мы имеем такую систему, то можно утверждать, что существует единственный для данной системы функций интерполяционный многочлен Фm(х), коэффициенты которого определяются единственным образом из системы (5.3).

ПРИМЕР. ПРИ M N СИСТЕМА ФУНКЦИЙ 1,Х,Х2,…,ХM ЛИНЕЙНО НЕЗАВИСИМА В ТОЧКАХ Х01,…,ХN, ЕСЛИ ОНИ ПОПАРНО РАЗЛИЧНЫ.

5.1 Интерполяционный многочлен Лагранжа

Рассмотрим случай, когда узлы интерполирования не равноотстоят друг от друга на отрезке [a,b]. Тогда шаг h = xi+1- x i const. Задача имеет единственное решение, если в качестве интерполирующей функции F(x) взять алгебраический многочлен

Ln(x )=a0+a1 x+a2 x2+…+anxn,

где аi неизвестные постоянные коэффициенты.

Используя условие (5.2) можем записать

L( x0 ) y0,L( x1 ) y1,...,L( xn ) yn.

(5.4)

Запишем это в виде:

 

 

 

 

 

2

 

n

 

 

 

 

a1x0

a12x2

... a1n xn

y0

 

a0

 

a0

a1x0

a12x22

... a1n xnn

y1

(5.5)

 

 

 

 

 

 

 

 

 

 

. . . . . . . . . .

 

 

a

0

a x

0

a

x2

... a

xn

y

n

.

 

1

12

2

1n

n

 

 

Эта система однозначно разрешима, так как система функций 1,х,х2,…,хn линейно независима в точках х01,…,хn. Однозначная разрешимость следует из того факта, что определитель этой системы (определитель Вандермонда)

1

x0

x02

...

x0n

 

 

 

1

x

 

x2

...

xn

 

(xi

xj ) 0.

 

 

1

1

...

1

... ... ...

...

 

0 j,i n

 

1

xn

xn2

...

xnn

 

 

 

44

Без вывода приведем одну из форм записи интерполяционного многочлена Лагранжа

L

( x) y

 

 

( x x1

)...( x xn )

 

y

 

( x x0

)( x x2

)...( x xn

)

...

 

 

 

)...( x

 

x

 

)

(x

x

 

)( x

x

 

)...( x x

 

 

n

 

 

 

 

0

 

(x

0

x

0

n

1

 

0

2

n

)

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

1

 

1

 

1

 

 

(5.6)

 

 

 

 

( x x0

)...(x xn 1 )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

... y

n

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

( xn

x0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

)...(xn xn 1 )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Определение. Этот многочлен называется интерполяционным многочленом Лагранжа и сокращенно записывается в виде

n

(x x0 )(x x1 )...(x xi 1 )(x xi 1 )...(x xn )

 

 

Ln (x) = yi

.

(5.7)

 

i o

(xi x0 )(xi x1 )...(xi xi 1 )(xi xi 1 )...(xi xn )

 

5.1.1 Оценка погрешности интерполяционного многочлена

Оценить погрешность интерполяционной формулы Лагранжа можно только тогда, когда известно аналитическое выражение интерполируемой функции, а точнее, если известно максимальное значение (n+1)-ой производной функции f(x) на отрезке [a,b]. Пусть

|Rn (x)| =| f(x) - Ln (x)|,

где Rn (x) –погрешность;

f(x)- точное значение функции в точке х;

Ln (x)- приближенное значение, полученное по полиному Лагранжа.

Если обозначить через M

n 1

=

max

f (n 1) (x)

, где

x [a,b], причем х =а, х

 

 

 

 

 

 

 

[a,b]

 

 

 

0

n = b, то

 

 

 

 

 

Mn 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

max

 

R (x)

 

 

 

 

 

 

(x x )(x x )....(x x )

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

(n 1)!

 

0

1

n

 

[a,b]

 

 

 

 

 

 

 

 

 

 

 

Рассмотрим теперь случай с равноотстоящими узлами. Тогда интерполяционная формула Лагранжа заметно упрощается. В этом случае шаг h=xi+1-xi=const. Введем в рассмотрение многочлен вида

45

 

(x x0 )(x x1 )...(x xi 1 )...(x xn )

Qi(x)=

 

 

 

 

 

 

.

(x x

)(x x )...(x

x

)...(x

x )

 

i

0

 

i

1

i

i 1

i

n

 

 

x x

 

 

 

 

 

 

Введем обозначение q=

 

0

, отсюда следует, что

 

 

h

 

 

 

x x0= q h ,

x x1= q h h h (q 1) ,

. . . . . . . . . . .

x xi = q h i h h (q i), x xn= q h n h h (q n).

Тогда многочлен Qi примет вид

 

 

Qi(x)=

y q(q 1) [q (i 1)] [q (i 1)]...(q n) hn .

 

 

 

i

i h(i 1) h...h( h)...[ (n i) h]

 

 

 

 

 

 

 

 

 

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

 

 

 

 

q (q 1)...(q n) ( 1)n i

= ( 1)n i

Ci

q(q 1)...(q n)

 

Q i

(q)=

 

 

 

n

 

 

 

 

,

(q i) i!(n i)!

 

n!

 

 

 

 

 

q i

 

где Cni

 

n!

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i!(n i )!

 

 

 

 

 

 

 

 

 

 

Тогда интерполяционный многочлен Лагранжа для равноотстоящих узлов имеет вид:

 

 

q(q 1)...(q n)

n

Ci

L n

(x)=

 

 

( 1)n i

n

yi .

n!

 

 

 

i 0

q i

На практике часто пользуются линейной и квадратичной интерполяцией. В этом случае формула Лагранжа имеет вид

L1(x)=

y

(x x0 )

y

 

(x x0 )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0 (x

x )

1(x

x

 

) - при линейной интерполяции;

 

 

 

 

0

1

 

 

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L2(x)=

y

(x x1)(x x2 )

 

y

 

 

(x x0 )(x x2 )

 

y

(x x0 )(x x1)

 

 

 

 

 

 

0 (x

x )(x

x

)

1(x

x

)(x

x )

2

(x

x

)(x

x )-

 

 

0

1

 

0

2

 

 

 

1

0

1

2

 

 

2

0

2

1

 

при квадратичной интерполяции.

46

5.2 Интерполяционные полиномы Ньютона

5.2.1 Интерполяционный многочлен Ньютона для равноотстоящих узлов

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

Определение. Конечной разностью перового порядка называется разность между значениями функции в соседних узлах интерполяции. Тогда конечные разности в точках х01,…,хn-1

y0 y1 y0 f( x1 ) f( x0 ) f( x0 ),

y1 y2 y1 f( x2 ) f ( x1 ) f ( x1 ),

. . . . . . .

yn 1 yn yn 1 f ( xn ) f( xn 1 ) f ( xn 1 ).

Конечная разность второго

порядка имеет вид:

2 yi

yi 1 yi ,

. . . . . .

n yi

( n 1 yi ).

Рассмотрим некоторые свойства конечных разностей. Вторая конечная разность в точке хi

2 yi f( xi 1 x) f( xi x) f( xi 1 ) f( xi )

.

f(xi 2 ) 2 f( xi 1 ) f( xi ) yi 2 2 yi 1 yi

Аналогично третья конечная разность

3 yi yi 3 3 yi 2 3 yi 1 yi .

Общее выражение для конечной разности n-го порядка имеет вид

47

n yi yn i C1n yn i 1 Cn2 yn i 2 ... ( 1)mCnm yn i m ...( 1)n yi ,

а вообще, конечная разность порядка m от конечной разности порядка n

m( ny) m ny .

Конечные разности n-го порядка от многочлена степени n - есть величина постоянная, а конечные разности n+1-го порядка равны нулю.

Для вычисления значений функции в начале таблицы требуется построить интерполяционный многочлен степени n такой, что выполнены условия интерполяции

Pn( x0 ) y0 ,...,Pn( xn ) yn .

В силу единственности многочлена степени n, построенного по n+1 значениям функции f(x) многочлен Pn (x), в конечном счете, совпадает с многочленом Лагранжа. Найдем этот многочлен в виде:

Pn(x) a0 a1 (x x0 ) a2(x x0 )(x x1 ) ... an(x x0 )...(x xn 1 ),

где аi(i=0,1,…, n) – неизвестные коэффициенты. Для нахождения а0 положим x x0 . Тогда P(x0 ) a0 , отсюда а00.

Для

вычисления a1 рассмотрим первую конечную разность для

многочлена Pn(x) в точке х.

Pn(x) Pn(x h) Pn(x) a0 a1(x x0 h) ... an(x x0 h) ...(x xn 1 h)

a0 a1(x x0 ) ... an(x x0 )...(x xn 1 ).

Врезультате преобразований получим

Pn( x) h a1 2ha2( x x0 ) ... n han( x x0 )...(x xn 1 ).

Вычислим первую конечную разность многочлена Pn(x) в точке х0

P ( x

0

) a

h, но P

( x

0

) f( x

) f ( x

0

) y

y

0

y

0

,откуда a

y0

.

 

n

1

n

 

1

 

1

 

 

1

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Чтобы определить коэффициент а2, составим конечную разность второго порядка 2Pn( x) Pn( x h) Pn( x). Отсюда после преобразования получим

a2 2y0 . Вычисляя конечные разности более высоких порядков и полагая

2! h2

48

х=х0, придем к общей формуле для определения коэффициентов:ai i y0 i! hi

(i=0,1,2,…,n).

Подставим значения ai в многочлен, в результате получим первую интерполяционную формулу Ньютона:

pn(x) y0 y0 (x x0 ) ... ny0 (x x0 )...(x xn 1). 1!h n!hn

Первую интерполяционную формулу можно записать в том виде, в котором ее удобнее использовать для интерполирования в начале таблицы. Для этого введем переменную q=(x-x0)/h, где h-шаг интерполирования, а q-число шагов. Тогда первая формула примет вид

Pn(x) y0 q y0 q(q 1) 2y0 ... q(q 1)...(q n 1) ny0.

2! n!

5.2.2 Вторая интерполяционная формула Ньютона

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

Pn(x) a0 a1(x xn ) a2(x xn )(x xn 1 ) ... an(x xn )...(x x1 ).

Неизвестные коэффициенты а01,…,аn подберем так, чтобы были выполнены равенства Pn( x0 ) y0 ,Pn( x1 ) y1,...,Pn( xn ) yn . Для этого

необходимо и достаточно, чтобы i Pn (xn i ) iyn i (i=0,1,…,n).

В случае, если положить x xn , то сразу определяется коэффициент

а0

Pn (x) yn a0 .

Из выражения для первой конечной разности найдем a1 :

Pn(x) 1 ha1 2 ha2(x xn 1 ) ... n han(x xn 1)(x xn 2 )...(x x1 ).

49

Отсюда, полагая х=хn-1 получим a1 yn 1 . Из выражения для второй h

конечной разности найдем а2: a2 2 yn 2 . Общая формула для коэффициента аi

2!h2

имеет вид ai i yn i . i!hi

Подставим эти коэффициенты в формулу многочлена и получим вторую интерполяционную формулу Ньютона:

Pn(x) yn yn 1 (x xn ) ... ny0 (x xn )...(x x1 ).

h n!hn

На практике используют формулу Ньютона в другом виде. Положим q=(x-xn)/h. Тогда

Pn(x) yn q yn 1 q(q 1) 2yn 2 ... q(q 1)...(q n 1) ny0. 2! n!

5.3 Интерполирование сплайнами

Многочлен Лагранжа или Ньютона на всем отрезке a,b с использованием большого числа узлов интерполирования часто приводит к плохому приближению, что объясняется накоплением погрешностей в ходе вычислений. Кроме того, из-за расходимости процесса интерполирования увеличение числа узлов не обязано приводить к повышению точности вычислений. В силу вышесказанного на практике весь отрезок a,b разбивается на частичные интервалы и на каждом из них приближающая функция f (x) заменяется многочленом невысокой степени. Такая интерполяция называется кусочно-полиномиальной интерполяцией.

Определение. Сплайн - функцией называют кусочно-полиномиальную функцию, определенную на отрезке a,b и имеющую на этом отрезке некоторое число непрерывных производных.

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

5.3.1 Построение кубического сплайна

50

Соседние файлы в папке DiVM