Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
38
Добавлен:
08.01.2014
Размер:
149.63 Кб
Скачать

1

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

Для заданных на отрезке значениях независимой переменной xi и соответствующих им значениях зависимой переменной yi, (i=0,1,2,…,n), определить аналитическую зависимость y = f (x) .

Основные этапы при приближении функции.

Выбор вида зависимости

Выбор критерия

Выбор узловых точек

Оценка точности

Метод интерполяции многочленом Лагранжа

Пусть в n+1 узловой точке x0, x1, x2, …, xn определены значения y0, y1, y2, …, yn. Требуется построить многочлен L(x) степени не выше n, который принимает в узловых точках заданные значения, т.е. L(x0)=y0, L(x1)=y1, L(x2)=y2, …, L(xn)=yn. Рассмотрим многочлен вида:

li(x)=ci(x–x0)(x–x1)….. (x–xi–1)(x–xi+1)……. (x–xn–1)(x–xn), (1)

где i = 0,1,2,3,…….,n, который только в точке xi принимает значение yi , а в остальных равен нулю.

yi приi = j

j = 0,1,2,...,n,

li (x j) =

приi j

0

 

из этого условия можно определить ci:

li(xi)=ci(xi–x0)(xi–x1)….. (xi–xi–1)(xi–xi+1)……. (xi–xn–1)(xi–xn) = yi

 

 

 

сi

=

 

 

 

 

 

 

 

 

 

 

yi

 

 

 

 

 

 

 

 

 

 

 

 

(xi x0 )(xi

x1)...(xi

xi1)(xi xi+1)...(xi xn1)(xi xn )

 

 

 

 

 

 

и тогда многочлен (1) примет вид:

 

 

 

 

 

 

 

 

 

 

 

 

 

li (x) = yi

 

(x x0 )(x x1)...(x xi1)(x xi+1)...(x xn1)(x xn )

 

 

(2)

(x

i

x

0

)(x

i

x )...(x

i

x

i1

)(x

i

x

i+1

)...(x

i

x

n1

)(x

i

x

n

)

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

Многочлен, который в n+1 узловой точке будет принимать заданные значения, можно представить как сумму многочленов вида (2).

n

L(x) = li (x)

i=0

2

n

(x x0 )(x x1)...(x xi1)(x

xi+1)...(x xn1)(x xn )

 

 

L(x) = yi

 

 

 

(x

i

x

0

)(x

i

x )...(x

i

x

i1

)(x

i

x

i+1

)...(x

i

x

n1

)(x

i

x

n

)

i=0

 

 

1

 

 

 

 

 

 

 

 

Пример. Функция y=f(x) определена таблицей

i

0

1

2

3

xi

0.500

1.100

1.700

2.300

yi

–0.7780

0.2108

–0.0244

–0.1876

Определить интерполяционный многочлен L(x) по четырём узловым точкам.

 

l0

(x) =

(x x1) (x x2 ) (x x3)

y0 =

 

(x0 x1) (x0 x2 ) (x0 x3)

 

 

 

 

 

=

 

 

(x 1.1) (x 1.7) (x 2.3)

(0.778) =

 

(0.5 1.1) (0.5 1.7) (0.5 2.3)

 

 

 

 

=0.6003x3 3.0616x2 + 4.9886x 2.5819

 

 

l (x) =

 

(x x0 ) (x x2 ) (x x3)

 

 

y =

 

 

 

 

 

 

 

1

 

(x1 x0 ) (x1 x2 ) (x1

x3)

1

 

 

 

 

 

 

 

 

 

=

 

 

(x 0.5) (x 1.7) (x 2.3)

 

 

0.2108 =

 

 

 

(1.10.5) (1.11.7) (1.12.3)

 

 

 

 

 

 

 

 

 

 

 

=0.4880x3 2.1958x2 + 2.8839x 0.9540

 

 

l2

(x) =

 

(x x0 ) (x x1) (x x3)

y2 =

 

(x2 x0 ) (x2 x1) (x2 x3)

 

 

 

 

 

 

 

=

 

 

 

 

(x 0.5) (x 1.1) (x 2.3)

 

 

(0.0244) =

 

(1.7 0.5) (1.7 1.1) (1.7 2.3)

 

 

 

 

 

 

 

 

 

=0.0565x3 0.2203x2 +0.2389x 0.0714

 

 

l3

(x) =

 

(x x0 ) (x x1) (x x2 )

 

y3 =

 

 

(x3 x0 ) (x3 x1) (x3 x2 )

 

 

 

 

 

 

 

 

=

 

 

(x 0.5) (x 1.1) (x 1.7)

 

(0.1876) =

 

 

(2.3 0.5) (2.3 1.1) (2.3 1.7)

 

 

 

 

 

 

 

 

 

 

= −0.1448x3 +0.4777x2 0.4733x +0.1354

3

3

L(x) = li (x) =1.0000x3 5.0000x2 +7.6381x 3.4719

i=0

Аппроксимация.

Метод наименьших квадратов

Пусть данные некоторого эксперимента представлены в виде таблицы значений независимой переменной x и зависимой переменной y:

i

xi

yi

0

x0

y0

1

x1

y1

2

x2

y2

M

M

M

n

xn

yn

Требуется отыскать аналитическую зависимость f(x,a0,a1,…,am), являющуюся функцией одной независимой переменной x и параметров a0,a1,a2,…,am, которая наилучшим образом описывала бы эти экспериментальные данные в смысле минимума квадратичного критерия рассогласования R(a0,a1,…,am):

R= n [yi f (xi ,a0 ,a1,L,am )]2

i=0

Функцию f(x,a0,a1,…,am)) определим как полином степени m вида:

m

+a1x +a2x2 +L+amxm

f (x, a ) = a j x j =a0

j=0

 

Надо найти такие значения параметров, при которых квадратичный критерий рассогласования имел бы минимальное значение

R= n [yi (a0 +a1xi +a2xi2 L+amxim )]2 min

i=0

Вывод формулы для определения параметров в матричном виде рассмотрим на примере полинома второй степени (m=2).

_

f (x,a) = a0 +a1x +a2x2

Для заданных значений x0,x1,…,xn критерий R будет являться функцией трёх переменных a0,a1,a2 :

4

R= R(a0,a1,a2 ) = n [yi (a0 +a1xi +a2xi2 )]2

i=0

Необходимые условия минимума критерия R имеют вид:

R = 2 n [yi (a0 +a1xi +a2xi2 )](1) = 0

a0

i=0

R = 2 n [yi (a0 +a1xi +a2xi2 )](xi ) = 0

a1

i=0

R

= 2 n [yi (a0 +a1xi +a2xi2 )](xi2 ) = 0

 

a2

i=0

 

или

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

n

 

 

 

n

 

n

 

1

a0

+

xi a1

+

 

xi2

a2

= yi

 

i=0

 

i=0

 

 

i=0

 

i=0

 

n

 

 

n

 

 

 

n

 

n

xi a0

+

xi2

a1

+

 

xi3

a2

= yixi

i=0

 

i=0

 

 

i=0

 

i=0

 

n

 

 

n

 

 

 

n

 

n

xi2

a0

+

xi3

a1

+

 

xi4

a2

= yixi2

i=0

 

i=0

 

 

i=0

 

i=0

Полученную линейную относительно искомых параметров a0,a1,a2, систему

= → →

уравнений запишем в матричном виде: N a = b

 

 

n

n

 

n

 

 

 

 

 

 

 

 

 

 

n

 

 

 

1

xi

xi2

 

 

 

a

 

 

 

 

 

yi

 

 

 

i=0

i=0

 

i=0

 

 

 

 

0

 

 

i=0

 

=

 

n

n

2

n

3

=

 

 

 

=

 

n

 

N =

 

xi

xi

xi

 

a

a1

 

b

 

yixi

 

 

i=0

i=0

 

i=0

 

 

 

 

a

2

 

 

 

i=0

 

 

 

n

n

 

n

 

 

 

 

 

 

 

 

 

n

 

 

xi2

xi3

xi4

 

 

 

 

 

 

 

yixi2

 

i=0

i=0

 

i=0

 

 

 

 

 

 

 

 

 

i=0

 

=

Для удобства формирования матрицы коэффициентов N и столбца свободных

=

членов b введем матрицу Фэлементы которой определяются через значения независимой переменной xi, i=0,1,2,…,n

 

 

x0

2

 

1

x0

 

= 1

x

x2

Ф =

 

 

1

1

 

 

 

 

 

 

 

x

 

x2

 

1

n

 

 

 

 

n

 

5

тогда

= = T = 1 1

 

1

1

x

 

x2

 

1 1

 

1

y0

 

 

 

 

0

02

 

→ = T

 

 

 

N =Ф

Ф = x

0

x

 

x

n

 

1 x1

x1

 

b =Ф y

= x

0

x

 

x

n

 

y1

 

 

 

1

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

2

2

 

 

2

 

 

 

2

2

 

 

2

 

 

x

0

x1

xn

 

 

x

 

x2

 

 

x

0

x1

xn

 

 

 

 

 

 

 

 

 

 

 

1

n

 

 

 

 

 

 

 

 

 

yn

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

=

При аппроксимации полиномами высших порядков матрица Фбудет иметь вид

 

1

x0

x02 L x0m

 

 

=

1

x1

2

m

гдеэлемент φ

= x j, i =0,1,2,...,n, j =0,1,2,...,m

Ф =

x1 L

x1

L

L LL L

ij

i

 

1

x

 

 

 

 

 

 

n

x2 L xm

 

 

 

 

 

n

n

 

 

=

В общем случае количество строк в матрицы Ф равно количеству точек, а количество столбцов равно количеству параметров, где строка состоит из значений

частных производных от функции f (x, a ) по соответствующему параметру.

Пример. Определить параметры зависимости вида: y = a0 +a1 x

используя метод наименьших квадратов, по следующим экспериментальным данным:

i

0

1

2

3

xi

-1

0

1

2

yi

2

1

2

4

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

 

=

1

0

 

=

T

 

 

1 1 1

1

 

=

1

1 1 1

1

0

 

4

2

Ф =

1

 

Ф

=

 

 

 

N =

 

 

 

1

 

=

 

 

1

 

 

 

 

 

1 0 1

2

 

 

1

0 1 2

1

 

2

6

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1 1

1

1

9

 

4a

0

2a1

=

9

_

1.9

 

 

b

=

 

 

 

 

 

 

=

 

 

 

6a1

=

8

a

=

 

 

 

 

1

0 1 2

 

2

 

8

 

2a0

 

0.7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y =1.9 +0.7 x

 

R = 2.3

 

 

 

 

 

6

Пример. Определить параметры зависимости вида: y = a0 +a1 x2

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

1 1 1

1

 

 

 

 

1

1 1 1

 

 

 

4

6

=

1

0

 

=

T

 

=

 

=

1

0

Ф =

 

 

 

Ф

=

 

 

 

 

N

 

 

 

 

 

=

 

 

 

 

 

 

 

 

 

1 0 1

4

 

 

 

 

1

0 1 4

 

1

 

6

18

 

1 1

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

1

1

 

 

9

 

4a

 

6a

 

 

=

9

 

 

 

1.67

 

1

 

0

1

 

 

_

b =

 

 

 

 

 

 

=

 

 

 

 

 

 

 

a =

 

0

 

1

 

 

18a

 

=

20

 

 

 

1

 

4

2

20

6a

0

1

 

 

 

0.72

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y =1.67 + 0.72 x 2

 

R =0.06

 

 

 

 

 

Соседние файлы в папке Вычислительная Математика