
820
.pdf6b1 0.5 1 0.866 1 12 ,
6b |
0.866 |
|
2 |
|
1 |
|
, |
||
2 |
|
|
|
|
3 |
|
3 |
|
|
|
|
|
|
|
|
|
|
||
6b 1 |
|
|
1 . |
|
|
|
|||
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
Отсюда
a0 =1,417; a1 = -0,291; a2 = -0,083; a3 = -0,111,
b1=-0,311; b2 = -0,144; b3 = -0,083.
Для сравнения приведем точные значения коэффициентов a0 =1,500; a1 = -0,203; a2 = -0,000; a3 = -0,022,
b1=-0,318; b2 = -0,159; b3 = -0,106.
Чтобы получить значения коэффициентов по приближенным формулам с большей точностью, можно обратиться к схемам с большим числом ординат.
Следует отметить что практический гармонический анализ дает возможность получить аналитические выражения аппроксимирующие заданные функции с наименьшей средней квадратической ошибкой.
61
2.ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ
ИИНТЕГРИРОВАНИЕ
2.1.Постановка задачи и простейшие формулы численного дифференцирования
При решении многих практических задач возникает необходимость получить значения производных различных порядков функции f ,
заданной в виде таблицы или сложного аналитического выражения. В этих случаях применить непосредственно методы дифференциального исчисления либо невозможно, либо затруднительно. Тогда используют приближенные методы численного дифференцирования.
Простейшие выражения для производных получаются в результате дифференцирования интерполяционных формул.
Итак, рассмотрим следующую задачу. На сетке x0 x1 ... xn b в узлах i заданы значения fi функции f , непрерывно дифференцируе-
мой n 1 m раз. Требуется вычислить производную f (m) (x ) , x ϵ a,b и
оценить погрешность.
Один из возможных способов решения этой задачи заключается в следующим. Построим для функции f по узлам xi i 0,1,...,n интерполя-
ционный многочлен с остаточным членом Rn , так что |
|
f x Pn x Rn x . |
(2.1.1) |
Продифференцируем правую и левую части соотношения (1) m раз и |
|
положим x x : |
|
f m x Pn m x Rnm x . |
(2.1.2) |
Для достаточно гладких функций, т.е. для функций с ограниченными производными, достаточного количества узлов и достаточной точности
вычислений, величина Rnm x мала и Pn m x является хорошим при-
ближением для f m x , так что можно положить |
|
f m x Pn m x . |
(2.1.3) |
В практических расчетах численное дифференцирование оказывается весьма чувствительным к ошибкам в исходной информации, отбрасыванию членов ряда и к другим подобным операциям. Кроме того, высокая
точность интерполирования малость R |
x |
совсем не гарантирует |
|
|
n |
|
|
62
высокой точности интерполяционной формулы для производныхмалости Rnm x .
Поэтому численное дифференцирование следует применять осторожно и, как правило, для небольших m.
Учитывая сказанное, а также то, что вычисление высших производных может быть сведено к последовательному вычислению низших, остановимся более подробно на получении расчетных формул для f и f в
узлах равномерной сетки. Для получения производных в узловых точках целесообразно использовать интерполяционный многочлен Стирлинга т его остаточный член (см. формулы (1.8.5) и (1.8.6)). Так, дифференцируя
многочлен Стирлинга и его остаточный член по x и полагая x x0 t 0 , получим следующие выражения для производной:
|
f x0 |
|
|
1 |
f01 |
M3 |
h2 (k 1) , |
|
(2.1.4) |
|||||
|
|
|
|
|
h |
|
|
6 |
|
|
|
|
||
|
|
1 |
|
|
|
|
3 |
|
|
M5 |
|
|
|
|
f x0 |
|
|
f01 |
|
f0 |
|
|
h4 k 2 |
. |
(2.1.5) |
||||
h |
30 |
|||||||||||||
|
|
|
|
|
|
6 |
|
|
|
|
|
Дифференцируя многочлен Стирлинга два раза по x и вычисляя
значение второй производной в точке x x , имеем |
|
|
|||||||||
|
|
|
|
|
|
|
|
|
0 |
|
|
f x0 |
1 |
|
f02 M4 |
h2 k 1 , |
|
(2.1.6) |
|||||
|
h2 |
|
|
||||||||
|
|
|
|
|
|
|
12 |
|
|
|
|
f x0 |
1 |
|
f02 |
|
1 |
f04 |
M6 h4 k 2 |
. |
(2.1.7) |
||
2 |
|
||||||||||
|
h |
|
|
|
12 |
|
90 |
|
|
Для вычисления производной точно в середине между узлами x x0 h2 применяют многочлен Бесселя. В этом случае соответствующие формулы для производной имеют вид
f x |
h |
1 |
f 1 |
M3 h2 (k 1) , |
(2.1.8) |
||
|
0 |
2 |
|
h |
1/2 |
24 |
|
|
|
|
|
|
f |
x |
h |
|
1 |
f 1 |
|
1 |
|
f 3 |
|
3M5 h4 (k 2) . |
(2.1.9) |
|
|
|
||||||||||
|
0 |
|
|
1/2 |
24 |
|
1/2 |
640 |
|
|||
|
|
2 |
|
h |
|
|
|
|
|
|||
Практический интерес представляют также так называемые формулы |
||||||||||||
одностороннего дифференцирования, |
позволяющие вычислить |
f x0 по |
узлам xi x0 ih (i=0, 1,…,k,…или i=0,-1,…,-k,…). Построение этих фор-
63

мул удобно провести с помощью первого и второго интерполяционных многочленов Ньютона.
Дифференцируя первый многочлен Ньютона по x и вычисляя значение |
||||||||||||||||
производной в точке x x0 |
t 0 |
для |
k 1 |
и |
k 2 получим |
соответ- |
||||||||||
ственно следующие формулы: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
f x0 |
1 f0 |
1 M2h , |
|
|
|
(2.1.10) |
||||||||||
|
|
|
|
h |
|
|
|
|
2 |
|
|
|
|
|
|
|
f x0 |
|
1 |
|
|
1 |
|
2 |
|
|
1 |
M3h |
2 |
. |
(2.1.11) |
||
|
f0 |
2 |
|
|
f0 |
3 |
|
|
||||||||
|
|
h |
|
|
|
|
|
|
|
|
|
|
|
|||
Аналогично, дифференцируя второй многочлен Ньютона, для k 1 и |
||||||||||||||||
k 2 соответственно имеем |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
f x0 |
1 f0 |
1 M 2h , |
|
|
|
(2.1.12) |
||||||||||
|
|
|
|
h |
|
|
|
|
2 |
|
|
|
|
|
|
|
f x0 |
|
1 |
|
|
1 |
|
2 |
|
|
1 |
M3h |
2 |
. |
(2.1.13) |
||
|
f0 |
2 |
|
f0 |
3 |
|
||||||||||
|
|
h |
|
|
|
|
|
|
|
|
|
|
|
2.2. Особенности численного дифференцирования
Приведем снова все формулы второго порядка, выразив входящие в них конечные разности непосредственно через значения функции fi . Из
соотношений (2.1.4), (2.1.6) и (2.1.8) имеем:
f x0 |
f1 f 1 |
|
M3 |
|
|
h2 , |
|
|||||||
|
|
|
|
|
|
|||||||||
|
|
|
|
2h |
6 |
|
|
|
|
|
||||
f x0 |
|
f1 2 f0 f 1 |
|
|
|
|
M4 |
h2 , |
||||||
|
|
|
12 |
|
||||||||||
|
|
|
|
h2 |
|
|
|
|
||||||
f x |
h |
|
f1 f0 |
|
|
M3 |
h2 . |
|||||||
|
|
|
||||||||||||
0 |
|
|
|
|
h |
|
|
24 |
|
|
||||
|
|
2 |
|
|
|
|
|
Соотношения (2.1.11) и (2.1.13) соответственно дают f x0 21h 3 f0 4 f1 f2 M33 h2 ,
f x0 21h 3 f0 4 f 1 f 2 M33 h2 .
(2.2.1)
(2.2.2)
(2.2.3)
(2.2.4)
(2.2.5)
64

Из приведенных выше формул видно, что с уменьшением шага сетки уменьшается и погрешность метода. Однако если значения функции fi
заданы приближенно, например с одинаковой абсолютной погрешностью, то при использовании формул численного дифференцирования суммарная погрешность будет содержать дополнительное слагаемое, обратно
пропорциональное hm (m – порядок производной). Поэтому уменьшение h разумно лишь в определённых пределах.
Иллюстрируя сказанное, рассмотрим правую часть формулы (2.2.3). Суммарная погрешность ее составляет
|
|
|
|
|
|
M3 |
h2 |
|
2 |
. |
|
|
|
|
|
|
|
|
|
|
|
|
(2.2.6) |
||||||||
|
|
|
|
|
24 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
h |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
Приравнивая h |
нулю, получаем точку экстремума функции h : |
|||||||||||||||||||||||||||||
|
|
|
h 23 |
3 |
|
|
|
2,93 |
|
|
. |
|
|
|
|
|
|
|
|
(2.2.7) |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
0 |
|
M3 |
|
|
|
|
|
M3 |
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
– точка минимума h , причём |
|
|||||||||||||||||||||||||
|
Так как h 0 , то h0 |
|
|||||||||||||||||||||||||||||
|
|
|
|
h 3 |
3 1 M 2 |
|
|
3 M |
3 |
2 . |
|
|
(2.2.8) |
||||||||||||||||||
|
|
|
|
|
0 |
|
2 |
|
|
3 |
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
Это соотношение, в частности, означает, что ни при каком |
h нельзя |
|||||||||||||||||||||||||||||
гарантировать, что погрешность результата является величиной 0 |
2 3 . |
||||||||||||||||||||||||||||||
|
Аналогично, из формулы (2.2.2) для оптимального шага получаем |
||||||||||||||||||||||||||||||
выражение |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
h0 24 |
3 |
|
2,64 |
|
|
|
|
|
|
|
, |
|
|
|
(2.2.9) |
|||||||||||
|
|
|
|
|
M4 |
|
|
|
M |
4 |
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
а из формул (2.2.4) и (2.2.5) – выражение |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
h0 3 |
|
6 |
|
1,83 |
|
|
|
|
. |
|
|
|
|
(2.2.10) |
||||||||||||
|
|
|
|
|
|
M3 |
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
M3 |
|
|
|
|
|
|
|||||||||
|
Таким образом, при вычислении производных предварительно следует |
||||||||||||||||||||||||||||||
определить оптимальный шаг исходной таблицы значений |
fi . |
|
|||||||||||||||||||||||||||||
|
Пример 1. Вычислить |
|
|
|
и |
|
|
|
|
|
|
для функции |
f ln x , задан- |
||||||||||||||||||
|
f 1.6 |
|
|
|
f 1.4 |
|
|
|
|||||||||||||||||||||||
ной в виде следующей таблицы: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
х |
|
1,2 |
|
1,3 |
|
|
|
|
|
|
|
|
1,4 |
|
|
|
|
|
|
|
|
|
|
|
|
1,5 |
|
1,6 |
|||
f |
|
0,1823 |
|
0,2626 |
|
|
|
|
|
|
|
0,3364 |
|
|
|
|
|
|
|
0,4054 |
|
0,4700 |
65

Содержащей значения fi со всеми верными в широком смысле знака-
ми. Оценить погрешность результата.
Для вычисления требуемых производных применим соответственно формулы (2.2.5) и (2.2.2). Тогда, используя равенства (2.2.10) и (2.2.9), а также исходные данные, получим следующие значения для оптимального шага:
h |
3 |
6 10 4 |
0,1 при вычислении |
f (1,6) ; |
||
01 |
|
0,73 |
|
|
|
|
|
|
|
|
|
|
|
h |
4 |
48 10 4 |
0,22 |
при вычислении f (1,4) . |
||
02 |
|
2,1 |
|
|
|
|
|
|
|
|
|
|
Так как табличные данные не позволяют выбрать в качестве шага 0,22, то за f2 принимаем ближайшее возможное число 0,2. Следовательно,
f 1,6 0,21 3 0,4700 4 0,4054 0,3364 0,624.
Причем суммарная погрешность не превышает
0,73 0,12 4 10 4 0,007 , 3 0,1
f 1,4 0,21 2 0,4700 2 0,3364 0,1823 0,512.
Причем суммарная погрешность не превышает
2,9 0,22 4 10 4 0,02 . 12 0,22
Приведенные оценки погрешности хотя и являются, как правило, слишком завышенные, но все-таки указывают на то, что операция нахождения второй производной является менее надежной, чем первой.
В некоторых практических случаях для определения производной задается только таблица значений функции. Тогда оценить погрешность, очевидно, невозможно. Приближенные значения производных вычисляются непосредственно по одной из формул (2.1.4)–(2.1.13) без учёта погрешности.
Пример 2. Вычислить |
f (1,3) |
f (1,4) для функции f (x), |
заданной в |
||||
виде следующей таблицы: |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
x |
1,2 |
|
1,3 |
|
1,4 |
1,5 |
1,6 |
у |
0,18 |
|
0,26 |
|
0,34 |
0,41 |
0,47 |
66

На основании формул (2.1.4) и (2.1.6) соответственно получаем: f (3.1) 0,11 12 0,34 0,26 0,26 0,18 0,8 ,
f1,4 0,11 2 0,41 0,34 0,34 0,26 1.
2.3.Постановка задачи численного интегрирования
Пусть требуется вычислить интеграл
b |
|
I f x dx . |
(2.3.1) |
a
Из курса математического анализа известно, что для непрерывной на отрезке a,b функции f интеграл (1) существует и равен разности значе-
ний первообразной F для функции f в точках b и a:
b |
|
I f x dx F b F a . |
(2.3.2) |
a
Однако в подавляющем большинстве практических задач первообразную не удается выразить через элементарные функции. Кроме того, функция f часто задается в виде таблицы ее значений для определенных значений аргумента. Все это порождает потребность в приближенных методах вычисления интеграла (2.3.1), которые можно условно подразделить на аналитические и численные. Первые, по существу, заключаются в приближенном построении первообразной и дальнейшем использовании формулы (2.3.2). Вторые же позволяют непосредственно найти числовое значение интеграла, основываясь на известных значениях подынтегральной функции (а иногда и ее производных) в заданных точках, называемых узлами. В настоящей главе мы остановимся лишь на численных методах интегрирования функции. Сам процесс численного определения интеграла называется квадратурой, а соответствующие формулы – квадратурными формулами.
В зависимости от способа задания подынтегральной функции будем рассматривать два различных в смысле из реализации случая численного интегрирования.
Задача I. На отрезке a,b в узлах xi заданы значения fi некоторой функции f, принадлежащей определенному классу F. Требуется прибли-
67
женно вычислить интеграл (2.3.1) и оценить погрешность полученного значения.
Так обычно ставится задача численного интегрирования в том случае, когда подынтегральная функция задана в виде таблицы.
Задача II. На отрезке a,b функция f x задана в виде аналитического
выражения. Требуется вычислить интеграл (2.3.1) с заданной предельно допустимой погрешностью .
Используемые в алгоритмах обеих задач квадратурные формулы строятся, как уже было сказано, на основании тех или иных критериев, определяющих положение узловых точек и величины весовых множителей. Такими критериями могут быть: представление интеграла в виде интегральной суммы; аппроксимация подынтегральной функции (например, многочленом)
И последующее интегрирование аппроксимирующей функции; требование, чтобы формула (2.3.3) была абсолютно точной для определенного класса функции, и др.
2.4. Простейшие квадратурные формулы
Формулы прямоугольников. Как известно, определенный интеграл в силу своего построения есть предел интегральных сумм:
|
|
b |
|
n |
(2.4.1) |
|
|
f (x) dx lim |
hi f ( 1), |
||
|
|
a |
max hi 0 i 1 |
|
|
каждая из |
которых |
соответствует |
некоторому разбиению Dn: |
||
a x0 x1 ... xn b |
отрезка |
[a,b] и |
произвольному |
набору точек |
|
i xi 1, xi |
для каждого разбиения; hi xi xi 1. |
|
Ограничиваясь конечным числом слагаемых в правой части равенства (2.4.1) и принимая в качестве набора i те или иные значения аргумента из
отрезков [xi 1, xi ], можно получить различные формулы приближенного интегрирования. Так, принимая в качестве набора i значения левых или правых концов отрезков [xi 1, xi ] , получим соответственно формулу левых
или правых прямоугольников (hi=1/n=const):
b |
n 1 |
1 |
|
|
I f (x) dx (b a) |
n |
fi 1П , |
(2.4.2) |
|
a |
i 0 |
|
|
|
b |
n |
1 |
|
|
I f (x) dx (b a) |
fi 1П. |
(2.4.3) |
||
a |
i 0 |
n |
|
|
68

Название этих формул связаны с их геометрической интерпретацией. Если в плоскости xOy построить кривую y=f (x), разбить отрезок [a,b] на n частей точками хi сетки Dn, то формула левых прямоугольников в качестве приближенного значения интеграла даст суммарную площадь заштрихованных прямоугольников на рис. 2.1; а формула правых прямоугольников – суммарную площадь заштрихованных прямоугольников на рис. 2.2.
Пример 1. С помощью формул левых и правых прямоугольников
9 |
dx |
|
|
|
вычислить |
|
, пологая n=4. |
||
x |
2 |
|||
1 |
|
|||
|
|
|
Зная пределы интегрирования а=1 и b=9, находим шаг h=(b–a)/n=2; тогда точками разбиения служат х0=1, х1=3, x2=5, x3=7, x4=9, а значения подынтегральной функции f(x)=1/(x+2) в этих точках таковы:
y0 f (x0 ) 1 / 3; y1 f (x1) 1 / 5; y2 f (x2 ) 1 / 7; y3 f (x3 ) 1 / 9; y4 f (x4 ) 1 / 11.
Рис. 2.1
Рис. 2.2
69
Далеенайдемчисловоезначениеинтеграла, пользуясьформулой(2.4.2):
I |
Л |
b a |
( y |
0 |
y |
y |
2 |
y |
) 2 |
|
1 |
1 |
1 |
1 |
|
1,6024. |
|
n |
|
1 |
|
3 |
|
|
3 |
5 |
7 |
9 |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
Если же вычисление определенного интеграла произвести по формуле
(2.4.3), то получим:
I |
|
b a ( y |
y |
|
y |
y |
|
) 2 |
|
1 |
1 |
1 |
|
1 |
|
|
1,1053. |
||
П |
2 |
4 |
|
|
|
|
|
|
|||||||||||
|
n |
1 |
|
3 |
|
|
5 |
7 |
9 |
|
11 |
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
Наиболее часто используемой формулой, основанной на идее представ-
ления определенного интеграла в виде интегральной суммы, является фор- |
||||||||
мула прямоугольников, где в качестве i |
берут середины отрезков xi 1, xi . |
|||||||
Для равномерной сетки hi h |
эта формула имеет следующий вид: |
|
||||||
|
|
|
|
b |
|
|
n |
|
|
|
|
|
I f (x) dx b |
a fi 1/ 2 In , |
(2.4.4) |
||
|
|
|
h ; |
a |
|
|
n i 1 |
|
где f |
i 1/2 |
f x |
x a, |
x |
b . |
|
|
|
|
i |
|
0 |
n |
|
|
|
|
|
|
|
2 |
|
|
|
|
|
Найдем выражение для остаточного члена приближенной формулы (2.4.4). С этой целью представим интеграл, входящий в левую часть соотношения (2.4.4), в виде суммы:
|
|
|
|
b |
|
|
|
n |
|
xi |
|
|
|
|
|
|
|
|
|
f (x) dx |
|
f (x) dx . |
(2.4.5) |
||||||||
|
|
|
|
a |
|
f(x) |
i 1 xi 1 |
|
|
|
|
||||
Предполагая, что |
|
функция |
|
дважды |
дифференцируема, т.е. |
||||||||||
f C2 a,b , |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
xi 1, xi формулу |
запишем для функции f(x) на каждом из отрезков |
|||||||||||||||
Тейлора с остаточным членом в форме Лагранжа: |
h 2 |
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
x x |
|
|||
|
|
|
x |
|
h |
|
|
|
|
|
i |
|
|
||
f (x) f |
i 1/2 |
|
x |
f |
|
|
|
|
|
2 |
|
f ( ); |
|||
|
|
|
|
|
|||||||||||
|
|
|
i |
2 |
|
i 1/2 |
|
|
2 |
|
|
i |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
i (xi 1, xi ). |
|
|
|
(2.4.6) |
Подставим в правую часть соотношения (2.4.5) вместо функции f ее представление (2.4.6) и выполним интегрирование, используя вторую теорему о среднем значении функции:
b |
1 |
n |
h |
3 |
n |
f (x) dx (b a) |
fi 1/2 |
|
f ( i ); |
||
|
|
|
|||
a |
n i 1 |
24 i 1 |
i (xi 1, xi ).
70