Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методическое пособие 126.pdf
Скачиваний:
12
Добавлен:
30.04.2022
Размер:
424.29 Кб
Скачать

3. ИНТЕРПОЛИРОВАНИЕ ФУНКЦИЙ

3.1. Интерполяционная формула Лагранжа

Пусть функция y = f (x) определена таблицей

 

xi

x0

x1

……….

 

xn

 

 

yi

y0

y1

……….

 

yn

 

Значения аргументов

{xi } (i = 0, 1,...., n)

будем называть

узлами интерполяции.

Задачей интерполяции является построение многочлена L(x) , значения которого в узлах интерполяции xi равны

соответствующим значениям заданной функции, т.е.

L(xi ) = yi (i = 0, 1,...., n) .

29

 

Интерполяционной

формулой

Лагранжа называется

формула, представляющая многочлен L(x) в виде

 

 

 

 

 

n

 

 

 

 

 

 

 

L(x) =

yi pi

(x),

 

(3.1)

 

 

 

 

 

i=0

 

 

 

 

где

pi (x)

- многочлен степени n,

принимающий значение,

равное единице

в узле

xi

и нулю

в

остальных узлах

xk

(k i)

(i, k = 0, 1,...., n) , и имеющий вид

 

 

 

pi (x) =

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

+1)...(x xn )

 

 

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

 

 

 

Многочлен

L(x)

называют

интерполяционным

многочленом Лагранжа. Заметим, что степень многочлена Лагранжа не превышает числа n.

Пример 1. Пользуясь интерполяционной формулой Лагранжа, составить уравнение прямой, проходящей через

точки P0 (x0 , y0 ) и P1(x1, y1) , если

x0 = −1, y0 = −3, x1 = 2, y1 = 4 .

Решение. В данном случае многочлен Лагранжа примет вид

L(x) = y

 

x x1

+ y

x x0

= −3

x 2

+ 4

x +1

= 7 x 2 .

 

 

 

 

 

 

0 x

0

x

1 x x

0

 

12

2 +1

3

3

 

 

 

1

 

1

 

 

 

 

 

 

 

Уравнение искомой прямой есть y = 7 x

2 .

 

 

 

 

 

 

 

 

y = f (x)

 

 

3

3

 

 

[x0 , xn ].

Пусть функция

определена на отрезке

Возьмем на этом отрезке множество точек {xi } (i = 0, 1,...., n)

и выберем их в качестве узлов интерполяции. Построив многочлен Лагранжа L(x) для системы узлов {xi }, положим

30

f (x) L(x) x [x0 , xn ].

При этом в узлах интерполяции имеем

f (xi ) = L(xi ) (i = 0, 1,...., n).

Если функция f (x) на отрезке [x0 , xn ] имеет непрерывные

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

 

 

 

 

 

 

f (x) L(x)

 

 

 

M n+1

 

 

Пn+1(x)

 

,

 

(3.2)

 

 

 

 

 

 

 

 

 

 

где

 

 

 

 

 

 

(n +1)!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

M

n+1

=

max

 

f (n+1)

(x)

 

, П

n+1

(x) = (x x

0

)(x x )...(x x

n

).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

x0xxn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пример 2. Построить многочлен Лагранжа второй степени,

аппроксимирующий

функцию

 

y = sin x

на

отрезке

 

π

,

 

0,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

если заданы значения функции в трех узлах интерполяции:

 

x

x0

= 0

x1 =π / 6 = 0,523598

x2 =π / 4 = 0,7853982

 

 

y = sin x

y0 = 0

y1 = 0,5

 

y2 = 0,7071068

 

 

С помощью интерполяционной формулы вычислить

приближенное

значение sin

π

и

оценить погрешность

 

 

 

 

 

12

 

 

 

результата вычислений.

Решение. Многочлен Лагранжа для трех узлов интерполяции запишется так:

31

L(x) = y

 

(x x1)(x x2 )

 

+ y

(x x0 )(x x2 )

 

+

 

 

)

 

)

 

0 (x

0

x

)(x

0

x

2

1 (x

x

0

)(x

x

2

 

 

 

 

1

 

 

 

 

1

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+ y2

(x x0 )(x x1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(x

2

x

0

)(x

2

 

x )

 

 

 

 

 

 

 

 

 

 

или

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

π

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

π

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x(x

 

 

 

 

 

 

 

 

 

 

 

 

 

x(x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L(x) = 0,5

 

 

4 )

 

+

0,707

 

 

6 )

 

 

= −2,064

x2

+ 3,344

x

.

 

 

π

 

π

 

 

 

π

 

π

 

 

 

 

π

 

 

π

 

 

π 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

π

 

 

 

 

 

 

 

 

 

6

 

( 6

 

4 )

 

 

 

 

 

 

 

 

 

 

4

(

4

 

 

6 )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

При x =

 

 

π

 

= 0,2617994 получим L(

π

)

= 0,264298.

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

С помощью неравенства (3.2) находим оценку

погрешности. Имеем

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

M 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

sin(

π

)

L(

π

)

 

 

 

 

П3 (

π

)

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

12

 

 

 

 

 

 

 

3!

 

 

12

 

 

 

 

 

 

 

 

 

где

 

 

П

3

(x)

= (x x

0

)(x x

)(x x

2

) = x(x π )(x π )

 

и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

4

 

 

 

 

π

 

 

π

 

 

 

 

 

 

π

)(π ) = 2(

π

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

П3

(

) =

 

 

 

 

(

 

)3.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

6

 

 

 

 

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Так как

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x) =sin x,

 

f '(x) = cos x,

 

f "(x) = −sin x, f '''(x) = −cos x ,

то

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

M 3 = max

 

 

f '''(x)

 

= max

 

cos x

 

=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0xπ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0x

π

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и, следовательно,

32

sin(12π ) L(12π ) 13 (12π )3 0,006.

Итак, sin 12π 0,264 ± 0,006. Заметим, что это значение с

шестью верными цифрами есть sin

π

= 0,258819 .

 

 

 

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

Замечание. В процессе решения задачи 1 могут

возникнуть

трудности

при

оценке

величины

M 3 = max

 

f '''(x)

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0x

π

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

Проведем эту оценку в задаче 1а, где f (x) = cos x2 .

 

Строгое

вычисление величины

max

 

f '''(x)

 

требует

 

 

 

 

 

 

 

 

 

 

 

0xπ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

f '''(x) на

 

нахождение

точек экстремума функции

 

отрезке

 

π

 

 

 

 

 

 

 

 

 

 

 

 

0,

, вычисления значений функции в точках экстремума и

 

4

 

 

 

 

 

 

 

 

 

 

 

 

на концах отрезка и, наконец, выбор необходимого значения

M 3 .

Для этого вычислим производные функции f (x) вплоть до четвертого порядка:

f '(x) = −2x sin x2 , f "(x) = −2(sin x2 + 2x2 cos x2 ), f '''(x) = = −4x(3cos x2 2x2 sin x2 ),

f (4) (x) = −4(3cos x2 4x4 cos x2 12x2 sin x2 ) .

33