
Шпоры по вычмату / 008
.doc4.1. Вычисление производных.
Постановка задачи:
дана непрерывная
или дискретная функция
и требуется вычислить производную
в произвольной точке
.
Далее для значения производной будем
использовать штрих < ' >.
В обоих случаях для вычисления производной применяют интерполяцию полиномами или сплайнами. Если исходные точки дискретной функции имеют погрешность, то вместо интерполяции нужно использовать аппроксимацию. В этом же случае можно применять и интерполяцию, но ей должно предшествовать сглаживание.
Наиболее широкое
применение имеют формулы численного
дифференцирования, полученные с
применением локальной интерполяции
полиномом. Полином степени
строится для текущей точки
и учитывает несколько соседних точек
непрерывной или дискретной функции.
Пусть имеем постоянный
шаг
дискретизации функции вблизи точки
дифференцирования
и значения функции
,
,
в точках
,
,
соответственно. Для этих трех точек
можно выполнить линейную и параболическую
интерполяцию известными методами:
,
,
.
Дифференцируя эти
две прямых или параболу в точке
,
получаем три известных формулы для
вычисления
:
|
(4.1) |
|
(4.2) |
|
(4.3) |
Формула (4.1) называется левой, т.к. использует соседнюю точку слева, формула (4.2) называется правой, формула (4.3) - симметричной, т.к. парабола учитывает левую и правую соседние точки.
Эти же формулы можно
получить через конечные разности
и
,
которые используются в строгом определении
производной как
.
Очевидно, что в формулах (4.1-4.3) используются
конечные разности
и
,
а
опущен. Отметим, что (4.3) можно рассматривать
как среднее значение для двух первых
формул, т.е. она точнее.
Дифференцируя ту же
параболу, что и при выводе (4.3), нетрудно
получить известную формулу для второй
производной в точке
:
|
(4.4) |
Эта же формула получится, если использовать при выводе разность левой и правой производных первого порядка.
Формулы (4.1-4.4) получены с применением линейной или параболической интерполяции. Но можно применить полиномы более высоких степеней, которые учитывают больше соседних точек, а также кубический сплайн. В случае сплайна производные вычисляются через коэффициенты (2.2) для заданных точек или дифференцированием (2.1) для точек между узлами интерполяции, но это требует значительного количества операций по сравнению с простыми формулами (4.1-4.4).
При вычислениях по (4.1-4.4) нужно знать, как выбирать шаг дискретизации h для непрерывной или дискретной функции. Если на отрезке интерполяции исходная функция и полученная в результате интерполяции не совпадают, то производные будут иметь погрешность. Очевидно, что эта погрешность возрастает при увеличении шага дискретизации.
4.2. Погрешности численного дифференцирования.
При численном дифференцирования возникают следующие погрешности:
1) погрешность метода,
2) погрешности исходных данных,
3) погрешности округления при вычислениях на компьютере.
Основными являются первые две, т.к. последняя проявляется только при очень малых шагах, редко используемых в практических задачах. Оценим все три погрешности.
4.2.1. Погрешность метода.
Погрешность метода
получим из ряда Тейлора для непрерывной
функции ,
дискретизация которой дает массив
значений
,
где
- номера точек дискретизации,
- шаг дискретизации,
|
(4.5) |
В
качестве примера рассмотрим (4.2), т.е.
,
но аналогичным образом можно оценить
погрешность любой формулы численного
дифференцирования. Подставим (4.5) в (4.2)
с учетом равенств
,
и получим:
|
(4.6) |
Следовательно, значение
,
полученное при численном дифференцировании
по (4.2) отличается от точного значения
и погрешность может быть оценена
величиной второго слагаемого в (4.6), т.к.
при малых шагах влиянием остальных
слагаемых можно пренебречь. Получаем,
что погрешность формулы (4.2) составляет:
|
(4.7) |
Можно
показать, что при использовании полинома
степени
при выводе формулы численного
дифференцирования получим оценку,
аналогичную (4.7), но с производной порядка
при вычислении
|
(4.8) |
Из
сравнения формулы (4.7), полученной для
,
и (4.8) следует, что в случае малых шагов
при увеличении степени
,
т.е. усложнении формулы численного
дифференцирования, погрешность
уменьшается.