Формулы численного дифференцирования.

Задача численного дифференцирования состоит в приближенном вычислении производных функции по заданным в конечном числе точек значениям этой функции. Пусть на задана сетка

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

Простейшие примеры численного дифференцирования имеют вид:

, ,

Возникающая в результате такой замены погрешность характеризуется разложениями

, (3.35)

, (3.46)

, (3.37)

где , точки из интервала .

Вторую производную в точке можно заменить отношением (доказать, дом. зад. №4)

, (3.38)

Третья производная в точке с точностью до величин определяется по формуле (доказать, дом. зад. №4)

. (3.39)

Четвертая производная в точке аппроксимируется разностным отношением (доказать, дом. зад. №4)

.

Как правило, значения функции в точках сетки вычисляются неточно, а с каким-то приближением. Например, элементарные трансцендентные функции вычисляются с помощью рядов, причем ряды заменяются конечными суммами. Другим источником погрешностей являются погрешности округления. Оказывается, что погрешность, возникающая при вычислении разностных отношений, намного превосходит погрешность в задании значений функции и даже может неограниченно возрастать при стремлении шага сетки к нулю. Поэтому операцию вычисления разностных отношений называют некорректной. Поясним причину некорректости на примере вычисления разностного отношения .

Разностное отношение хорошо приближает только в том случае, когда шаг достаточно мал. Требование малости величины , находящейся в знаменателе разностного отношения, как раз и является причиной некорректности операции численного дифференцирования. Действительно, пусть вместо точных значений и вычислены приближенные значения , и . Тогда вместо будет вычислена величина . Следовательно, погрешность в вычислении первой разностной производной окажется равной .

Пусть известна граница погрешностей , т.е. , . Тогда

, (3.40)

причем эта оценка достигается при . Из оценки (3.40) видно, что вследствие малости погрешность, возникающая при вычислении первой разностной производной, значительно превосходит погрешность вычисления самой функции . Если не зависит от , то погрешность неограниченно возрастает при .

Сказанное не означает, что нельзя пользоваться формулами численного дифференцирования. Чтобы не происходило существенного понижения точности, надо следить за тем, чтобы погрешность округления имела тот же порядок, что и погрешность аппроксимации. Например, из (3.35) следует, что погрешность аппроксимации при замене отношением не превосходит величины , где . Естественно потребовать, чтобы и погрешность округления была бы сравнима с погрешностью аппроксимации, например

, (3.41)

где не зависит от . Это означает, что погрешность при вычислении значений функции должна быть величиной . С другой стороны, неравенство (3.41) показывает, что если величина задана и мы не можем ее менять, то вычисления надо проводить не с произвольно малым шагом , а с шагом, удовлетворяющим условию , где .

При вычислении производных более высокого порядка, когда в знаменатель разностного отношения входит , , влияние неточности в задании сказывается еще сильнее.

Многие формулы численного дифференцирования можно получить как следствие интерполяционных формул. Для этого достаточно заменить функцию ее интерполяционным многочленом и вычислить производные многочлена , используя его явное представление. В отличие от предыдущего, рассмотрим неравномерную сетку

и обозначим через , шаги этой сетки. В качестве примера получим формулы численного дифференцирования, основанные на использовании многочлена Лагранжа , построенного для функции по трем точкам . Многочлен имеет вид

,(3.42)

отсюда получим

Это выражение можно принять за приближенное значение в любой точке . Его удобнее записать в виде

, (3.43)

где . В частности, при получим

, (3.44)

и если сетка равномерна, то приходим к центральной разностной производной

.

Далее, вычисляя вторую производную многочлена , получим приближенное выражение для при :

. (3.45)

На равномерной сетке это выражение совпадает со второй разностной производной

.

Для приближенного вычисления дальнейших производных уже недостаточно многочлена , надо привлекать многочлены более высокого порядка и тем самым увеличивать число узлов, участвующих в аппроксимации.

Порядок погрешности аппроксимации зависит как от порядка интерполяционного многочлена, так и от расположения узлов интерполирования. Получим выражение для погрешности аппроксимации, возникающей при замене выражением . Будем считать, что и что величины имеют один и тот же порядок малости при измельчении сетки. По формуле Тейлора в предположении ограниченности получим

,

где , . Отсюда приходим к следующим разложениям разностных отношений (доказать, дом. зад. №4):

,(3.46)

,(3.47)

где Подставляя (3.46) и (3.47) в выражение для разностной производной (3.43) и приводя подобные члены, получим (доказать, дом. зад. №4):

, .

Отсюда видно, что разностное выражение (3.43) аппроксимирует со вторым порядком. Несколько хуже обстоит дело с выражением (3.45), аппроксимирующим вторую производную. Из (3.38) видно, что на равномерной сетке в точке имеет место аппроксимация . Покажем, что на неравномерной сетке погрешность аппроксимации будет иметь только первый порядок. Подставляя разложения (3.46) и (3.47) в выражение (3.45) для получим (доказать, дом. зад. №4):

, .

На равномерной сетке второй порядок аппроксимации имеет место лишь в точке , а относительно других точек (например, точек и ) выполняется аппроксимация только первого порядка.