Вычисление второй производной по одной переменной
Материал из MachineLearning.
Строка 25: | Строка 25: | ||
::<tex>\frac{1}{k!} y^{(k)}(x) \approx y(x_0,x_1,\dots,x_k) = \sum_{p=0}^{k}y_p \prod_{i=0, i\neq p}^k {(x_p-x_i)}^{-1}</tex> | ::<tex>\frac{1}{k!} y^{(k)}(x) \approx y(x_0,x_1,\dots,x_k) = \sum_{p=0}^{k}y_p \prod_{i=0, i\neq p}^k {(x_p-x_i)}^{-1}</tex> | ||
+ | Исследование точности полученных выражений при численных расчетах удобно делать при помощи апостериорной оценки, по скорости убывания членов ряда {{eqref|1}}. Если шаг сетки достаточно мал, то погрешность близка к первому отброшенному члену. Пусть мы используем узлы <tex>x_i, i=1\dots n</tex>. Тогда первый отброшенный член содержит разделенную разность <tex>y(x_0,x_1,\dots,x_{n+1})</tex>, которая согласно {{eqref|2}} примерно равна <tex>y^{(n+1)}(x)/(n+1)!</tex>. Перед ней стоит сумма произведений различных множителей <tex>\xi_i </tex>; каждое произведение содержит <tex>n+1-k</tex> множителей, а вся сумма состоит из <tex>C_{n+1}^k</tex> слагаемых. Отсюда следует оценка погрешности формулы {{eqref|1}} с <tex> n+1 </tex> узлами: | ||
+ | |||
+ | {{eqno|3}} | ||
+ | ::<tex>R_n^{(k)}\leq\frac{M_{n+1}}{(n+1-k)!}\max_i {|\xi_i|}^{n+1-k}</tex>, <tex>M_{n+1}=\max{|y^{(n+1)}|}</tex> | ||
+ | |||
+ | В частности, если сетка равномерная, то <tex>M_{n+1}=\max{|\xi_i|}\leq nh</tex>, откуда | ||
+ | {{eqno|4}} | ||
+ | ::<tex>R_n^{(k)}<M_{n+1} {\left( \frac{en}{n+1-k}h \right)}^{n+1-k}=O(h^{n+1-k}) </tex> | ||
== Числовой пример == | == Числовой пример == | ||
== Рекомендации программисту == | == Рекомендации программисту == |
Версия 18:37, 15 октября 2008
Содержание |
Введение
Постановка математической задачи
Допустим, что в некоторой точке у функции существует производная 2-го порядка , которую точно вычислить либо не удается, либо слишком сложно. В этом случае для приближенного нахождения производной функции требуется использовать методы численного дифференцирования.
Изложение метода
При численном дифференцировании функцию аппроксимируют легко вычисляемой функцией и приближенно полагают . При этом можно использовать различные способы аппроксимации. Рассмотрим простейший случай - аппроксимацию интерполяционным многочленом Ньютона. Вводя обозначение , запишем это многочлен и продифференцируем его почленно:
Общая формула примет следующий вид:
Обрывая ряд на некотором числе членов, получим приближенное выражение для соответсвующей производной. Наиболее простые выражения получим, оставляя в формуле (1) только первый член:
- ,
- ,
Исследование точности полученных выражений при численных расчетах удобно делать при помощи апостериорной оценки, по скорости убывания членов ряда (1). Если шаг сетки достаточно мал, то погрешность близка к первому отброшенному члену. Пусть мы используем узлы . Тогда первый отброшенный член содержит разделенную разность , которая согласно (2) примерно равна . Перед ней стоит сумма произведений различных множителей ; каждое произведение содержит множителей, а вся сумма состоит из слагаемых. Отсюда следует оценка погрешности формулы (1) с узлами:
- ,
В частности, если сетка равномерная, то , откуда
Числовой пример
Рекомендации программисту
Заключение
Список литературы
- А.А.Самарский, А.В.Гулин. Численные методы. Москва «Наука», 1989.
- Н.С.Бахвалов, Н.П.Жидков, Г.М.Кобельков. Численные методы. Лаборатория Базовых Знаний, 2003.
- Н.Н.Калиткин. Численные методы. Москва «Наука», 1978.