Численное дифференцирование
При решении многих практических задач возникает необходимость получить значения производных различных порядков функции f, заданной в виде таблицы или сложного аналитического выражения. В этих случаях применить непосредственно методы дифференцированного исчисления либо невозможно, либо затруднительно. Тогда используют приближенные методы численного дифференцирования.
Простейшие выражения для производных получаются в результате дифференцирования интерполяционных форм.
Итак, рассмотрим следующую задачу. На сетке
в узлах
заданы значения
функции f, непрерывно дифференцируемой n+1+m раз. Требуется вычислить производную
и оценить погрешность.
Один из возможных способов решения этой задачи заключается в следующем. Построим для функции f по узлам
интерполяционный многочлен с остаточным членом
, так что
f (x)=
. (5.1)
Продифференцируем правую и левую части соотношения (5.1) m раз и положим
:
. (5.2)
Для достаточно гладких функций, т.е. для функций с ограниченными производными, необходимым количеством узлов и заданной точностью величиной, величина
мала и
является хорошим приближенным для
, так что можно положить
. (5.3)
В практических расчетах численное дифференцирование оказывается весьма чувствительным к ошибкам в исходной информации, отбрасыванию членов ряда к другим подобным операциям. Кроме того, высокая точность интерполирования [малость
] совсем не гарантирует высокой точности интерполяционной формулы для производной [малости
]. Поэтому численное дифференцирование следует применять осторожно и, как правило, для небольших m.
Учитывая сказанное, а так же то, что вычисление высших производных может быть сведено к последовательному вычислению низших, остановимся более подробно на получении расчетных формул для
и
в узлах равномерной сетки. Для получения производных в узловых точках целесообразно использовать интерполяционный многочлен Стирлинга и его остаточный член. Так дифференцируя многочлен Стирлинга и его остаточный член по x и полагая
(
), получим следующие выражения для производной:
(k=1) (5.4)
(k=2) (5.5)
Дифференцируя многочлен Стирлинга два раза по x и вычисляя значение второй производной в точке
имеем
(k=1) (5.6)
(k=2) (5.7)
Для вычисления производной точно в середине между узлами
применяют многочлен Бесселя. В этом случае соответствующие формулы для производной имеют вид
(k=1) (5.8)
(k=2) (5.9)
Практический интерес представляют также так называемые формулы одностороннего дифференцирования, позволяющие вычислить
по узлам
(i=0,1,…,k,… или i=0,- 1,…,- k,…). Построение этих формул удобно провести с помощью первого и второго интерполяционных многочленов Ньютона.
Дифференцируя первый многочлен Ньютона по x и вычисляя значение производной в точке
(t = 0) для k=1 и k=2 получим соответственно следующие формулы:
(5.10)
(5.11)
Аналогично, дифференцируя второй многочлен Ньютона, для k=-1 и k= - 2 соответственно имеем
(5.12)
(5.13)
Приведем снова все формулы второго порядка, выразив входящие в них конечные разности непосредственно через значение функции
. Из соотношений (5.4), (5.6) и (5.8) имеем
(5.14)
(5.15)
(5.16)
Соотношения (5.11) и (5.13) соответственно дают
(5.17)
(5.18)
Из формул (5.17), (5.18) видно, что с уменьшением шага сетки уменьшается и погрешность метода. Однако если значения функции
заданы приближенно, например, с одинаковой абсолютной погрешностью
, то при использовании формул численного дифференцирования суммарная погрешность будет содержать дополнительное слагаемое, обратно пропорциональное
(m – порядок производной). Поэтому уменьшение h разумно лишь в определенных пределах.
Иллюстрируя сказанное, рассмотрим правую часть формулы (5.16). Суммарная погрешность ее составляет
. (5.19)
Приравнивая
нулю, получаем точку экстремума функции
:
. (5.20)
Так как
, то
- точка минимума
, причем:
. (5.21)
Аналогично, из формулы (5.15) для оптимального шага получаем выражение
(5.22)
А из формулы (5.17) и (5.18) – выражение
(5.23)
Таким образом, при вычислении производных предварительно следует определить оптимальный шаг исходной таблицы значений
.
Пример 5.1. Вычислить
и
для функции
, заданной в виде таблицы (табл. 5.1), содержащей значение
со всеми верными в широком смысле знаками. Оценить погрешность результата.
Таблица 5.1. Данные к примеру 5.1
| x | 1,2 | 1,3 | 1,4 | 1,5 | 1,6 |
| f | 0,1823 | 0,2626 | 0,3364 | 0,4054 | 0,4700 |
Для вычисления требуемых производных применим соответственно формулы (5.18) и (5.15). Тогда, используя равенства (5.21) и (5.22), а также исходные данные, получим следующие значения для оптимального шага:
при вычислении
;
при вычислении
.
Так как табличные данные не позволяют выбрать в качестве шага 0,22, то за
Принимаем ближайшее возможное число 0,2. Следовательно,
,
причем суммарная погрешность не превышает
;
и
,
причем суммарная погрешность не превышает
.
В некоторых случаях для определения производной задается только таблица значений функции. Тогда оценить погрешность невозможно. Приближенные значения производной вычисляются непосредственно по одной из формул (5.17) – (5.23) без учета погрешности.
Пример 5.2. Вычислить
,
для функции f(x), заданной в виде таблицы (табл. 5).
Таблица 5. Данные к примеру 5.2
| x | 1,2 | 1,3 | 1,4 | 1,5 | 1,6 |
| y=f(x) | 0,18 | 0,26 | 0,34 | 0,41 | 0,47 |
На основании формул (5.17) и (5.19) получаем:

Дата добавления: 2015-11-06; просмотров: 1556;
