Вычисление второй производной по одной переменной
Материал из MachineLearning.
Строка 4: | Строка 4: | ||
== Изложение метода == | == Изложение метода == | ||
+ | === Полиномиальные формулы === | ||
При численном дифференцировании функцию <tex>y(x)</tex> аппроксимируют легко вычисляемой функцией <tex>\varphi(x)</tex> и приближенно полагают <tex>y^{(k)}(x)\approx\varphi^{(k)}(x)</tex>. При этом можно использовать различные способы аппроксимации. Рассмотрим простейший случай - аппроксимацию интерполяционным многочленом Ньютона. Вводя обозначение <tex>\xi_i=x-x_i</tex>, запишем это многочлен и продифференцируем его почленно: | При численном дифференцировании функцию <tex>y(x)</tex> аппроксимируют легко вычисляемой функцией <tex>\varphi(x)</tex> и приближенно полагают <tex>y^{(k)}(x)\approx\varphi^{(k)}(x)</tex>. При этом можно использовать различные способы аппроксимации. Рассмотрим простейший случай - аппроксимацию интерполяционным многочленом Ньютона. Вводя обозначение <tex>\xi_i=x-x_i</tex>, запишем это многочлен и продифференцируем его почленно: | ||
Строка 37: | Строка 38: | ||
Таким образом, порядок точности формулы {{eqref|1}} по отношению к шагу сетки равен числу оставленных в ней членов, или, что то же самое, он равен числу узлов интерполяции минус порядок производной. Поэтому минимальное число узлов, необходимое для вычисления <tex>k</tex>-й производной, равно <tex>k+1</tex>; оно приводит к формулам {{eqref|2}} и обеспечивает первый порядок точности. Эти выводы соответсвуют общему принципу: при почленном дифференцировании рдяа скорость его сходимости уменьшается. | Таким образом, порядок точности формулы {{eqref|1}} по отношению к шагу сетки равен числу оставленных в ней членов, или, что то же самое, он равен числу узлов интерполяции минус порядок производной. Поэтому минимальное число узлов, необходимое для вычисления <tex>k</tex>-й производной, равно <tex>k+1</tex>; оно приводит к формулам {{eqref|2}} и обеспечивает первый порядок точности. Эти выводы соответсвуют общему принципу: при почленном дифференцировании рдяа скорость его сходимости уменьшается. | ||
+ | |||
+ | === Простейшие формулы === | ||
+ | Чаще всего используются равномерные сетки, на которых вид формул {{eqref|1}} заметно упрощается, а точность нередко повышается. | ||
+ | |||
+ | Рассмотрим сначала причину повышения точности. Остаточный член общей формулы {{eqref|1}} - это чногочлен <tex>\sum\prod(x-x_i)</tex> степени <tex>n+1-k</tex> относительно <tex>x</tex>. Если <tex>x</tex> равен корню этого многочлена, то главный остаточный член обращается в нуль, то есть в этой точке формула имеет порядок точности на еденицу больше, чем согласно оценке {{eqref|4}}. Эти точки повышенной точности будем обозначать <tex>x_k^{(p)}</tex>, где <tex>k</tex> - порядок производной, а <tex>p=n+1-k</tex> - число оставленных в формуле {{eqref|1}} членов. Очевидно, <tex>p</tex>-членная формула имеет p точек повышенноу точности. | ||
+ | |||
+ | У одночленной формулы {{eqref|2}} для <tex>k</tex>-й производной точка повышенной точности на произвольной сетке определяется учловием <tex>\sum \xi_i=\sum(x-x | ||
+ | _i)=0</tex>, что дает | ||
+ | |||
+ | {{eqno|5}} | ||
+ | ::<tex>x_k^{(1)}=(x_0+x_1+\dots+x_k)/(k+1)</tex>; | ||
+ | |||
+ | в этой точке одночленная формула имеет погрешность <tex>O(h^2)</tex> вместо обычной <tex>O(h)</tex>. Для двучленной формулы задача нахождения точек повышенной точности приводит к квадратному уравнению, корни которого действительны, но формула для их нахождения громоздка. Если <tex>p>2</tex>, то найти точки повышенной точности очень сложно, за исключением одного частного случая, который мы сейчас и рассмотрим. | ||
+ | |||
+ | |||
+ | |||
== Числовой пример == | == Числовой пример == |
Версия 19:08, 15 октября 2008
Содержание |
Введение
Постановка математической задачи
Допустим, что в некоторой точке у функции существует производная 2-го порядка , которую точно вычислить либо не удается, либо слишком сложно. В этом случае для приближенного нахождения производной функции требуется использовать методы численного дифференцирования.
Изложение метода
Полиномиальные формулы
При численном дифференцировании функцию аппроксимируют легко вычисляемой функцией и приближенно полагают . При этом можно использовать различные способы аппроксимации. Рассмотрим простейший случай - аппроксимацию интерполяционным многочленом Ньютона. Вводя обозначение , запишем это многочлен и продифференцируем его почленно:
Общая формула примет следующий вид:
Обрывая ряд на некотором числе членов, получим приближенное выражение для соответсвующей производной. Наиболее простые выражения получим, оставляя в формуле (1) только первый член:
- ,
- ,
Исследование точности полученных выражений при численных расчетах удобно делать при помощи апостериорной оценки, по скорости убывания членов ряда (1). Если шаг сетки достаточно мал, то погрешность близка к первому отброшенному члену. Пусть мы используем узлы . Тогда первый отброшенный член содержит разделенную разность , которая согласно (2) примерно равна . Перед ней стоит сумма произведений различных множителей ; каждое произведение содержит множителей, а вся сумма состоит из слагаемых. Отсюда следует оценка погрешности формулы (1) с узлами:
- ,
В частности, если сетка равномерная, то , откуда
- .
Стоит заметить, что строгое априорное исследование погрешности формулы (1), аналогичное выводу остаточного члена многочлена Ньютона в форме Коши, для произвольного расположения узлов приводит к той же оценке (3).
Таким образом, порядок точности формулы (1) по отношению к шагу сетки равен числу оставленных в ней членов, или, что то же самое, он равен числу узлов интерполяции минус порядок производной. Поэтому минимальное число узлов, необходимое для вычисления -й производной, равно ; оно приводит к формулам (2) и обеспечивает первый порядок точности. Эти выводы соответсвуют общему принципу: при почленном дифференцировании рдяа скорость его сходимости уменьшается.
Простейшие формулы
Чаще всего используются равномерные сетки, на которых вид формул (1) заметно упрощается, а точность нередко повышается.
Рассмотрим сначала причину повышения точности. Остаточный член общей формулы (1) - это чногочлен степени относительно . Если равен корню этого многочлена, то главный остаточный член обращается в нуль, то есть в этой точке формула имеет порядок точности на еденицу больше, чем согласно оценке (4). Эти точки повышенной точности будем обозначать , где - порядок производной, а - число оставленных в формуле (1) членов. Очевидно, -членная формула имеет p точек повышенноу точности.
У одночленной формулы (2) для -й производной точка повышенной точности на произвольной сетке определяется учловием , что дает
- ;
в этой точке одночленная формула имеет погрешность вместо обычной . Для двучленной формулы задача нахождения точек повышенной точности приводит к квадратному уравнению, корни которого действительны, но формула для их нахождения громоздка. Если , то найти точки повышенной точности очень сложно, за исключением одного частного случая, который мы сейчас и рассмотрим.
Числовой пример
Рекомендации программисту
Заключение
Список литературы
- А.А.Самарский, А.В.Гулин. Численные методы. Москва «Наука», 1989.
- Н.С.Бахвалов, Н.П.Жидков, Г.М.Кобельков. Численные методы. Лаборатория Базовых Знаний, 2003.
- Н.Н.Калиткин. Численные методы. Москва «Наука», 1978.