ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 02.08.2019

Просмотров: 4711

Скачиваний: 6

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

Лекция 5

41

Отсюда

f

0

(x)

− P

0

n

(x) = R

0

n

(x) =

d

dx

"

f

(n+1)

(ξ(x))

(n + 1)!

ω

n+1

(x)

#

=

=

1

(n + 1)!

h

f

(n+2)

(ξ(x))ξ

0

(x)ω

n+1

(x) + f

(n+1)

(ξ(x))ω

0

n+1

(x)

i

.

В записи присутствует производная неизвестной нам функции

ξ(x). Это

мешает оценить

R

0

n

(x). При этом значение R

0

n

(x) может оказаться доста-

точно большим (большим требуемой точности). Таким образом примене-

ние многочлена Лагранжа для численного нахождения производных в об-

щем случае неприменимо.

1.5.5

Метод неопределённых коэффициентов.

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

k-то порядка в некоторой точке

x = x

i

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

функции в узлах

x

0

, x

1

, . . . , x

n

:

y

(k)

(x

i

)

≈ c

0

y

0

+ c

1

y

1

+ . . . + c

n

y

n

.

(5.1)

Предполагается, что это соотношение выполняется точно, если функция

y является многочленом степени не выше n, т. е. может быть представлена

в виде

y = b

0

+ b

1

(x

− x

0

) + . . . + b

n

(x

− x

0

)

n

.

Отсюда следует, что соотношение (5.1), в частности, должно выполняться

точно для многочленов

y = 1, y = x

− x

0

, . . . , y = (x

− x

0

)

n

. Подставляя

последовательно эти выражения в (5.1) и требуя выполнения точного ра-

венства, получаем систему

n + 1 линейных алгебраических уравнений для

определения неизвестных коэффициентов

c

0

, c

1

, . . . , c

n

.

Пример.

Найти выражение для производной

y

0

1

в случае четырёх рав-

ноотстоящих узлов (

n = 3 и x

i+1

− x

i

= h = const, где i = 1, 2, 3).

Приближение (3.10) запишется в виде

y

0

1

≈ c

0

y

0

+ c

1

y

1

+ c

2

y

2

+ c

3

y

3

.

(5.2)


background image

Лекция 5

42

Используем следующие многочлены:

y = 1,

y = x

− x

0

,

y = (x

− x

0

)

2

,

y = (x

− x

0

)

3

.

(5.3)

Вычислим их производные:

y

0

= 0,

y

0

= 1,

y

0

= 2(x

− x

0

),

y

0

= 3(x

− x

0

)

2

.

(5.4)

Подставляем последовательно соотношения (5.3) и (5.4) соответственно

в правую и левую части (5.2), при

x = x

1

требуя выполнения точного

равенства:

0 = c

0

· 1 + c

1

· 1 + c

2

· 1 + c

3

· 1,

1 = c

0

(x

0

− x

0

) + c

1

(x

1

− x

0

)1 + c

2

(x

2

− x

0

)1 + c

3

(x

3

− x

0

),

2(x

1

− x

0

) = c

0

(x

0

− x

0

)

2

+ c

1

(x

1

− x

0

)

2

1 + c

2

(x

2

− x

0

)

2

1 + c

3

(x

3

− x

0

)

2

,

3(x

1

− x

0

)

2

= c

0

(x

0

− x

0

)

3

+ c

1

(x

1

− x

0

)

3

1 + c

2

(x

2

− x

0

)

3

1 + c

3

(x

3

− x

0

)

3

.

Получаем окончательно систему уравнений в виде

c

0

+ c

1

+ c

2

+ c

3

= 0,

hc

1

+ 2hc

2

+ 3hc

3

= 1,

hc

1

+ 4hc

2

+ 9hc

3

= 2,

hc

1

+ 8hc

2

+ 27hc

3

= 3.

Решая эту систему, получаем

c

0

=

1

3h

,

c

1

=

1

2h

,

c

2

=

1

h

,

c

3

=

1

6h

.

Подставляя эти значения в (5.2), находим выражение для производной:

y

0

1

1

6h

(

−2y

0

− 3y

1

+ 6y

2

− y

3

).

1.5.6

Разложение в ряд Тейлора.

Будем считать, что в таблице используется равномерный шаг:

x

i

− x

i

−1

=

h = const, где i = 1, 2, . . . , n. Разложим f (x

i

−1

) в ряд Тейлора в окрестно-

сти точки

x

i

:

f (x

i

−1

) = f (x

i

) + (x

i

−1

− x

i

)f

0

(x

i

) +

(x

i

−1

− x

i

)

2

2!

f

00

(ξ), где x

i

−1

6

ξ

6

x

i

.


background image

Лекция 5

43

Для краткости заменим

f (x

i

)

→ f

i

и

x

i

− x

i

−1

→ h:

f

i

−1

= f

i

− hf

0

i

+ h

2

f

00

(ξ)/2.

Откуда

f

0

i

=

f

i

−f

i

−1

h

+ h

f

00

(ξ)

2

. Приближённо можно положить

f

0

i

f

i

−f

i

−1

h

.

Ясно, что ошибка при этом будет не более, чем

hM

2

/2 = O(h), где M

2

=

max

[x

i

−1

,x

i

]

|f

00

(x)

|. Полученную формулу для f

0

i

принято называть левой раз-

ностью.

Аналогично получается правая разность:

f

0

i

f

i+1

−f

i

h

+ O(h).

Разложим теперь

f

i

−1

и

f

i+1

до

h

3

:

f

i

−1

= f

i

− hf

0

i

+ h

2

f

00

(x)

2!

− h

3

f

000

)

3!

, x

i

−1

6

ξ

6

x

i

,

f

i+1

= f

i

+ hf

0

i

+ h

2

f

00

(x)

2!

+ h

3

f

000

+

)

3!

, x

i

6

ξ

+

6

x

i+1

.

Найдём разность последних двух равенств и выделим

f

0

i

:

f

0

i

=

f

i+1

− f

i

−1

2h

+ h

2

f

000

) + f

000

+

)

6

.

Приближённое равенство

f

0

i

f

i+1

−f

i

−1

2h

называют центральной разностью.

Погрешность при этом равна

f

0

i

f

i+1

−f

i

−1

2h

= h

2 f

000

)+f

000

+

)

6

= h

2 f

000

(η)

3

=

O(h

2

)

1

где

η

∈ [x

i

−1

, x

i+1

].

Чтобы получить формулу для

f

00

i

, разложим

f

i

−1

и

f

i+1

до

h

4

f

i

−1

= f

i

− hf

0

i

+ h

2

f

00

(x)

2!

− h

3

f

000

(x)

3!

+ h

4

f

IV

)

4!

, x

i

−1

6

ζ

6

x

i

,

f

i+1

= f

i

+ hf

0

i

+ h

2

f

00

(x)

2!

+ h

3

f

000

(x)

3!

+ h

4

f

IV

+

)

4!

, x

i

6

ζ

+

6

x

i+1

.

Если сложить разложения

f

i

−1

и

f

i+1

и затем выразить

f

00

(x), получим

f

00

i

=

f

i+1

− 2f

i

+ f

i

−1

h

2

− h

2

f

IV

) + f

IV

+

)

24

.

Погрешность

f

00

i

f

i+1

−2f

i

+f

i

−1

h

2

=

−h

2 f

IV

)+f

IV

+

)

24

=

−h

2 f

IV

(τ )

12

= O(h

2

), где

τ

∈ [x

i

−1

, x

i+1

], имеет порядок 2.

1

Мы предполагаем, что

f

000

(x) непрерывна на [x

i−1

, x

i+1

]. Пусть для определённости

f

000

) 6 f

000

+

). Тогда f

000

) 6

f

000

)+f

000

+

)

2

6 f

000

+

). С силу непрерывности f

000

(x)

найдётся точка

η

∈ [x

i−1

, x

i+1

] такая, что f

000

(η) =

f

000

)+f

000

+

)

2


background image

Лекция 5

44

Замечание. Погрешность

O(h) говорит о том, что ошибка убывает

пропорционально шагу

h. Погрешность O(h

2

) говорит о том, что ошиб-

ка убывает пропорционально квадрату шага

h. Например,

Шаг Формула с погрешн.

O(h) Формула с погрешн. O(h

2

)

h

погрешность

ε

погрешность

ε

h/2

погрешность

ε/2

погрешность

ε/4

h/4

погрешность

ε/4

погрешность

ε/16

Про погрешность

O(h

p

) говорят, что она имеет порядок p.

1.5.7

Неустойчивость формул численного дифференцирования

Рассмотрим влияние погрешности входных данных на результат вычис-

ления производных по формулам ЧД. Пусть в точках

x

i

,

i = 0, 1, . . . , n

заданы значения функции

˜

y

i

, которые отличаются от точных значений

y

i

= y(x

i

), т.е. ˜

y

i

= y

i

± δ

i

, где

δ

i

— погрешность входных данных. Ве-

личина

δ = max

i

δ

i

обычно бывает известна. Пусть в точке

x = x

i

нужно

приближённо вычислить

y

0

(x).

y

0

(x

i

)

˜

y

i+1

− ˜y

i

h

.

Погрешность формулы

∆ =

y

0

˜

y

i+1

− ˜y

i

h

=

y

0

y

i+1

− y

i

h

+

y

i+1

− y

i

h

˜

y

i+1

− ˜y

i

h

6

6

y

0

y

i+1

− y

i

h

+

y

i+1

− ˜y

i+1

h

+

y

i

− ˜y

i

h

6

M

2

2

h +

δ

h

+

δ

h

= Φ(h),

где

M

2

= max

[x

i

,x

i+1

]

|y

00

(x)

|. Здесь

M

2

2

h — методическая ошибка,

h

— неустра-

нимая погрешность. Наша цель — минимизировать ошибку, т.е.

Φ(h). Для

этого нельзя неограниченно уменьшать шаг

h, т.к. Φ(h) в какой-то момент

начинает расти. Найдём оптимальное значение

h

.

h

opt

:

Φ

0

(x) =

M

2

2


h

2

= 0

h

opt

= 2

q

δ/M

2

Φ(h

opt

) =

M

2

2

· 2

q

δ/M

2

+ 2δ

·

1
2

q

M

2

/δ = 2

p

M

2

δ.


background image

Лекция 5

45

Пример.

M

2

∼ 1, δ ∼ 0, 01

∼ 0, 1.

1.5.8

Метод Рунге.

Как видно из конечно-разностных соотношений для аппроксимаций про-

изводных, порядок их точности возрастает с увеличением числа узлов,

используемых при аппроксимации. Однако при большом числе узлов эти

соотношения становятся весьма громоздкими, что приводит к существен-

ному возрастанию объёма вычислений. Усложняется также оценка точ-

ности получаемых результатов. Вместе с тем существует простой и эф-

фективный способ уточнения решения при фиксированном числе узлов,

используемых в аппроксимирующих конечно-разностных соотношениях.

Это метод Рунге.

Пусть

F (x) — производная, которая подлежит аппроксимации; f (x, h) —

конечно-разностная аппроксимация этой производной на равномерной сет-

ке с шагом

h; R — погрешность (остаточный член) аппроксимации, глав-

ный член которой можно записать в виде

h

p

ϕ(x), т. е.

R = h

p

ϕ(x) + O(h

p+1

).

(Для левой разности, например,

R = O(h) = h

1

· ϕ(x) + O(h

2

). Вспомним,

что при

h

→ 0 справедливо O(h) + O(h

2

) = O(h).)

Тогда выражение для аппроксимации производной в общем случае мож-

но представить в виде

F (x) = f (x, h) + h

p

ϕ(x) + O(h

p+1

).

(5.5)

(Для левой разности, например,

F (x) =

f

i

−f

i

−1

h

+ h

1

· ϕ(x) + O(h

2

).)

Запишем это соотношение в той же точке

x при другом шаге h

1

= kh.

Получим

F (x) = f (x, kh) + (kh)

p

ϕ(x) + O((kh)

p+1

).

(5.6)

Приравнивая правые части равенств (5.5) и (5.6), находим выражение для

главного члена погрешности аппроксимации производной:

h

p

ϕ(x) =

f (x, h)

− f(x, kh)

k

p

− 1

+ O(h

p+1

).