Численное дифференцирование
Простейшие формулы численного дифференцирования получаются в результате дифференцирования интерполяционных формул.
Пусть известны значения функции в точках и требуется вычислить производную . Построим интерполяционный многочлен и положим . Точно так же мы можем заменять значения производныхфункций значениями производных других многочленов интерполяционного типа, например Бесселя.
Другой способ построения формул численного дифференцирования, приводящий к тем же формулам, - этометод неопределенных коэффициентов. Наиболее употребителен он в многомерном случае, когда не всегда просто выписывается интерполяционный многочлен. Коэффициенты формулы численного дифференцирования
выбираются из условия, чтобы формула была точна для многочленов максимально высокой степени. Возьмем и потребуем, чтобы для такого многочлена соотношение (1) обратилось в равенство
Чтобы равенство выполнялось для любого многочлена степени , необходимо и достаточно, чтобы коэффициенты при в правой и левой частях были равны. Поскольку
то получаем линейную систему уравнений
относительно неизвестных . Если , то число уравнений равно числу неизвестных. Определитель системы является определителем Ван-дермонда, поэтому отличен от нуля. Таким образом, всегда можно построить формулу численного дифференцирования с узлами, точную для многочленов степени .
При и определенном расположении узлов иногда оказывается, что равенство (2) выполнено и для . Как правило, это будет в случае, когда узлы расположены симметрично относительно точки .
В приведенных ниже задачах для простоты взято Пусть узлы расположены симметрично относительно точки , т.е. и т.д. Если нечетно, , то тогда .
Задача 1. Пусть к четно (в частности, к может быть равно нулю и тогда речь идет об интерполировании). Доказать, что тогда , и вообще .
Доказать, что вследствие такого свойства симметрии формула (1) автоматически является точной для любойнечетной функции. В частности, при нечетном формула (1) будет точна для , поэтому она точна и для любого многочлена степени (поскольку для любого многочлена степени она уже оказалась точной по построению).
Задача 2. Пусть к нечетно. Доказать, что тогда , и вообще . Если нечетно, , то при имеем и, следовательно, .
Доказать, что вследствие такого свойства симметрии формула (1) автоматически является точной для любойчетной функции. В частности, при четном она будет точна для и поэтому будет точна для любого многочлена степени .
Таким образом, при симметричном относительно расположении узлов, четном, нечетном или нечетном, четном формула (1) оказывается точной для многочленов на единицу большей степени.
Свойства симметрии формул численного дифференцирования используются для уменьшения числа уравнений, которые нужно решить при построении формулы.
Пусть требуется построить формулу численного дифференцирования
точную для многочленов второй степени. Система уравнений (2) в данном случае имеет вид
и, решая ее, получаем . Воспользуемся свойством симметрии и сразу возьмем формулу, для которой . Тогда первое и третье уравнения выполнены автоматически, а второе приобретает вид , т.е. . Таким образом, .
Задача 3. Пусть все точки удалены от точки на расстояние — малая величина. Показать, что при гладкой приближенная формула численного дифференцирования (1) имеет порядок погрешности , где , - максимальная степень многочленов, для которых точна эта формула.
Построим приближенную формулу вычисления второй производной, использующую те же узлы:
Из условий точности формулы для получаем систему уравнений
Решая эту систему, получим и соответствующую приближенную формулу
Мы можем не сомневаться в том, что получили правильную формулу. Выражение в правой части есть , и, согласно (10.4), оно равно значению . У многочлена второй степени вторая производная постоянна, поэтому при любом , в частности .
Построенная формула оказывается точной для любого многочлена третьей степени. Если подставим в левую и правую части (3) функцию , то в обеих частях получим нуль.
Оценим погрешность построенной выше приближенной формулы . В формуле Тейлора возьмем три члена разложения и остаточный член
Введем обозначение . Имеем
Значение лежит между и . Поэтому по теореме Ролля найдется в пределах , такое, что . Таким образом, в итоге имеем
Рассмотрим приближенную формулу (3). Предположим сначала, что нам неизвестно, точна ли она для любого многочлена третьей степени. Беря в разложении Тейлора три члена
получим
Если — многочлен третьей степени, то , поэтому . Таким образом, из выражения для погрешности мы увидели, что формула (3) точна для всех многочленов третьей степени. По теореме Лагранжа
. В то же время , откуда следует . Таким образом, , где , и
Если в разложении Тейлора взять четыре слагаемых
то получим выражение для погрешности
Рассуждая, как и при выводе оценки погрешности для первой производной, имеем
Приведем ряд формул численного дифференцирования функций, заданных на сетке с постоянным шагом :
Это так называемые односторонние формулы численного дифференцирования. В первой формуле (4) все узлы удовлетворяют условию , во второй .
Среди таких формул наиболее употребительны следующие:
и
Такие приближения производных часто используются при решении дифференциальных уравнений для аппроксимации граничных условий. Приведем примеры симметричных формул:
Наиболее употребительны следующие частные случаи:
(уже рассмотренный нами выше в других обозначениях);
Формулы для второй производной записываются в виде
остаточный член
Наиболее употребительны частные случаи:
Для высших производных простейшую грубую аппроксимацию можно получить, воспользовавшись (10.4). При имеем
Наиболее употребительные частные случаи: односторонние формулы численного дифференцирования
имеющие погрешность порядка , и симметричные формулы численного дифференцирования. При четном
при нечетном
Эти формулы имеют погрешность . При такими формулами как раз являются формулы, приведенные выше.
При выводе формул численного дифференцирования из приближенного равенства
оценку погрешности также можно получить, дифференцируя остаточный член в (5.1):
Для получения конкретной оценки надо воспользоваться правилом Лейбница и доказать равенство