5839
.pdf60
Здесь и ниже ξ+ и ξ− – некоторые точки, расположенные на интервалах
(x, x + h) и (x − h, x) соответственно. Подставляя разложения (4.3) в выра-
жения для r± , получаем r+ (x, h) = − |
1 |
′′ |
|
|
|
|
|
|
|
1 |
′′ |
|||||||
|
|
|
|
|
|
|
|
|
||||||||||
2 |
f (ξ+ )h, r− (x, h) = |
2 |
f (ξ− )h . Следова- |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
тельно, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
r+ (x, h) |
|
≤ |
1 |
M |
2h, |
M 2 |
= max |
|
′′ |
|
|
, |
|
||||
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
||||||||||||||
|
|
|
|
f (ξ ) |
|
|
|
|||||||||||
|
|
|
|
|
2 |
|
|
|
|
[x, x+h |
] |
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
′′ |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
r− (x, h) |
≤ |
|
M |
2 h, |
M 2 |
= max |
|
. |
|
||||||||
|
|
|
f (ξ ) |
|
|
|||||||||||||
|
|
|
|
|
2 |
|
|
|
|
[x−h, x |
] |
|
|
|
|
|
|
|
Таким образом, формулы (4.1), (4.2) имеют первый порядок точности по h. Иначе говоря, правая и левая разностные производные аппроксимируют производную f ′(x) с первым порядком точности.
Соответствующая приближенная формула центральной разностной производной имеет вид:
f ′(x) ≈ f (x + h) − f (x − h) . 2h
Величину в правой части этой формулы часто называют центральной разностной производной.
Подставляя в выражение для погрешности
|
r0 (x, h) = |
′ |
− |
f (x + h) − f (x − h) |
|
|
||||||||||||||||||||||
|
f (x) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
2h |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
соответствующие разложения по формуле Тейлора |
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
′ |
|
|
|
|
′′ |
|
|
2 |
|
|
|
f |
(3) |
(ξ± ) |
3 |
|
|||||
|
|
|
|
|
|
|
|
|
|
|
f (x) |
|
|
|
|
|
|
|||||||||||
f (x ± h) = f (x) ± f (x)h + |
|
|
|
|
h |
|
± |
|
|
|
|
|
|
|
h |
|
, |
|||||||||||
|
|
2 |
|
|
|
|
6 |
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
получим r (x, h) = − |
f (3) (ξ+ ) + f (3) (ξ− ) |
h2 . |
|
Следовательно, справедлива |
||||||||||||||||||||||||
|
|
|
|
|
|
|||||||||||||||||||||||
0 |
|
|
|
|
|
12 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
оценка погрешности |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
r (x, h) |
|
≤ |
M 3 |
h2 , |
|
M |
3 |
= |
|
max |
|
|
f (3) (ξ ) |
|
. |
|
|
||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
0 |
|
|
|
|
6 |
|
|
|
|
[x−h, x+h] |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61
Таким образом, центральная разностная производная аппроксимирует производную f ′(x) со вторым порядком точности относительно h.
Вычисление второй производной. Наиболее простой и широко применяемой для приближенного вычисления второй производной является следующая формула:
′′ |
f (x − h) − 2 f (x) + f (x + h) |
. |
(4.4) |
|
|||
f (x) ≈ |
h2 |
||
|
|
|
Величину в правой части этого приближенного равенства часто называют второй разностной производной.
Подставляя в выражение для погрешности
|
|
|
|
|
|
′′ |
|
f (x − h) − 2 f (x) + f (x + h) |
|
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
, |
|
|
|
|
|||||||||
|
r(x, h) = f (x) − |
|
|
|
|
|
|
|
h2 |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
соответствующие разложения по формуле Тейлора |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
′ |
|
|
′′ |
|
|
|
|
f |
(3) |
(x) |
|
|
|
|
|
f |
(4) |
(ξ± ) |
|
|
|||||
|
|
|
|
|
|
|
|
f (x) |
|
2 |
|
|
|
|
|
3 |
|
|
|
4 |
|
||||||||||
f (x ± h) = f (x) ± f (x)h |
+ |
|
|
h |
|
± |
|
|
|
|
|
h |
|
+ |
|
|
|
|
h |
|
, |
||||||||||
2 |
|
|
|
|
|
6 |
|
|
24 |
|
|||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
получим r(x, h) = − |
f (4) (ξ+ ) + f (4) (ξ− ) |
h2 . |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
24 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
Следовательно, |
|
r(x, h) |
|
≤ |
M 4 |
h2 , M 4 = |
|
max |
|
|
|
f (4) (ξ ) |
|
. |
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
12 |
|
|
|
|
[x−h, x+h] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
Таким образом, формула (4.4) имеет второй порядок точности. |
|
|
|||||||||||||||||||||||||||||
Использование разложения в |
ряд |
Тейлора |
не |
позволяет |
развить |
идею численного дифференцирования на табличные функции для целей построения производной требуемого порядка точности.
Для вычисления f ′(x) и f ′′(x) могут потребоваться формулы любо-
го порядка точности. В таких формулах с ростом порядка точности возрастает и число используемых значений функции. В качестве примера приведем формулы:
f ′(x) ≈ f (x − 2h) − 8 f (x − h) + 8 f (x + h) − f (x + 2h) ,
12h
62
f ′′(x) ≈ − f (x − 2h) + 16 f (x − h) − 30 f (x) + 16 f (x + h) − f (x + 2h) , 12h2
имеющие четвертый порядок точности.
Опишем другой подход. Пусть функция f (x) задана на отрезке
[a; b] таблицей значений в точках a = x0 < x1 < ... < xn = b . Можно решать два вида задач:
1)найти приближенное значение производной k − ого порядка функции f (x) в произвольной точке x [a; b];
2)найти таблично заданную функцию, являющуюся приближе-
нием к производной f (k ) на отрезке [x0* ; xm* ] [a; b].
Первая задача является основной. Вторая после определения аргу-
ментов xi* сводится к первой. Поэтому будем считать, что задача числен-
ного дифференцирования сводится к вычислению приближенного значения производной в точке x [a; b] и оценке ее погрешности. Для решения этой задачи функцию f (x) заменяют аналитическим приближением, кото-
рое имеет k − ую производную, то есть
f (x) ≈ p(x), x [a; b], f (k ) (x) ≈ p (k ) (x), x [a; b].
При дифференцировании приближенных формул может произойти существенная потеря точности, то есть погрешность формулы f (k ) (x) ≈ p (k ) (x), x [a; b] будет значительно больше погрешности исход-
ного приближения f (x) ≈ p(x), x [a; b]. Задача численного дифференци-
рования относится к числу задач, неустойчивых по исходным данным, т.е. таких, решение которых при малых погрешностях исходных данных приводит к большим погрешностям в результате.
63
4.1.2.Дифференцирование полинома Ньютона
Если функция задана при помощи таблицы с постоянным шагом h , а ее приближение производится первым интерполяционным полиномом
Ньютона, то для произвольной точки x |
[x |
0 |
; x |
|
] и t = |
x − x0 |
получим: |
|||||||||
|
|
|
||||||||||||||
|
|
|
|
|
|
|
1 |
|
|
|
h |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
f ′(x) ≈ Pn′ (x) = |
1 |
|
2t − 1 |
|
|
|
|
|
3t 2 |
− 6t + 2 |
|
|
||||
|
|
y0 + |
|
|
2 y0 |
+ |
|
|
|
|
3 y0 + |
... . |
||||
|
2 |
|
|
6 |
|
|||||||||||
|
h |
|
|
|
|
|
|
|
|
|
|
|
||||
Если производная вычисляется в табличном аргументе, то |
x = x0 , |
|||||||||||||||
t = 0 и производная может быть найдена по формуле: |
|
|
|
1 |
|
|
|
′ |
|
y0 − |
||
|
||||
f (x0 ) ≈ |
|
|
||
|
h |
|
Погрешность найденного |
′ |
(x) |
Pn |
||
члена формулы: |
|
|
2 |
y0 |
|
3 |
y |
0 |
|
|
+ |
|
− ... . |
|||
|
|
|
|
|
||
2 |
|
3 |
|
|
||
|
|
|
равна производной остаточного
f (x) ≈ P (x) = y |
|
+ t |
y |
|
+ |
t |
2 − t |
|
2 y |
|
+ |
|
|
t 3 − 3t 2 |
+ 2t |
3 y |
|
+ ... |
||||||
0 |
0 |
|
|
|
|
|
0 |
|
|
|
|
|
|
|
0 |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
n |
|
|
|
|
|
2! |
|
|
|
|
|
|
|
|
3! |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
При малых h приближенное значение искомой погрешности будет |
||||||||||||||||||||||||
находиться по формуле: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
′ |
|
|
|
|
|
|
|
|
n+1 y0 |
|
|
|
′ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
≈ |
|
|
|
|
|
|
|
(x) , |
|
|
|
|
|||||
|
|
|
Rn (x) |
|
|
|
+ |
|
|
|
Qn+1 |
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
h n+1 (n |
1)! |
|
|
|
|
|
|
|
|||||||
где Qn+1 (x) = (x − x0 )(x − x1 )...(x − xn ). |
|
|
|
|
|
|
|
|
|
|
||||||||||||||
Погрешность производной, найденной в точке |
x = x0 , |
можно вы- |
||||||||||||||||||||||
числить по формуле: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
′ |
(x) ≈ (− 1) |
n |
|
n+1 y0 |
|
, |
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
Rn |
|
h(n + 1) |
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
′ |
|
|
|
|
|
n |
|
|
n |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
так как при этом Qn+1 (x0 ) = (− 1) |
n!h |
. |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64
Приведем еще один подход получения производных функции на основе полинома Ньютона. Запишем полином в виде:
P(t) = a0 + a1 (t − t0 ) + a2 (t − t0 )(t − t1 ),
где a0 = f (t0 ), a1 = ( f (t1 ) − f (t0 )) /(t1 − t0 ) , и |
|
|
|
|||||||||
|
|
|
|
f (t2 ) − f (t1 ) |
− |
f (t1 ) − f (t0 ) |
|
|
|
|
||
a2 |
= |
|
|
t2 − t1 |
|
|
t1 − t0 |
. |
|
|||
|
|
(t2 |
− t0 ) |
|
||||||||
|
|
|
|
|
|
|
|
|||||
Производная P(t) равна |
|
|
|
|
|
|
|
|
||||
|
′ |
= a1 + a2 ((t |
− t0 ) + (t − t1 )) , |
|
|
(4.5) |
||||||
P (t) |
|
|
||||||||||
и если ее вычислить в точке t = t0 , то в результате можно получить |
|
|||||||||||
P′(t0 ) = a1 + a2 (t0 − t1 ) ≈ f ′(t0 ) . |
|
|
(4.6) |
|||||||||
Рассмотрим разные варианты. |
|
|
|
|
|
|
|
|||||
Если t0 = x, t1 = x + h и t2 = x + 2h , то |
|
|
|
|||||||||
a = |
|
f (x + h) − f (x) |
, |
|
|
|
||||||
|
|
|
|
|
||||||||
1 |
|
|
|
|
h |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a2 |
= |
f (x) − 2 f (x + h) + f (x + 2h) |
. |
|
||||||||
|
|
|||||||||||
|
|
|
|
|
2h2 |
|
|
|
Затем подставив эти значения в (3.6), получим:
′ |
|
f (x + h) − f (x) |
|
− f (x) + 2 f (x + h) − f (x + 2h) |
|
||||||
P (x) = |
|
|
|
|
+ |
|
2h |
|
|
. |
|
|
h |
|
|
|
|||||||
|
|
|
|
|
|
|
|
||||
Упростим выражение и получим |
|
|
|
|
|
|
|||||
|
|
′ |
= |
− 3 f (x) + 4 f (x + h) − f (x + 2h) |
≈ |
′ |
(4.7) |
||||
|
|
P (x) |
|
|
|
2h |
f (x). |
||||
|
|
|
|
|
|
|
|
|
|
||
Это и есть формула правой разности второго порядка для |
′ |
|
|||||||||
f (x) . |
|
||||||||||
Если t0 |
= x, t1 = x + h и t2 |
= x − h , то |
|
|
|
||||||
|
|
a = |
f (x + h) − f (x) |
, |
|
|
|
||||
|
|
|
|
|
|
||||||
|
|
1 |
|
|
h |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a2 |
= |
f (x + h) − 2 f (x) + f (x − h) |
. |
|
|||
|
|
2h2 |
|
|
|
|
|
|
|
|
|
65 |
|
|
|
|
|
|
Затем подставим эти значения в (4.6) и получим: |
|
|
|
|
|||||||||||
′ |
f (x + h) − f (x) |
|
− f (x + h) + 2 f (x) − f (x − h) |
|
|||||||||||
P (x) = |
|
|
|
|
|
|
|
+ |
|
|
2h |
|
|
|
. |
|
|
h |
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||
Упростив это выражение, получим: |
|
|
|
|
|
|
|
||||||||
|
′ |
|
|
|
|
f (x + h) − f (x − h) |
′ |
|
|
|
|
||||
|
P (x) = |
|
|
|
|
|
≈ f (x), |
|
|||||||
|
|
|
|
2h |
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
′ |
|
формулу центрированной разности второго порядка для f (x) . |
|
||||||||||||||
Если t0 = x, t1 = x − h и t2 = x − 2h , то |
|
|
|
|
|
||||||||||
|
a = |
|
f (x) − f (x − h) |
, |
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
||||||||
|
1 |
|
|
|
|
h |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
a2 |
= |
f (x) − 2 f (x − h) + f (x − 2h) |
. |
|
|
|||||||||
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
2h2 |
|
|
|
|
|
|
Подставим эти значения в (4.7) и упростим, тогда получим |
|||||||||||||||
′ |
|
3 f (x) − 4 f (x − h) + f (x − 2h) |
|
|
′ |
|
|||||||||
P (x) = |
|
|
|
|
|
|
|
|
|
|
≈ |
f (x), |
|
||
|
|
|
|
|
|
|
2h |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
формулу левой разности второго порядка для |
′ |
|
|
|
|
||||||||||
f (x) . |
|
|
4.1.3.Дифференцирование полинома Лагранжа
Для вычисления значения функции в абсциссе, которая лежит с одной стороны от точки x0 , нельзя использовать формулу центрированной разности. Формулы для равноотстоящих абсцисс, которые лежат справа (или слева) от точки x0 , называют формулами для правых (или левых) раз-
ностей. Эти формулы можно получить дифференцированием интерполяционного полинома Лагранжа. Ниже приведены некоторые общие формулы для правых и левых разностей.
f |
′ |
− 3 f0 |
+ 4 f1 |
− f2 |
(правая разность), |
||
(x0 ) ≈ |
|
|
2h |
|
|
||
|
|
|
|
|
|
|
|
|
′ |
3 f0 |
+ 4 f−1 |
− f−2 |
|
||
f |
(x0 ) ≈ |
|
|
|
|
|
(левая разность), |
|
|
2h |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
66 |
f |
′′ |
2 f0 |
− 5 f1 + 4 f2 |
− f3 |
|
(правая разность), |
|
|
|
|
|
|
|||
(x0 ) ≈ |
|
h2 |
|
|
|
||
|
|
|
|
|
|
|
|
f |
′′ |
2 f0 |
− 5 f−1 + 4 f−2 |
− f−3 |
(левая разность). |
||
|
|
|
|||||
(x0 ) ≈ |
|
h2 |
|
|
|
||
|
|
|
|
|
|
|
В качестве примера опишем способ построения следующей форму-
лы:
f ′′(x0 ) ≈ 2 f0 − 5 f1 + 4 f2 − f3 . h2
Начнем с интерполяционного полинома Лагранжа для f (t) , постро-
енного по точкам x0 , x1 , x2 , x3 :
f (t) ≈ f |
0 |
|
|
(t − x1)(t − x2 )(t − x3 ) |
|
|
|
+ |
f1 |
(t − x0 )(t − x2 )(t − x3 ) |
+ |
|||||||||||||||||||||||||
(x |
0 |
− x )(x |
0 |
− x |
2 |
)(x |
0 |
− x |
3 |
) |
|
(x − x |
0 |
)(x − x |
2 |
)(x − x ) |
||||||||||||||||||||
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
1 |
|
1 |
|
1 |
3 |
|
||||||||||||
+ |
f2 |
|
(t − x0 )(t − x1)(t − x3 ) |
|
|
+ f3 |
|
(t − x0 )(t − x1)(t − x2 ) |
|
|
. |
|
||||||||||||||||||||||||
(x |
2 |
− x |
0 |
)(x |
2 |
− x )(x |
2 |
− x ) |
(x |
3 |
− x |
0 |
)(x |
3 |
− x )(x − x |
2 |
) |
|
||||||||||||||||||
|
|
|
|
|
|
|
|
1 |
|
|
3 |
|
|
|
|
|
|
|
|
|
1 |
3 |
|
|
|
|
Продифференцируем дважды произведения в числителях и получим:
|
′′ |
≈ f0 |
|
2((t − x1 ) + (t − x2 ) + (t − x3 )) |
|
+ f1 |
|
2((t − x0 ) + (t − x2 ) + (t − x3 )) |
|
+ |
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
f (t) |
|
(x0 − x1 )(x0 − x2 )(x0 − x3 ) |
|
|
(x1 − x0 )(x1 − x2 )(x1 − x3 ) |
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
+ f2 |
2((t − x0 ) + (t − x1 ) + (t − x3 )) |
+ f |
|
2((t − x0 ) + (t − x1 ) + (t − x2 )) |
|
|
|
|
|||||||||||||
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
. |
|
|
|
|
||||
|
|
(x2 |
− x0 )(x2 − x1 )(x2 − x3 ) |
|
|
(x3 |
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
− x0 )(x3 − x1 )(x3 − x2 ) |
|
|
|
|
|||||||||
Затем подстановка t = x0 и тот факт, что xi |
− x j |
= (i − j)h , дадут |
|
|
|
|
||||||||||||||||
f |
′′ |
|
2((x0 − x1) + (x0 − x2 ) + (x0 − x3 )) |
+ |
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||||||
(x0 ) ≈ f0 |
|
(x0 − x1)(x0 − x2 )(x0 − x3 ) |
|
|
|
|
|
|
|
|
||||||||||||
+ |
f1 |
2((x0 − x0 ) + (x0 − x2 ) + (x0 − x3 )) |
+ |
f2 |
2((x0 |
− x0 ) + (x0 − x1) + (x0 |
− x3 )) |
+ |
||||||||||||||
|
|
(x1 |
− x0 )(x1 − x2 )(x1 − x3 ) |
|
|
|
|
(x2 − x0 )(x2 − x1)(x2 − x3 ) |
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
+ |
f3 |
2((x0 − x0 ) + (x0 − x1) + (x0 − x2 )) |
= |
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
(x3 |
|
− x0 )(x3 − x1)(x3 − x2 ) |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
67 |
|
|
|
|
|
|
|
|
|
= f |
|
2((−h) + (−2h) + (−3h)) |
+ f |
|
2((0) + (−2h) + (−3h)) |
+ |
|
|
|
|||||||||||||||||||||
|
0 |
|
(−h)(−2h)(−3h) |
|
|
|
|
|
1 |
|
|
|
|
|
(h)(−h)(−2h) |
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
+ f2 |
2((0) + (−h) + (−3h)) |
+ f3 |
2((0) + (−h) + (−2h)) |
= |
|
|
|
|
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
(2h)(h)(−h) |
|
|
|
|
|
|
|
|
|
|
|
(3h)(2h)(h) |
|
|
|
|
|
|
|||||||||
= f |
|
− 12h |
+ f − 10h |
+ f |
|
|
|
− 8h |
|
+ f |
− 6h = |
2 f0 − 5 f1 + 4 f2 − f3 |
. |
|
|
|||||||||||||||
|
|
|
2 − 2h3 |
|
|
|
|
|||||||||||||||||||||||
|
0 − 6h3 |
1 2h3 |
|
|
|
|
|
3 6h3 |
|
|
h2 |
|
|
|||||||||||||||||
|
|
|
Пример. Дана сеточная функция (табл. 3), являющаяся сеточным |
|||||||||||||||||||||||||||
представлением функции y(x) = |
1 |
. |
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таблица 3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x2 |
|
x3 |
|
|
x4 |
|
x5 |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
i |
|
|
|
|
0 |
|
1 |
|
|
|
|
|
|
|
|
|
|
|
2 |
|
3 |
|
|
4 |
|
|
5 |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
xi |
|
|
|
1 |
|
1,2 |
|
|
|
|
|
|
|
|
|
1,4 |
|
1,6 |
|
1,8 |
|
|
2,0 |
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
fi |
|
1,000000 |
0,83333333 |
|
|
|
0,7142857 |
|
0,6250000 |
0,5555555 |
0,500000 |
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||
|
|
|
Заданы также порядок t = 2 |
относительно шага h, который необхо- |
||||||||||||||||||||||||||
димо обеспечить при решении задачи, и точка x j |
= 1,4 . |
|
|
|
||||||||||||||||||||||||||
|
|
|
Требуется вычислить значение первой производной f |
′ |
||||||||||||||||||||||||||
|
|
|
(1,4) и вто- |
|||||||||||||||||||||||||||
рой производной |
′′ |
|
|
|
|
с помощью различных узлов и соответствующих |
||||||||||||||||||||||||
f (1,4) |
||||||||||||||||||||||||||||||
формул. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
Так |
как |
|
шаг |
|
задания |
сеточной |
функции |
постоянный |
|||||||||||||||||||
h = xi+1 − xi |
= 0,2 , точка x j = 1,4 находится внутри сетки Ω n , то для вычис- |
ления производной в этой точке выбирается формула центральной разностной производной, имеющая второй порядок аппроксимации относитель-
но |
шага h. При |
этом центральная точка шаблона совпадает с точкой |
x j |
= 1,4 . |
|
|
Выберем следующие узлы: |
|
|
xi |
= 1,4 (i = 2); xi−1 = 1,2 (i − 1 = 1); xi+1 = 1,6 (i + 1 = 3) . |
68
Подсчитаем искомое значение производной по формуле:
ˆ |
|
fi+1 |
− fi−1 |
|
0,6250000 - 0,8333333 |
|
fi¢,c |
= |
|
|
= |
|
. |
|
2h |
2 × 0,2 |
||||
|
|
|
|
|
Прежде чем выполнить вычисление, необходимо определить количество знаков, которое сохраняется при этом. Ошибка метода определяется
2
по формуле h M 3,i . Для ее вычисления необходимо сначала определить
6
M 3,i = |
max |
|
|
′′′ |
|
. |
Поэтому воспользуемся интерполяционным много- |
|
|
|
|||||
|
|
f (x) |
|
||||
|
[xi −1 , xi +1 |
] |
|
|
|
|
|
|
|
|
|
|
|
||
членом Ньютона с конечными разностями: |
f |
¢¢¢» N ¢¢¢(x ) = |
D3 f |
, |
|
|
||||
i |
3 |
i |
h3 |
|
|
|
|
|
где 3 f – конечная разность третьего порядка. Эта разность может быть вычислена по значениям функции fi в четырех точках. Возьмем точки x2 , x3 , x4 , x5 . При этом будем считать, что M 3,i ≈ f ′′′(xi ) .
Вычисление дает f ¢¢¢(xi ) » - 0,005935 = -0,74405 . Тогда остаточное
0,008
слагаемое по модулю будет равно 0,04 × 0,74405 » 0,0049 < 0,01.
6
На основе полученного приближенного значения остаточного слагаемого можно заключить, что в вычислениях ожидается одна верная цифра после запятой. Обычно в расчетах оставляют еще одну или две дополнительные цифры (в нашем примере это составляет всего 3 цифры). Остав-
|
|
|
|
|
|
|
|
ˆ ′ |
|
x=1,4 |
= −0,521. |
|
|
|
|
|
|||||||||
ляя три цифры после запятой, получаем результат: f (x) |
|
|||||||||||
Фактическая абсолютная погрешность составляет: |
|
|
||||||||||
|
1 |
|
= |
|
- 0,521 + 0,5102 |
|
= 0,0108 |
, |
|
|||
|
- 0,521 + |
|
|
|
|
|||||||
|
|
|
|
|
||||||||
|
|
|||||||||||
|
1,42 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
69
т.е. относительная погрешность равна 0,0108 ×100% = 2,1% . Если эта по-
0,5102
грешность не устраивает вычислителя, необходимо повышать порядок точности относительно h, например, до t = 3.
4.1.4.Выбор оптимального шага численного дифференцирования
Общая погрешность вычисления производной может рассматриваться как сумма погрешности метода и погрешности округления. С уменьшением шага h погрешность метода убывает, а погрешность округления возрастает. Можно найти оптимальный шаг как компромисс этих двух процессов. Так для центрально-разностной производной первого порядка погрешность метода не превосходит следующей величины:
|
h2 |
M 3 |
= |
h2 |
max |
|
f ¢¢¢(x) |
|
. |
|
|
|
|||||||
|
|
|
|||||||
6 |
|
|
6 ( x−1 , x1 ) |
|
|
|
|
||
Погрешность округления для |
такой формулы оценивается величиной |
2ε = ε , где ε – абсолютная погрешность исходных значений функции.
2h h
Суммарная погрешность ε Σ следующая:
ε Σ (h) = h2 M 3 + ε . 6 h
Величина ε Σ достигает наименьшего значения при условии:
′ |
h2 |
|
ε ′ |
|
h |
|
ε |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
M 3 + |
= M |
3 − |
|
2 = 0 . |
||||||
ε Σ (h) = |
6 |
|
h |
||||||||
|
|
|
h |
3 |
|
|
|
|
Это условие дает значение h, которое называют оптимальным шагом:
h = 3 3ε .
M 3
Для каждой формулы численного дифференцирования свой оптимальный шаг.