ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Государственное образовательное учреждение высшего профессионального образования «Н...
8 downloads
153 Views
1MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Государственное образовательное учреждение высшего профессионального образования «Нижегородский государственный университет им. Н.И. Лобачевского»
ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ И ИНТЕГРИРОВАНИЕ Учебно - методическая разработка
Рекомендовано методическим советом факультета вычислительной математики и кибернетики для студентов высших учебных заведений, обучающихся по направлению подготовки 010200 «Прикладная математика и информатика»
Нижний Новгород 2006
УДК 519.6 ББК 22.19
ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ И ИНТЕГРИРОВАНИЕ: Учебно – методическая разработка /Сост. А. Л. Калашников, В. Н. Фокина, А. М. Федоткин. Н. Новгород: ННГУ, 2006. 45 с.
Разработка содержит задачи и методические указания для их решения по разделу курса численных методов. Работа будет полезна при проведении практических занятий по численным методам и самостоятельного изучения на факультете ВМК. Составители: доцент
каф. ЧиФА ф-та
ВМК ННГУ
А.Л. Калашников
ассистент каф. ЧиФА ф-та ВМК ННГУ В.Н. Фокина, ассистент каф. ЧиФА Ф-та ВМК ННГУ А.М. Федоткин.
Рецензент: доцент каф. ЧМФМП ННГУ, канд. физ.-мат. наук В.С. Кротова
УДК 519.6 ББК 22.19
Нижегородский государственный университет им. Н И. Лобачевского, 2006
3
ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ К численному дифференцированию приходится обращаться, когда вычисляют производные от функций заданных таблично или непосредственное дифференцирование затруднено. Последнее, например, возникает при сложном аналитическом виде функции. Тогда
её
производную
интерполируем,
а
за
интерполирующей
представляя f ( x) = P ( x) + R ( x) , где
производную
принимаем
функции.
Так
f (x) искомая функция, а
P(x) интерполирующая и R(x) остаток, то дифференцируя k - раз ,
имеем f (k) ( x) = P ( k ) ( x) + R ( k ) ( x) . Считаем, что f ( k ) ( x) ≈ R ( k ) ( x) с точностью до R ( k ) ( x) . Следует отметить, что, вообще говоря, если остаток R( x) ≈ 0 , то R ( k ) ( x) может быть достаточно большим. § 1. Формула численного дифференцирования с применением интерполяционного многочлена. Поскольку таблично заданная функция приближается, в частности, интерполяционным многочленом, то естественно ее производную находить через производную этого многочлена. 1. Неравноотстоящие узлы. Здесь, например, можно брать либо многочлен Ньютона или Лагранжа. Пусть интерполирующая функция многочлен
Ньютона для неравноотстоящих
узлов:
N ( x) = f ( x0 ) + ( x - x0 ) f ( x0 , x1 ) + K + ( x - x0 )K( x - xn -1 ) f ( x0 , xn )
(1)
где f ( xk ) - значение таблично заданной функции в узлах x k , k = 0, n . Введем обозначения: x - x j = α j . Тогда формулу (1) можно
переписать в удобном виде:
4
N n ( x) = f ( x0 ) + α 0 f ( x0 , x1 ) + K + α 0 ⋅ α1 Kα n -1 f ( x0 ,K, xn ) .
(2)
Здесь f ( x0 , x1 ,K, xn ) - разделённая разность. Дифференцируя N (x) , получаем Nn′ ( x) = f ( x0 , x1 ) + (α0 + α1 ) f ( x0 , x1, x2 ) + (α0α1 + α0α 2 + α0α3 ) ⋅ ⋅ f ( x0 , x1, x2 , x3 ) + K + (α0α1 + K + α n - 2 + K + α0α 2 ⋅K⋅ α n-1 ) f ( x0 ,K, xn )
Полагаем, что приближённо
(3)
f ′( x) ≈ N n′ ( x) для x ∈ [ x 0 , x n ] при
x 0 < x n . Введем функцию wn ( x) = ( x - x0 ) K ( x - xn ) . Тогда остаток Rn′ ( x) = wn′ ( x) ⋅ f ( x, x0 , K , xn ) + wn ( x) ⋅ f ( x, x, x0 , K , xn )
(4)
где Rn ( x) = wn ( x) ⋅ f ( x, x0 , K , xn ) - остаток для формулы Ньютона. Если
же
функция
дифференцируема
на
f (x) [ a, b]
будет -
( n + 2)
отрезке
раза
непрерывно
расположения
узлов
интерполяции,то f ( n +1) (ξ 0 ) f ( n + 2 ) (ξ1 ) Rn′ ( x) = wn′ ( x) ⋅ + wn ( x) ⋅ , (n + 1)! (n + 2)
(5)
где ξ 0 , ξ 1 - некоторые “средние” точки из [a, b] . В общем случае для m
- ой производной при неравноотстоящих узлах имеем:
N ( m ) ( x) = m! f ( x0 , x1 ,K, xn ) + (α 0 + α1 + K + α m ) f ( x0 ,K, xm +1 ) +
+ (α 0α1 + α 0α 2 + K + α mα m +1 ) f ( x0 ,K, xm +1 ) + K +
(6)
+ (α 0 ⋅ α1 ⋅ K ⋅ α n - m + K + α m +1 ⋅ α m + 2 ⋅ K ⋅ α n -1 ) f ( x0 , x1 ,K, xn )
Тогда полагаем приближённо f m ( x) ≈ N n ( x) для x ∈ [ x 0 , x1 ] . При (m)
этом остаток для m - ой производной будет Rnm(x) =
n
∑
j =0
( j) n j Cm( f (x, x0,K, xn )) wn(m- j) (x) = j =0
∑
m! f (1 x,K , x, x0,K, xn ) ⋅ wnm- j(x) . (7) 2 3 (m - j)! j +1раз
Если предположить нужное количество непрерывных производных у f , то погрешность вычисленная для m - ой производной /остаток/
5
Rn( m ) ( x)
=
n
m!
∑ (m − j )!⋅(n + j + 1)! ⋅ f (n + j +1) (ξ j ) ⋅ wn( m − j ) ( x) ,
(8)
j =0
где ξ j - некоторые точки, заключенные в интервале между наибольшим и наименьшим из чисел x 0 , x1 , K , x n , x . Отметим, что вместо многочлена Ньютона можно использовать и многочлен Лагранжа. Тогда f ( m) ( x) ≈ L(nm) ( x) , а остаточный член для этого случая вычисляется по (8). Пример 1. Найти приближённо y ′ при x = 2 для y = x . Решение. x0 = 1,69
на
Построим отрезке
интерполирования
интерполяционный
[1,69;2,25] .
Возьмём
полином n=2
и
для узлы
x0 = 1,69 , x1 = 1,96 , x2 = 2,25 . Тогда f ( x0 ) = 1,3 ,
f ( x1 ) = 1,4 , f ( x2 ) = 1,5 . Построим таблицу разделённых разностей: x
y
1-ая
2-ая
1,69
1,3
0,37
-0,05
1,96
1,4
0,34
2,25
1,5
Возьмём многочлен Ньютона интерполирования вперёд: N 2 ( x) = 1,3 + 0,37 ⋅ ( x - 1,69) - 0,05 ⋅ ( x - 1,69)( x - 1,96)
(9)
Тогда производная N 2′ ( x) будет N 2′ ( x) = 0,37 - 0,05(2 x) - 3,65
(10)
и N 2′ ( x) = 0,3535 . Отметим, что значение ( x )′x = 2 ≈ 0,35355 . 2. Производная для равноотстоящих узлов. Пусть h – шаг таблицы. Возьмем формулу Ньютона для равных промежутков:
6
N n ( x) = N ( x0 + th) = f 0 + tf 11 + K + 2
где f 0 - значение f ( x0 ) , а f 11 , f12 ,
t (t - 1) K (t - n + 1) n fn , 2 n!
K
(11)
конечные разности и число
2
t = ( x - x 0 ) h . Тогда имеем 2t - 1 2 3t 2 - 6t + 2 3 N n′ ( x) = h ( f 1 + f1 + f 3 + K) , 2 2 2! 3! -1
1
N n′′ ( x) = h - 2 ( f12 +
(12)
6t - 6 3 12t 2 - 36t + 22 4 f3 + f 2 + K) . 3! 2 4!
Остаточный член для каждой из этих формул (12) можно вычислить или оценить по равенствам (7), (8). Отметим, что в узлах значения производных выглядят более просто. Например, для x = x 0 или t = 0 N n′ ( x0 ) = h -1 ( f 1 - 12 f12 + 13 f 3 + K) , 1 2
(13)
3 2
N n′′( x0 ) = h -2 ( f12 + 2 f 3 + 1211 f 24 + K) . 3 2
Для вычисления значения производной таблицы
целесообразно
применять
f ′( x) в начале
формулу
Ньютона
интерполирования вперёд, а для конца таблицы интерполирования назад. При аргументе
x
в центре таблицы или вблизи него можно
использовать многочлены с центральными разностями. Такое объясняется тем, что сами многочлены в этих случаях лучше аппроксимируют функцию f ( x) . Как практически оценивать погрешность, возникающую при численном дифференцировании. Для этого имеется следующая рекомендация. Общая погрешность вычисления производной может рассматриваться как сумма погрешности усечения / то есть
7
отбрасывания остаточного члена интерполяционной формулы / и погрешности округления. Если f ( x) задана таблично, то для оценки
погрешности
усечения
нельзя
воспользоваться
аналитическими представлениями (7), (8) остаточных членов, так как надо уметь оценить высшие производные функции f ( x) , которые для табличной функции могут быть и неизвестны. Тогда на практике
для
оценки
погрешности
усечения
обычно
руководствуются следующими соображениями. Предположим, что рассматриваемая f ( x) не имеет быстро колеблющихся составляющих. Тогда малость величин разностей определённого порядка свидетельствует о достаточно хорошем приближении этой функции интерполяционным многочленом. Если разности некоторого порядка различаются меньше, чем на величину погрешности их округления, то эти разности считают практически постоянными величинами. Разности более высоких порядков в расчет не принимают и считают, что погрешность усечения не превосходит единицы младшего разряда значений yk = f ( xk ) ,
делённой
на
h.
Если
формулу
численного
дифференцирования обрывают раньше чем указано выше, то отброшенные члены служат для оценки погрешности усечения. Для
исследования
использовать
обычные
погрешности правила
округления
округления.
можно
Отметим,
что
погрешность округления у формул численного дифференцирования обратно пропорциональна h m , где m - порядок производной. При этом
она
/погрешность/
производной функции f ( x) .
увеличивается
с
ростом
порядка
8
Таким
образом,
дифференцирования,
с
уменьшением
погрешность
шага
численного
h
округления
возрастает,
погрешность же усечения как правило, убывает. Поэтому при вычислениях
по
формулам
численного
дифференцирования
стараются выбрать оптимальный шаг расчёта. Пример 2. Вычислить производную функцию Струве 0-го индекса H 0 ( x) в точке x = 7,5 , если H 0 ( x) задана таблицей:
x
y
Δ1 y
Δ2 y
Δ3 y
Δ4 y
Δ5 y
Δ6 y
7,50
0,2009
49
0
-1
1
0
-3
7,52
0,2058
49
-1
0
1
-3
7
7,54
0,2107
48
-1
1
-2
4
-9
7,56
0,2155
47
0
-1
2
-5
7,58
0,2202
47
-1
1
-3
7,60
0,2249
46
0
2
7,62
0,2295
46
-2
7,64
0,2341
44
7,66
0,2385
Здесь шаг h = 0,02 и все числа в разностях Δ1 y , Δ2 y ,
K
надо
умножить на 10 -4 . Решение.
Согласно
числам
в
таблице,
абсолютная
погрешность исходных значений функции H 0 ( x) не превосходит величины ε = 0,510-4 . Применяя правило вычисления абсолютной погрешности разности, находим, что абсолютная погрешность разности k-го порядка оценивается величиной 2k * ε . Из таблицы видно, что разности 2-го порядка и выше различаются меньше чем
9
на величину погрешности их округления. Поэтому в формуле (12), которую здесь можно применить при t = 0 , имеем y 0′ = f ′( x 0 ) ≈ h -1 (Δy 0 - 12 Δ2 y 0 + K + (-1) n
1 n
Δn y 0 ) .
Для подсчёта f ′( x0 ) = H 0′ (7,5) , где x0 = 7,5 , достаточно взять два первых члена. Отсюда приближённое значение H 0′ (7,5) ≈ 0,245 . При этом погрешность усечения оценивается величиной 1 max Δ3 y 3h
1 ⋅ 2 ⋅ 10-4 = < 0,34 ⋅ 10- 4 , 0,02
а погрешность округления величиной 22 ⋅ ε 4 ⋅ 0,5 ⋅ 10-4 - 2 10 . = 0,02 h
Таким образом, результат получился в пределах погрешности округления. 3.Безразностные формулы численного дифференцирования с применением случаях
интерполяционного
удобнее
многочлена.
выражать
В
формулы
некоторых численного
дифференцирования не через разности, а непосредственно через значения
функции.
Для
получения
таких
формул
удобно
пользоваться, например, формулой Лагранжа. Проиллюстрируем это на ней при равноотстоящих узлах интерполяции. Как известно таблично заданную функцию для равномерной сетки узлов с шагом h
можно представить в виде суммы:
(-1) n t K (t - n ) f ( x) = n!
n
(-1) j C nj y j
j =0
t-j
∑
+ h n +1 ⋅ t K (t - n ) f ( x, x 0 , K , x n ) .
(14)
Здесь первое слагаемое – многочлен Лагранжа для равноотстоящих узлов, а 2-ое остаток с использованием разделённой разности
10
f ( x, x0 , x1 , K , xn ) . Величина t = ( x - x 0 ) / h и x = x0 + th ,
Дифференцируя
один
раз,
получим
y j = f (xj ).
для 1-ой производной
выражение: -1
f ′( x) = h ⋅
n
∑
j =0
(-1) n + j ⋅ C nj ⋅ yj n!
′ ⎛ t ⋅ (t - 1) ⋅ K ⋅ (t - n ) ⎞ ⎟⎟ + ⋅ ⎜⎜ t j ⎝ ⎠
(15)
+ h n ⋅ f ( x, x0 ,K, xn )(t (t - 1)K(t - n ))′ + h n +1 ⋅ f ( x, x, x0 ,K, xn ) ⋅ t (t - 1)K(t - n ) .
Для 2-ой производной будем иметь: f ′′( x) =
1 h2
(-1) n + j C nj t (t - 1) K (t - n ) yj ⋅( )′ + n! t- j
n
∑
j =0
(16)
+hn-1 ⋅ f (x, x0,K, xn)(t(t -1)K(t -n))′ +2hn ⋅ f (x, x0,K, xn)⋅(t(t -1)K(t -n))′ +2hn+1 f (x, x, x0, x1,K, xn).
Нетрудно получить выражения и более старших производных. Для узла x = x k имеем значения f ′( xk ) , f ′′( xk ) в узлах интерполяции. При
наличии
у
функции
f (x)
нужного
количества
производных, можно получить более простой вид остаточного члена и саму формулу численного дифференцирования. Например, при x = x k , то есть f ′( x k ) =
1 h
t = k , получаем для 1-ой производной:
(-1) n + j C nj y j t (t - 1) K (t - n ) ( ) ′t = k + n! t- j
n
∑
j =0
f n +1 (ξ ) + h ⋅ (t (t - 1)K(t - n ))′t = k ⋅ , (n + 1)! n
(17)
где точка ξ ∈ [a, b] - отрезку интерполяции. Аналогично из (16) при x = x k или соответственно t = k получаем для производной n
f ′′( xk ) = h ⋅ ∑ -2
j =0
( n+1) (-1) n+ j ⋅ Cnj ⋅ y j ⎛ t ⋅ (t -1) ⋅K⋅ (t - n) ⎞ ″ (ξ1k ) n-1 f ⎟⎟ t =k +h ⋅ ⋅ ⎜⎜ ⋅ (18) + n! t j ( n 1 )! ⎝ ⎠
11
⋅ ((t (t - 1) K (t - n))′t′= k + 2h n ⋅ f ( n + 2 ) (ξ 2 k )(t (t - 1) K (t - n))′t = k /( n + 2)!
где ξ 1k , ξ 2 k - некоторые “средние” точки из [a, b] . Пример 3. Получим выражения для 1-ой и 2-ой производной при n = 2 или три точки. Тогда из (17), (18) очевидно имеем: 2
y0′ =
1 (-3 y0 2h
+ 4 y1 - y 2 ) + h3 f ′′′(ξ 0 ) ;
y1′ =
1 ( y2 2h
- y 0 ) - h6 f ′′′(ξ1 ) ;
y2′ =
1 ( y0 2h
- 4 y1 + 3y 2 ) + h3 f ′′′(ξ 2 ) ,
2
2
где ξ 0 , ξ 1 , ξ 2 ∈ [ x 0 , x 2 ] , а также 2
y0′′ =
1 h2
( y0 - 2 y1 + y 2 ) - hf ′′(ξ10 ) + h6 f ( 4) (ξ 20 ) ,
y1′′ =
1 h2
( y0 - 2 y1 + y 2 ) - h12 f ( 4) (ξ11 ) ,
y2′′ =
1 h2
( y0 - 2 y1 + y 2 ) + hf ′′(ξ 21 ) - h6 f ( 4) (ξ 22 ) ,
2
2
где ξ 10 , ξ 20 , ξ11 , ξ 21 , ξ 22 ∈ [ x 0 , x 2 ] Рассмотрим, в частности, таблицу ln x: x
340
350
360
y
2,531
2,544
2,556
Требуется приближённо найти производную lg′(340) , а также оценить погрешность вычисления. Решение. y0′ = lg′ 340 =
где
Так
1 (-3 ⋅ 2,531 + 2⋅10
ξ 0 ∈ [340,360] .
точностью до
10 2 3
как
шаг
h = 10 ,
то
имеем
2
4 ⋅ 2,544 - 2,556) + 103 lg′′′ξ 0 ,
Подсчитывая,
получаем
y0′ = 0,00135
с
lg′′′(ξ 0 ) . Это значение можно оценить. Имеем
12
lg′′′ξ 0 = 2 ⋅ (ξ 03 ⋅ ln10)-1 ≤ 2 ⋅ (3403 ⋅ ln10)-1
поскольку ξ 0 ∈ [340,360] и функция погрешность
ρ
для
y 0′
будет
x -3 - убывающая.Тогда
оцениваться
неравенством
ρ < 2 ⋅ 102 (3 ⋅ 3403 ln10)-1 ≈ 0,56 ⋅ 10-5 . §2. Метод неопределённых коэффициентов 1. Этот метод относится к безразностным построением формул численного дифференцирования, то есть без конечных разностей. Для этого записываем искомую формулу в виде: y (k ) ( x p ) =
n
∑
j =0
C (j p ) y j + R n ( f ) ,
(19)
где C (j p ) - коэффициент формулы численного дифференцирования, а y j = f ( x j ) и Rn ( f ) - остаточный член. Далее подбираем C (j p ) из
условия Rn ( f ) = 0 , когда f ( x) = 1, x,K, x n . Тем самым получаем её точной для многочленов до n-ой степени. Отсюда имеем систему линейных
алгебраических
уравнений
C0( p ) + C1( p ) + K + Cn( p ) = 0 ,
для
C (j p ) :
(20)
C0( p ) x0 + C1( p ) x1 + K + Cn( p ) xn = 0 ,
………………......... C0( p ) x0k -1 + C1( p ) x1k -1 + K + Cn( p ) xnk -1 = 0 ,
C0( p ) x0k + C1( p ) x1k -1 + K + Cn( p ) xnk = k!, C0( p ) x0k +1 + C1( p ) x1k +1 + K + Cn( p ) xnk +1 = (k + 1)! x p
……………………. C0( p ) x0n + C1( p ) x1n + K + Cn( p ) xnn = n(n - 1)K(n - k + 1) x n - k .
Определитель системы (20) является определителем Вандермонда.
13
Поэтому она имеет единственное решение C (j p ) с j = 0, n . Далее из (19) найдём значение производной y ( k ) ( x p ) в узле x p , где p = 0, n . Пример 4. Пусть k = 1 и n = 2 . Тогда у нас будут узлы x 0 , x1 , x 2 и система (20) для узла x 0 имеет вид: (0) 0
C
+C
( 0) 1
+C
( 0) 2
= 0,
C0( 0) x0
+ C1( 0) x1
+ C2( 0) x2
= 1,
2
∑ Ci(0) xi2 = 2 x0 . i =0
Для узла x1 получаем 2
C0(1) + C1(1) + C2(1) = 0 , C0(1) x0 + C1(1) x1 + C2(1) x2 = 1 , ∑
i =0
Ci(1) xi2 = 2x1 .
Для узла x 2 имеем C0( 2 ) + C1( 2 ) + C2( 2 ) = 0 , C0( 2 ) x0 + C1( 2 ) x1 + C2( 2 ) x2 = 1, C0(2) x02 + C1(2) x12 + C2(2) x22 = 2x2
Из этих уравнений найдем C (j p ) и тогда для таблично заданной функции y j = f ( x j ) производная приближённо находится как y′( x p ) ≈
2
∑ C (j p ) y j
p = 0,1,2 .
j =0
Отметим, что для равномерной сетки узлов с шагом h остаток будет Rn ( f ) = o(h n +1- k ) . Это будет показано в п. 2. для достаточно гладкой функции y = f ( x) . 2. Существует ещё один способ приближённого вычисления производной любого порядка через безразностную формулу с заданной точностью для достаточно гладкой функции. Итак, пусть функция u ( x) имеет требуемую гладкость. Надо заменить её производную u ( k ) ( x) k-го порядка в узле x = x j на приближение в виде некоторой суммы её значений. Полагаем сетку
14
равномерной с шагом h . Запишем равенство u
(k )
-k
( x) = h ⋅
s2
∑ as ⋅ u ( x + sh) + o(h p ) ,
(21)
s = -s1
где p - порядок погрешности аппроксимации, а o(h p ) - остаточный член формулы (21), a s - неизвестные коэффициенты. Подберём не зависящие от h числа a s для s = -s1 , - s1 + 1 , чтобы
K,
таким образом,
равенство (21) оказалось справедливым.
Пределы
суммирования s1 ≤ 0 и s2 ≥ 0 можно взять произвольными, но так, чтобы k + p - 1 ≤ s1 + s2 . Используя формулу Тейлора разложения для
u ( x + sh) ,
функции
получим u( x + sh) = u( x) +
(s ⋅ h) s⋅h ′ u ( x ) + K + 1!
k + p -1
(k + p -1)!
( k + p -1)
(u( x))
(s ⋅ h)k + p (k + p) u (ξs ) (22) + (k + p)!
где ξ s - некоторое “среднее” число согласно представлению остатка в форме Лагранжа. Далее, подставим выражение (22) в (21) и приведём подобные члены. Тогда имеем u (x) = h (∑ (k)
-k
u(k+ p-1)(x) ⋅ hk+ p-1 as +K+ ∑ (k + p -1)! s=-s s2
1
s2 s=-s1
as s
k+ p-1
hp )+ ∑ (k + p)!
s2
sk+ pasu(k+ p) (ξs )
s=-s1
. (23) s Приравнивая коэффициенты при одинаковых степенях h , где s = -k,-k + 1,K, p - 1 в левой и правой частях равенства (23), получим систему линейных алгебраических уравнений для as : s2
s2
s=-s1
s=-s1
∑as = 0,K,∑
(24)
s as = 0,∑ k -1
s2 s=-s1
s as = k!, ∑ k
s2 s=-s1
s
k +1
as = 0,K, ∑
s2
sk + p-1as = 0,
s=-s1
15
s1 + s2 = k + p - 1 , то система (24) имеет единственное
Если
решение, так как её определитель является определителем Вандермонда и отличен от нуля. Если же k + p ≤ s1 + s2 , то система (24) имеет бесконечное число решений. Тогда для формулы (21) достаточно взять какой-либо набор a s . В обоих этих случаях, отбрасывая
в
(21)
остаток, получаем в узле x j приближённое
значение: u
(k )
s2
-k
(x j ) ≈ h ⋅
∑ asu ( x j + sh) до o(h
p
).
s = -s1
Замечание. Случай п. 1. соответствует s1 + s2 = n , где n + 1 число всех узлов x j и коэффициенты Csj = h -k as для каждого узла свои. Тогда из равенства n = k + p - 1 получаем порядок p = n - k + 1 и, соответственно, в формуле (19) остаток Rn ( f ) = o(h n - k +1 ) . Пример
5.
Получить,
опираясь
на
равенство
(21)
приближение для первой и второй производной. Решение. Случай 1-ой производной. Очевидно, существует одно разностное соотношение h -1 (a0u ( x) + a1u ( x + h)) , где x = x j узел, который приближает u′(x) с первым порядком по h . Это вытекает
из
равенств
s1 + s2 = 1 = k + p - 1 ,
что
k = 1, s1 = 0, s2 = 1, p = 1 ,
приводит
а
также
по
к единственному решению
системы для неизвестных a0 , a1 : a0 + a1 = 0 0 ⋅ a0 + 1 ⋅ a1 = 1!
Решая
её,
находим
a0 = -1, a1 = 1 .
Тогда
производная
16
u′( x) = h -1 (u ( x + h) - u(x)) + o(h)
для всякого узла x = x j и чтобы x j + h тоже было узлом. Среди выражений 2-го порядка точности вида h -1 (a1u ( x - h ) + a0u ( x) + a1u ( x + h)) , где x = x j и x + h, x - h - тоже узлы
сетки,
существует
не
одно
с
1-ым
порядком
точности.
Действительно, так как s1 = s2 = 1 , то при p = 1 и k = 1 получаем s1 + s2 = 2 = k + p .
Отсюда,
по
сказанному
выше,
имеем
бесконечный набор a s . Если же хотим получить 2-ой порядок, то полагаем p = 2, k = 1 и тогда имеем s1 + s2 = 2 = k + p - 1 . Но это приводит к единственности a s . Для последнего случая получаем систему
a-1 + a0 + a1 = 0 ,
- a-1 + 0 ⋅ a0 + a1 = 1!,
a-1 + 0 ⋅ a0 + a1 = 0
Из неё находим a1 = 0,5 , a0 = 0 , a-1 = 0,5 . Тогда выражение для производной u′( x) будет:
u′( x) = (2h)-1 ⋅ (u ( x + h) - u(x - h)) + o(h 2 ) .
Отбрасывая остаток o(h 2 ) , получаем с точностью до o(h 2 ) приближённую формулу: u′( x) ≈ (2h)-1 (u ( x + h) - u(x - h)) . Случай 2-ой производной. Для приближения
u′′(x)
порядком h 2 полагаем k = 2, p = 2 и s1 + s2 = 3 . Возьмём s2 = 2 .
с
s1 = 1,
s1 + s2 = 3 = k + p - 1 и числа a s для получения
Тогда
u′′( x) = h -2 (a-1u ( x - h) + a 0 u(x) + a 1u(x + h) + a 2 u(x + 2h))
будут
единственными. Для их нахождения решаем систему 2
∑
s = −1
2
a s = 0, ∑
s = −1
2
sa s = 0, ∑
s = −1
s 2 a s = 2! ,
2
∑
s = −1
s 3as = 0 .
Из неё получаем a1 = a-1 = 1, a0 = 2, a2 = 0 . Отсюда
u′′( x) = h -2 (u ( x + h) - 2u(x) + u(x - h)) + o(h 2 ) .
Отбрасывая
остаток,
17
имеем с точностью до o(h 2 ) приближение u′′( x) = h -2 (u ( x + h) - 2u(x) + u(x - h)) в узле x = x j . Здесь необходимо
также, чтобы числа x - h, x + h, x + 2h были узлами сетки таблицы значений функции u (x) . §3. Сплайны в численном дифференцировании функций. При численном дифференцировании можно использовать и приближение функции сплайном. Как известно, для функции f (x) заданной в узлах x k сплайн S m ( f , x) на каждом из отрезков [ x j , x j +1 ] есть многочлен m -ой степени: S m ( f , x) = pmj ( x) = a j 0 + a j1 x + K + a jm x m , j = 1, n - 1
и в
xj
его производные удовлетворяют условиям непрерывности:
(k ) (k ) pmj ( x j ) = pmj -1 ( x j ), k = 0, m - 1; S m ( f , xi ) = yi , j = 2, n - 2 .
Кроме того, могут быть ещё и дополнительные условия, например, граничные для производных от сплайна. Всё это необходимо для однозначного нахождения неизвестных a j 0 , a j1 ,K, a jm при j = 1, n - 1. Построив сплайн, приближённо полагают
f ′( x) ≈ pmj′ ( x)
для
аргумента x ∈ [ x j , x j +1 ] . Аналогично можно найти приближённо и 2ую и далее f ′′( x) ≈ p′mj′ ( x), f ′′′( x) ≈ p′mj′′ ( x),K . Для кубического сплайна с шагом сетки h при наличии у функции 4-х непрерывных производных справедливы оценки: f ( x) - S3 ( f , x) ≤ M 4 h 4 ; f ′( x) - S′3 ( f , x) ≤ M 4 h3 f ′′( x) - S′3′( f , x) ≤ M 4 h 2 ,
18
где норма берётся в пространстве C[a, b] , а постоянная M 4 удовлетворяет неравенству: f ( 4 ) ( x) ≤ M 4 на [a, b] - отрезке задания функции f (x) . Пример 6. Дана таблица функции y = f (x) : x
0
2
4
y
1,5
2,3
3,4
Требуется построить сплайн 2-го порядка и приближённо найти производную f ′(x) при x = 0,5 . Решение.
Запишем
сплайн
2-го
порядка
в
виде:
⎧⎪a 0 + a1 x + a 2 x 2 , x ∈ [0,2] S 2 ( f , x) = ⎨ ⎪⎩b0 + b1 ( x - 2) + b2 ( x - 2) 2 , x ∈ [2,4]
Для
его
построения
необходимо
найти
a 0 , a1 , a 2 , b0 , b1 , b2 . Очевидно с учётом равенства
6
неизвестных:
yk = S ( f , xk ) , где
x k - узлы, получаем a0 = 1,5 , b0 = 2,3 . Для нахождения же 4-х остальных неизвестных выведем 4-е линейных алгебраических уравнения. Первое получаем из равенства производной сплайна в точке “стыка” x = 2 : (a0 + a1 x + a2 x 2 )′ x = 2 = (b0 + b1 ( x - 2) + b2 ( x - 2) 2 )′ x = 2
Отсюда имеем уравнение: a1 + 4a2 = b1 . Далее, с учётом равенств yk = S 2 ( f , xk )
в
узлах
x1 = 2 ,
x2 = 4,
выводим
уравнения:
1,5 + 2a1 + 4a2 = 2,3 ; 2,3 + b1 ⋅ 2 + b2 ⋅ 22 = 3,4 . Последнее уравнение
можно, например, получить, задавая на концах граничное условие: S 2′ ( f , x0 ) = const или S 2′ ( f , x2 ) = const . Пусть S 2′ ( f , x0 ) = 0 . Тогда
19
имеем a1 + 2a2 ⋅ 0 = 0 или a1 = 0 . Окончательно получаем: a0 = 1,5 , a1 = 0 , b0 = 2,3 , и уравнения b1 = a1 + 4a2 , 2,3 = 1,5 + 2a1 + 4a2 , 3,4 = 2,3 + 2b1 + 4b2 . Производя вычисления, находим: a2 = 0,2 , b1 = 0,8 , b2 = −0,125 . В итоге имеем сплайн ⎧⎪1,5 + 0,2 x 2 , x ∈ [0,2] S 2 ( f , x) = ⎨ ⎪⎩2,3 + 0,8( x - 2) − 0,125( x - 2) 2 , x ∈ [2,4]
Для приближённого нахождения f ′(0,5) полагаем f ′(0,5) ≈ (1,5 + 0,2 x 2 )′ x = 0 ,5 = 1,7 .
Замечание. Отметим, например, что для приближённого нахождения
f ′(2,5) надо было бы аналогично использовать
сплайновый многочлен для участка [2,4] . ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ К численному интегрированию приходится обращаться, когда требуется вычислить определённый интеграл от функций, заданных
таблично,
или
непосредственное
нахождение
первообразной затруднительно. Последнее, например, возникает при сложном аналитическом задании подинтегральной функции, а также, если интеграл не берётся в элементарных функциях. В этом случае
можно,
в
частности,
искомую
функцию
f (x)
b
интерполировать и за определённый интеграл ∫ f ( x)dx взять a b
∫ P( x)dx . Здесь функция f ( x) = P( x) + R( x) , где P(x) , где P(x) a
интерполирующая функция, а R(x) - остаток интерполяции и x ∈ [ a, b] .
Очевидно,
погрешность
такого
приближённого
20 b
b
a
a
интегрирования будет ∫ R( x)dx и, если R( x) ≈ 0 , то ∫ R( x)dx ≈ 0 . Возможны
и
другие
способы
численного
интегрирования,
основанные на точности квадратурных формул для полиномов как можно большей степени. В дальнейшем, не оговаривая это особо, будем везде предполагать интегрируемость искомой функции f (x) . §1. ФОРМУЛА ЧИСЛЕННОГО ИНТЕГРИРОВАНИЯ С ПРИМЕНЕНИЕМ ИНТЕРПОЛЯЦИОННОГО МНОГОЧЛЕНА. Здесь
будем
рассматривать
формулы
численного
интегрирования для таблично заданной функции или, в случае её аналитического задания, табулирование этой функции. Тогда, как известно, приближённое равенство b
n
∫ f ( x)dx ≅ k∑= 0 Ak f ( xk )
(1)
a
называется квадратурной формулой, определяемой узлами x k и квадратурными коэффициентами Ak . Выражение в правой части (1) называют квадратурной суммой, а разность b
n
a
k =0
ρ n ( f ) = ∫ f ( x)dx − ∑ Ak f ( xk )
(2)
остаточным членом или остатком этой квадратурной формулы. Остаток, в иных случаях его называют ещё и погрешностью квадратурной формулы, зависит как от расположения узлов, так и от выбора Ak . 1. Общая квадратурная формула.
21
Пусть ϕ 0 ( x), ϕ1 ( x), K , ϕ n ( x) - система Чебышева линейно независимых функций на [a, b] . По ней строим интерполяционный многочлен n
Φ ( x) = ∑ Ciϕ i ( x)
(3)
i =0
совпадающий с f (x) в узлах xk ∈ [a, b] , где k = 0,K, n . Отметим,
что концы отрезка [a, b] могут и не входить в число узлов x k . Введём остаток для интерполяционного многочлена: Rn ( f ) = f ( x) − Φ ( x) , x ∈ [a, b]
(4) n
Как известно из теории интерполирования, Φ ( x) = ∑ f ( xk )Φ i ( xk ) , k =0
где функции ⎧1, xi = xk , k , i = 0,1,K, n Φ i ( xk ) = ⎨ ⎩0, xi ≠ xk
(5)
и являются, с учётом представления (3), линейной комбинацией функций ϕ 0 ( x), ϕ1 ( x), K , ϕ n ( x) . b
Пусть существуют величины Ak = ∫ Φ( x)dx . Тогда имеем a b
n
b
∫ f ( x)dx = k∑= 0 Ak f ( xk ) + ∫ Rn ( f )dx , a
(6)
a
b
где Ak = ∫ Φ k ( x)dx . Полагая приближённо a b
n
∫ f ( x)dx ≈ k∑= 0 Ak f ( xk )
(7)
a
получаем квадратурную формулу. Очевидно, её остаток b
ρ n ( f ) = ∫ Rn ( f )dx a
(8)
22
и
зависит
от
величины
погрешности
интерполяционного
многочлена. На практике в качестве функции f k (x) чаще всего используют следующие системы Чебышева: А. ϕ k ( x) = x k , k = 0,1,K, n ; Б. ϕ k ( x) = e α x , k = 0,1,K, n ; k
где
αk
-
некоторая
числовая
последовательность
попарно
различных действительных чисел; В.
ϕ 0 ( x) = 1 ,
ϕ1 ( x) = sin x ,
ϕ 2 ( x) = cos x ,
ϕ 3 ( x) = sin 2 x ,
K,
ϕ 2 n −1 ( x) = sin nx , ϕ 2 n ( x) = cos nx . В первом случае интерполирование называется алгебраическим, во втором - экспоненциальным, в третьем – тригонометрическим. Последнее применяется для приближения 2π
периодических
функций. С учётом вида функций ϕ k получаем соответствующие им квадратурные Ak . 2.Квадратурная формула на основе многочлена Лагранжа. Многочлен Лагранжа Ln ( x) строится для базисной системы
ϕ k ( x) = x k , k = 0,1,K, n , и функции Φ k (x) в этом случае легко вычисляются. Поэтому нетрудно получить квадратурную формулу n
в явном виде. Действительно, Ln ( x) = ∑ f ( xk )Φ k ( x) , где функции k =0
Φ k ( x) = wn ( x) ⋅ (( x − x k ) wn′ ( x k )) −1 .
(9)
Тогда квадратурные коэффициенты wn ( x) dx , ′ a ( x − x k ) wn ( x k )
b
Ak = ∫
(10)
Здесь wn ( x) = ( x − x0 )( x − x1 ) K ( x − xn ) , а x k - узлы интерполяции.
23
Очевидно, погрешность квадратурной формулы будет равна b
величине ρ n ( f ) = ∫ Rn ( x)dx , где Rn (x) - остаток для формулы a
Лагранжа. Например, если f (x) будет (n + 1) - раз непрерывно дифференцируема на [a, b] , то остаток f ( n +1) (ξ ) Rn ( x) = wn ( x) , где ξ = ξ ( x) ∈ [a, b] (n + 1)!
и соответственно погрешность 1 b ( n + 1) ρn ( f ) = ∫ f (ξ ) wn ( x)dx . (n + 1)! a
(11)
Тогда имеем равенство b
n
∫ f ( x)dx = k∑= 0 Ak f ( xk ) + ρ n ( f ) ,
(12)
a
где
коэффициенты
Ak
вычисляются
по
формуле
(10),
а
погрешность ρ n ( f ) - по (11). Оценим остаток ρ n ( f ) в случае f ( n + 1) ( x ) ≤ M n + 1 ,
где число M n +1 ≥ sup f ( n +1) ( x) на [a, b] .
Тогда,
очевидно, из (11)
ρn ( f ) ≤
M n +1 b M n +1 (b − a ) n +1 . ∫ wn ( x)dx ≤ (n + 1)! a (n + 1)!
(13)
Отметим, что оценкой (13) можно пользоваться для получения априорной погрешности квадратурной формулы b
n
a
k =0
∫ f ( x)dx ≈ ∑ Ak f ( xk ) . Если
пределы
интегрирования
(14) a,
b
являются
узлами
интерполяции, то квадратурная формула (14) называется формулой “замкнутого типа”, а если этого нет, то “открытого типа”.
24
Замечание. Очевидно, квадратурная формула (14) точна, если f ( x) = Ln ( x) , так как R n ( x) ≡ 0 , и поэтому ρ n ( f ) = 0 . Также она
будет точна для f ( x) = Pn ( x) , Pn (x) - любой многочлен n -ой степени, ибо в этом случае L n ( x) ≡ Pn ( x) . Легко проверить, что
ρ n ( f ) = 0 и для f (x) , являющейся многочленом степени меньше n -ой.
Основываясь
на
этом
принципе,
можно
получить
квадратурные коэффициенты Ak другим способом. Действительно, поскольку имеем ρ n ( x k ) = 0 для k = 0 , то n
n
n
k =0
k =0
k =0
I 0 = ∑ Ak ; I 1 = ∑ Ak x k ; K ; I n = ∑ Ak x kn ,
(15)
k +1 k +1 ( b − a ) а числа I k = ∫ x dx = , где k = 0, n . Тогда из (15) – (k + 1) a b
k
системы линейных алгебраических уравнений находим Ak для всех k = 0,1,K, n .
Очевидно,
определитель
системы
(15)
равен
Δ = ∏ ( x k − x j ) и является определителем Вандермонда, который k> j
отличен от нуля. Отсюда имеем единственное решение Ak системы (15). 3. Формулы Ньютона-Котеса. Это формулы с равноотстоящими узлами и шагом h = (b − a ) / n , а узлы x0 = a,K, xk = a + k ⋅ h,K, xn = b . Тем самым осуществляется деление отрезка [a, b] на n равных частей. Обозначим Yk = f ( x k ) , k = 0, n . Далее, используя для квадратурной формулы (14) многочлен Лагранжа с равноотстоящими узлами, получаем из (10) величины
25
(−1) n − k n t [ n +1] ⋅∫ Ak = h ⋅ dt , k!⋅(n − k )! 0 t − k
k = 0, n ,
(16)
где t = ( x − x0 ) / h . С учётом h = (b − c) / n имеем n [ n + 1] (−1) n − k t ⋅∫ Hk = h ⋅ dt , k = 0,1,K, n , n ⋅ k!⋅(n − k )! 0 t − k
и
Ak = (b − a ) H k .
Здесь
(17)
t [ n +1] = t (t − 1)K(t − n) .
Поскольку
Hk
безразмерны, то их можно подсчитать для любого h . Постоянные Hk
называют
коэффициентами Котеса. Их очевидные свойства:
n
∑ H k = 1, H k = H n − k .
(18)
k =0
С учётом связи между Ak и H k получаем квадратурную формулу, называемую формулой Ньютона-Котеса: b
n
∫ f ( x)dx ≈ (b − a ) ⋅ k∑= 0 H kYk .
(19)
a
Остаточный
член
этой
формулы
для
n
раз
непрерывно
дифференцируемой функции вычисляется по равенству (11) и имеет вид:
ρn ( f ) = h
n+2
f ( n +1) (α ) ⋅ t [ n +1] ⋅∫ dt , α = α (t ) ∈ [0, n] . (n + 1)! 0 n
(20)
Очевидно, для f ( n +1) ( x) ≤ M n +1 получаем из (20) оценку
ρ n ( f ) = M n +1 ⋅ h
n+2
t [ n +1] ⋅∫ dt . 0 ( n + 1)! n
(21)
Таким образом, отсюда можно получить априорную погрешность квадратурной формулы. 4. Частные случаи формулы Ньютона-Котеса.
26
Случай 1. Формула прямоугольника. Пусть n = 0 . Тогда функция f (x) приближается на [a, b] многочленом L0 ( x) = f ( x0 ) , где x0 =
a+b . Используя формулу (19), имеем 2
b
∫ f ( x)dx = (b − a) ⋅ f ( x0 ) + ρ 0 ( f ) .
(22)
a
Поскольку формула
(b − a ) ⋅ f ( x0 )
(22)
по
этой
есть площадь прямоугольника, то причине
называется
формулой
прямоугольника. Для дважды непрерывно дифференцируемой f (x) её погрешность имеет вид:
1b ρ 0 ( f ) = ∫ ( x − a) 2 ⋅ f ′′(ξ )dx , ξ = ξ ( x) ∈ [a, b] . 2a
(23)
Используя обобщённую теорему о среднем для определённого интеграла, получаем
1 (b − a)3 ρ 0 ( f ) = ⋅ f ′′(α ) ⋅ , α ∈ [ a, b ] . 2 3
(24)
Отсюда видно, что эта формула для применения мало годна из-за её большой, вообще говоря, погрешности остатка на больших отрезках [a, b] . Поэтому на практике используют её обобщённую формулу. Для этого разделим отрезок [a, b] на n равных частей длины
h = (b − a) / n и применим к каждому отрезку [ x k , x k +1 ] формулу (22): x k +1
* * h ∫ f ( x)dx = h ⋅ f ( xk ) + ρ k ( f ) , x k = x k −1 + 2
(25)
xk
Здесь в случае дважды непрерывно дифференцируемой функции остаток ρ k ( f ) = f ′′(α k ) ⋅ h3 / 6 . Тогда
27
h 3 n −1 ∫ f ( x)dx = h ⋅ k∑= 0 f ( x ) + ⋅ k∑= 0 f ′′(α k ) . 6 a b
n −1
(26)
* k
Известно [1] , [ 2] , что
h 3 n −1 h3 ⋅ n ρ ( f ) = ⋅ ∑ f ′′(α k ) = ⋅ f ′′(ξ ) , ξ ∈ [a, b] . = k 0 6 6 Тогда,
h = (b − a) / n ,
беря
получаем
(27)
обобщённую
формулу
прямоугольников (b − a )3 ⋅ f ′′(ξ ) , ξ ∈ [a, b] . ∫ f ( x)dx = h ⋅ k∑= 0 f ( x ) + 2 6⋅n a b
n −1
(28)
* k
Откидывая остаток, имеем приближённо с точностью до ρ ( f ) b
n −1
a
k =0
* ∫ f ( x)dx ≈ h ⋅ ∑ f ( xk ) .
(29)
Здесь x k* = x k −1 + h2 , где k = 0, n . Погрешность в (29) порядка h 2 . Случай 2. Формула трапеций. Пусть n = 1 . Тогда функция
f (x) на [a, b] заменяется интерполяционным многочленом L1 ( x) , построенным для значений f (a) , f (b) . Тем самым имеет формулу Ньютона-Котеса
в
простейшем
виде.
Её
коэффициенты
H 0 = H1 = 12 . Тогда интеграл b
∫ f ( x)dx = a
b−a ( f (a) + f (b)) + ρ1 ( f ) 2
(30)
или приближённо, после отбрасывания остатка, b
∫ f ( x)dx ≅ a
b−a ( f (a) + f (b)) . 2
Эта
квадратурная
формула
называется формулой трапеций. Её погрешность для
f ′′(x)
непрерывной будет
(b − a)3 ρ1 ( f ) = − ⋅ f ′′(η ) , η ∈ [a, b] . 12
(31)
28
Однако на практике обычно используется обобщённая формула трапеций. Отрезок [a, b] при этом делим на n частей. Тогда b
∫ a
n h h3 n f ( x) dx = ⋅ (( f ( x0 ) + f ( xn )) + 2 ⋅ ∑ f ( xk )) − ⋅ ∑ f ′′(η k ) , 2 12 k =1 k =1
(32)
где η k ∈ [ x k −1 , x k ] , x0 = a , x n = b , а xk = x0 + k ⋅ h и h = (b − a) / n . Действуя аналогично выводу предыдущей обобщённой формулы, имеем b
∫ a
n h f ( x)dx ≅ ⋅ (( f ( x0 ) + f ( xn )) + 2 ⋅ ∑ f ( xk )) + R (α ) , 2 k =1
(33)
где α ∈ [a, b] . Тогда, отбрасывая остаток, b
∫
f ( x)dx ≈
a
n h ⋅ (( f ( x0 ) + f ( xn )) + 2 ⋅ ∑ f ( xk )) 2 k =1
3 ′′ с точностью до ρ n ( f ) = − (b − a) ⋅ f (α )
(34)
12 ⋅ n
2
, то есть порядка h 2 .
Случай 3. Формула Симпсона. Пусть n = 2 . Тогда функция f (x) на
[a, b] заменяется параболой L2 ( x) . Имеем по формуле НьютонаКотеса
(b − a)3 ⎛a + b⎞ ( ) f x dx = ⋅ ( f ( a ) + 4 ⋅ f ⎜ ⎟ + f (b)) + ρ 2 ( f ) ∫ 3 2 a ⎝ ⎠ b
(35)
Если производная f ( 4 ) ( x ) непрерывна, то погрешность
(b − a)5 ( 4 ) ρ2 ( f ) = − ⋅ f (η ) , η ∈ [a, b] . 90
(36)
Для больших отрезков [a, b] , вообще говоря, ρ 2 ( f ) велико. Поэтому используется обобщённая формула Симпсона, получаемая также, как и обобщённые формулы прямоугольников и трапеций. Для этого разбивается [a, b] на 2n частей с шагом h = (b − a) / 2n .
29
На основе (35), (36) b
∫ a
b−a h5 n ( 4) f ( x)dx = ⋅ ( y0 + y2⋅n + 4 ⋅ σ 1 + 2 ⋅ σ 2 ) − ⋅ ∑ f (η k ) , 6⋅n 90 k =1
(37)
где η k ∈ [ x 2 k − 2 , x 2 k ] . На основе [1] , [ 2] получаем равенство b
∫ a
b−a n ⋅ h5 ⋅ f ( 4) (η ) , f ( x)dx = ⋅ ( y0 + y 2 ⋅ n + 4 ⋅ σ 1 + 2 ⋅ σ 2 ) − 6⋅n 90
(38)
где η ∈ [a, b] . Отбрасывая в (38) остаток, получаем b
∫ f ( x)dx ≈ a
b−a ⋅ ( y0 + y 2 ⋅ n + 4 ⋅ σ 1 + 2 ⋅ σ 2 ) 6⋅n
(39)
обобщённую квадратурную формулу Симпсона. Её погрешность порядка h 4 : ρ2n
n n (b − a)5 ( 4) ⋅ f (η ) и σ 1 = ∑ Y2⋅k −1 , σ 2 = ∑ Y2⋅k , а Yk = f ( xk ) . =− 180 ⋅ (2 ⋅ n) 4 k =1 k =1
(40) 5. Примеры на квадратурные формулы Ньютона-Котеса. Пример 1. Для n = 4 вычислить по обобщённой формуле 3
трапеций интеграл J = ∫ (2 + x) −1 dx . Оценить погрешность метода. −1
Решение. В нашем случае f ( x) = (2 + x) −1 и a = −1 , b = 3 , n = 4 . Тогда приближённо по (34) имеем J ≈ 1,6833 . При оценке
погрешности исходим из (33). Так как 0 < 2 ⋅ ( 2 + x ) −3 ≤ 2 , то (b − a )3 1 43 2 ′ ′ ρ4 ( f ) = − ⋅ f ( α ) ≤ ⋅ ⋅ 2 = ≈ 0,67 . 12 ⋅ n 2 12 4 2 3
(41)
Полученное приближённое значение интеграла будет избытком, ибо точное его значение ln 2 = 1,6094 . Итак, оценка (41) завышена.
30
Пример 2. Для n = 4 вычислить по формуле Симпсона 3
J = ∫ (2 + x) −1 dx и сравнить со значением примера 1. Оценить −1
погрешность метода. Решение. По обобщённой формуле Симпсона J ≈ 1,6222 . Так как
0 < 24 ⋅ ( 2 + x ) −5 = f ( 4 ) ( x ) ≤ 24 ,
то
по
(40)
45 8 ρ4 ( f ) ≤ ⋅ 24 = ≈ 0,54 . 180 ⋅ 44 15
получаем (42)
Итак, приближённое значение интеграла здесь точнее, чем в примере 1, хотя использовано одинаковое число операций. Оценка (42) завышена. Замечание к примерам 1 и 2. Если исходить из оценок погрешности обобщённых формул трапеций и Симпсона, то у приближённых значений нет ни одной верной цифры, ибо погрешность превосходит 0,5 . Это говорит о том, что первая перед запятой цифра сомнительна. Из сравнения же с точным значением получаем совпадение двух первых цифр. Это показывает также грубость априорных оценок (33), (40). Однако они годны для вычисления интеграла с заданной точностью. Рассмотрим теперь типы примеров на вычисление интегралов с заданной точностью, то есть надо определить здесь n . Пример 3. Вычислить с одной верной цифрой после запятой интеграл
4
J = ∫ (2 + x) −1 dx .
Выбрать
здесь
подходящую
0
квадратурную формулу. Решение. Естественно ожидать, что формула Симпсона даёт необходимую точность при меньших затратах вычислительного
31
труда по сравнению с правилом трапеций или прямоугольников. Действительно, 0 < 2 ⋅ ( 2 + x ) −3 = f ′′( x ) ≤ 0,25 и 0 < 24 ⋅ (2 + x) −5 = f ( 4 ) ( x) ≤ 0,75 на [0,4] . Тогда оценка остатка для
формулы трапеций будет
43 1 4 ρn ( f ) ≤ ⋅ = , 12 ⋅ n 2 4 3 ⋅ n 2
(43)
а для формулы Симпсона
45 3 4 42 ρn ( f ) ≤ ⋅ = ⋅ . 180 ⋅ n 4 4 3 ⋅ n 2 5 ⋅ n 2
(44)
Так как точность с одной верной цифрой после запятой означает, что погрешность ε ≤ 0,05 , то из неравенств (43), (44) видно, что следует взять n ≥ 2 . Очевидно, формула Симпсона точнее, чем трапеций. Действительно, если пользоваться формулой трапеций, то для достижения указанной в задаче точности достаточно потребовать 4 ⋅ (3 ⋅ n 2 ) −1 ≤ 0,05 . Поэтому можно взять n = 6 . Для формулы
же
Симпсона
4 ⋅ (3 ⋅ n 2 ) −1 ⋅ 4 2 ⋅ (5 ⋅ n 2 ) −1 ≤ 0,05
и,
следовательно, можно взять n = 4 . Применяя формулу Симпсона при n = 4 , имеем J ≈ 1,1. Отметим, что точное значение интеграла J = 1,098612 .
Замечание. Следует сказать, что формула Симпсона не всегда будет давать более точный результат, чем формула трапеций. Например,
для
функции
f ( x) = −25 ⋅ x 4 + 45 ⋅ x 2 − 8
имеем
1
∫ f ( x)dx = 4 . При n = 2 формула трапеций даёт точный результат
−1
при узлах x 0 = 1, x1 = 0 , x 2 = 1 . Но формула Симпсона при n = 2 не обеспечивает и знака интеграла, ибо для неё имеем значение равное
32
− 8 / 3 . Для увеличения точности формулы Симпсона здесь надо увеличить n . Вычисление определенного интеграла при округлении. Отметим, что в примерах 1-3 значения f ( xk ) вычислялись точно. Пример 4. Вычислить по формуле трапеций с двумя верными 1
знаками после запятой значение интеграла J = ∫ (1 + x 2 ) 2 dx . 0
Решение. Определяем сначала n . Нетрудно проверить, что π
((1 + x 2 ) −1 )( n ) = n!⋅ cos n +1 y ⋅ sin( n + 1) ⋅ ( y + ) , 2
где,
y = arctgx .
Отсюда
(45)
((1 + x 2 ) −1 ) 2 ≤ 2!
для
всех
x ∈ [0,1] .
Используя формулу остатка (31), имеем для требуемого n неравенство (12 ⋅ n 2 ) −1 ⋅ 2 ≤ 0,005 .Отсюда видно, что достаточно взять n = 10 . Составим
таблицу
значений
f ( x) = (1 + x 2 ) −1
в
узлах
xk = k ⋅ h , где k = 0,10 , а h = 0,1 . Возьмем здесь 3 верные цифры
после запятой, чтобы иметь запас точности. Тогда нетрудно подсчитать значения формуле
трапеций
f ( x0 ) + f ( x10 ) = 0,750 , 2
при
n = 10
9
∑ f ( xk ) = 7,099 . По k =1
имеем
число
J = 0,1 ⋅ (7,099 + 0,750) = 0,7849 , принимаемое за приближённое значение интеграла J . Отметим, что его точное значение равно
π 4
= 0,7853 , т.е. две цифры совпадают после запятой.
33 1
Пример 5. Для n = 10 вычислить интеграл ∫ (1 + x 2 ) −1 dx по 0
формуле Симпсона и сравнить результат с формулой трапеций примера 4. Решение. Из формулы для остаточного члена (40) по Симпсону, имеем оценку ρ10 ( f ) ≤ 180 −1 ⋅ 10−4 ⋅ 4!< 0,00005 . Здесь взято неравенство, полученное из (45) для оценки ((1 + x 2 ) −1 ) ( 4 ) < 4! . Так как ρ10 ( f ) ≤ 0,00005 , то это означает, что по квадратурной формуле Симпсона можно получить результат с 4 верными цифрами после запятой. Для этого достаточно вести вычисления с 5 цифрами после запятой. Вычисляя f ( xk ) с 5 верными цифрами после запятой, получаем
f ( x0 ) + f ( x10 ) = 1,5000 ,
σ1 = 3,93116 ,
σ 2 = 3,16855 . Отсюда J - значение формулы Симпсона будет: J = 0,78537 . Таким образом, формула Симпсона здесь точнее, ибо
совпадают 4 цифры после запятой в точном и приближённом значениях интеграла J = 0,78537 . Замечание. Если f (x) задана таблично, то, в предположении отсутствия скачков, для приближённой оценки погрешности можно взять
такие
соотношения:
2 ρ n ( f ) = (b − a) ⋅ Δ f 12 ;
4 ( ) − b − a ⋅ Δ f ρn ( f ) =
180
1)
для
формулы
трапеций
2) для формулы Симпсона , где под
Δ2 f ,
Δ4 f
подразумевается
среднее арифметическое значение разностей соответствующего порядка. Однако этими оценками надо пользоваться осторожно. Они применяются только в том случае, если конечные разности
34
соответствующего порядка не сильно меняются. На практике для аналитически заданной функции часто начинают вычисления с приблизительно подобранным шагом, а затем вычисляют с шагом, вдвое меньшим. Если эти полученные значения совпадают с заданной степенью точности, то вычисления останавливают и за приближенное значение интеграла берут любое из найденных значений. Иначе процедура повторяется. Указанный прием широко используется при вычислении интегралов на ЭВМ, ибо он позволяет осуществить автоматический выбор шага при заданной точности с контролем погрешности вычислений. Приведем теперь примеры приближенного вычисления интегралов, у которых первообразные в конечном виде не выражаются. Пример 6. Вычислить полный эллиптический интеграл 2-го рода: π
2
E = ∫ 1 − 0,5 ⋅ sin 2 xdx 0
с 2 верными знаками после запятой по формуле Симпсона. Решение. Дифференцируя тождество [ f ( x)]2 = 1 − 0,5 ⋅ sin 2 x , легко получить оценку f ( 4 ) ( x) . Имеем f ( 4 ) ( x) < 12 при x ∈ [0, π2 ] . Поэтому для остатка формулы Симпсона на основе (36) имеем: ρ n ( f ) ≤ ( π2 )5 ⋅ (180 ⋅ n 4 ) −1 ⋅12 < 23 ⋅
1 n4
с учетом ( π2 )5 < 10 . Поскольку 2-е
35
верные цифры после запятой означают, что погрешность ε < 0,005 , то для получения ρ n ( f ) < ε достаточно взять n = 6 . Чтобы не потерять точность, подсчитаем f ( xk ) , где k = 0,1,K,6 , с 4 верными цифрами после запятой. Тогда величины f ( x0 ) + f ( x6 ) = 1,7071, σ1 = 2,5795 , σ 2 = 1,7259 . Отсюда J - значение формулы Симпсона
равно 1,351 . Следовательно, приближённо E = 1,351 и имеет заведомо 2 верные цифры после запятой. Отметим, что точное значение
E = 1,351K .
Пример 7. Вычислить интеграл
1
∫ f ( x)dx по формуле 0
2
Симпсона с 4 верными знаками после запятой, где f ( x) = e − x . Решение. Легко показать, что f ( 4 ) ( x) ≤ 12 . Поэтому модуль
ρ n ( f ) ≤ (180 ⋅ n 4 ) −1 ⋅ 12 по (36). Чтобы получить заданную точность подсчета интеграла с ε < 0,00005 , то есть 4 верные цифры, достаточно взять n = 10 . Тогда заведомо ρ10 ( f ) ≤ 0,000007 . Для функции f (x) составляем таблицу значений с шагом h = 0,1 и при xk = k ⋅ h , k = 0,10 , вычисляем f ( xk ) с 5 верными цифрами после
запятой. Это
даст
требуемую точность.
f ( x0 ) + f ( x10 ) = 1,36788 ,
σ1 = 3,74027 ,
Вычисляя, имеем:
σ 2 = 3,0379 .
Отсюда
получаем J - значение формулы, равное 0,74682 . Следовательно, приближенно J равно 0,74682 и будет здесь 4 верные цифры. §2. КВАДРАТУРНАЯ ФОРМУЛА ГАУССА Рассмотренные выше формулы численного интегрирования типа Ньютона-Котеса и другие полученные из них имеют простой
36
вид, удобны для практики. Чтобы повысить точность результата, отрезок [a, b] разбивался на достаточно большое число частей. Но возможны и другие способы улучшения точности квадратурной формулы за счёт повышения степени многочлена, для которого эта формула точна. В квадратурных формулах Гаусса Ak и x k подбирают так, чтобы приближённое b
b
a
a
∫ f ( x)dx ≈ ∫ Ak ⋅ f ( xk )dx , xk ∈ [a, b]
(46)
равенство было точным для всех многочленов наиболее большой степени. Здесь Ak - квадратурные коэффициенты, а x k - узлы функции f (x) . Пусть a = −1 , b = 1. Тогда квадратурная формула Гаусса 1
n
−1
k =1
2 2 −1 ∫ f ( x)dx ≅ ∑ Ak ⋅ f ( xk ) , где Ak = 2 ⋅ ((1 − xk ) ⋅ [ p′n ( xk )] ) ,
(47)
а узлы x k - корни многочлена Лежандра
1 d n ⋅ ( x 2 − 1) n pn ( x) = n ⋅ 2 ⋅ n! d ⋅ xn Приведём для разных
(48) n
Таблицу 1 значений
Ak
и
n = 1 , x1 = 0 , A1 = 2 ; n = 2 , x2 = − x1 = 0,5773 , A1 = A2 = 1 ; n = 3 , x 2 = 0 , x3 = − x1 = 0,7746 , A2 = 8 , A1 = A3 = 5 ; 9 9 n = 4 , x3 = − x2 = 0,3340 , x4 = − x1 = 0,8611, A1 = A4 = 0,3478 ,
A2 = A3 = 0,6521 ; n = 5 , x3 = 0 , x4 = − x2 = 0,5385 , x5 = − x1 = 0,9062 , A3 = 0,5689 ,
A2 = A4 = 0,4786 , A1 = A5 = 0,2369 ; n = 6 , x3 = − x4 = 0,2386 , x6 = − x1 = 0,9325 , x5 = − x2 = 0,6612 ,
xk :
37
A1 = A6 = 0,1713 , A2 = A5 = 0,3608 , A3 = A4 = 0,4679 ;
Для f 2 ⋅ n ( x ) непрерывной на [−1,1] погрешность формулы Гаусса будет
2 2⋅n +1 ⋅ (n!) 4 ρn ( f ) = ⋅ f ( 2⋅n ) (ξ ) , ξ ∈ [−1,1] 3 (2 ⋅ n + 1) ⋅ (2 ⋅ n!)
(49)
При вычислении же интеграла с a ≠ −1 или b ≠ 1 нужна замена b−a a+b b в ∫ f (t )dt , где x ∈ [−1,1] . t= ⋅x+ 2 2 a
(50)
В это случае имеем равенство b
∫ f (t )dt = a
b−a n ⋅ ∑ Ak ⋅ f (tk ) + Rn ( f ) , 2 k =1
(51)
где tk = 0,5 ⋅ ((b − a ) ⋅ x + b + a ) , а x k - узлы формулы Гаусса для отрезка [−1,1] и Ak - соответствующие им коэффициенты. Тогда остаток Rn ( f ) = 0,5 ⋅ (b − a) 2⋅ n +1 ⋅ ρ n ( f ) , где ρ n (f) по (49). Пример 1. По формуле Гаусса при n = 5 вычислить 1
определённый интеграл ∫ (1 + t 2 ) −1 dt . Оценить погрешность. 0
Решение. Положим в (51) n = 5 , a = 0 , b = 1 и функцию f (t ) = (1 + t 2 ) −1 , а коэффициенты Ak и узлы x k из Таблицы 1. При
этом сделаем замену t = 0,5 ⋅ ( x + 1) ,
x ∈ [−1,1] . Тогда имеем
Ak = 0,78539816 . 2 k =1 4 + ( x + 1) k 5
J5 = 2 ⋅ ∑
Нетрудно
проверить,
что
(52)
модуль
10-й
производной
оценивается ((1 + x 2 ) −1 )(10 ) ≤ 10!. Тогда с учетом связи Rn ( f ) и ρ n (f)
38
1 ⋅ 211 ⋅ (5!) 4 ⋅ 10!< 0,000002 . J − J 5 ≤ 11 2 ⋅ (10!)3
Отметим, что точное непосредственном
значение
подсчете
J =
π = 0,785398163K . 4
величины
J − J5
При имеем
J − J 5 < 0,19 ⋅ 10 −5 . Таким образом, априорная оценка погрешности
оказалась хорошей. Замечание. Подобный способ оценки погрешности на практике используют редко по связи с оценками для высших производных функции f (x) . Для контроля точности производят пересчет по другим каким либо формулам и сравнивают результаты. В частности, используют и двойной пересчет по формулам Гаусса, но для разных n . Например, при n и n + 1. Наличие одинаковых цифр будет свидетельствовать о точности результата и количестве верных цифр. Пример 2. Используя двойной пересчет по формуле Гаусса, найти приближённое значение интеграла 2, 7
−1
J = ∫ (t + 0,8) ⋅ (t + 1,2) dt . 2
2
1, 6
Решение. Возьмем значения n = 4 и n = 5 . Далее сделаем подсчёт по формуле (51). Здесь a = 1,6 , b = 2,7 , а функция −
1 2
f (t ) = (t + 0,8) ⋅ (t + 1,2) . Осуществляя переход к [−1,1] , сделаем 2
замену tk = 0,5 ⋅ ((b − a ) ⋅ xk + b + a ) = 2,15 + 0,55 ⋅ xk , где x k - узлы для формулы Гаусса при n = 4 . Находя f (tk ) , имеем из формулы (51) откидывая Rn ( f ) , её значение J 4 = 1,3438 . Аналогично проделывая
39
n = 5,
для
Совпадение
получаем
приближённое
результатов
J 5 = 1,3438 .
значение
свидетельствует
о
правильности
вычислений. Тогда можно считать, что J ≈ 1,3438 .
§3. ПРИБЛИЖЕННОЕ ВЫЧИСЛЕНИЕ НЕСОБСТВЕННЫХ ИНТЕГРАЛОВ Здесь рассматриваются несобственные интегралы вида b
∞
a
a
∫ f ( x)dx и ∫ f ( x)dx . Отметим, что они переходят из одного вида в другой при соответствующей замене переменной. Но возьмём их отдельно. Случай 1. Пусть имеем сходящийся несобственный интеграл b
∫ f ( x)dx с особенной точкой a или b . Укажем метод выделения a
особенности, предложенный Канторовичем Л.В. В этом методе из подинтегральной
функции
f (x)
выделяют
как
слагаемое
некоторую функцию g (x) с той особенностью, что и f (x) , но легко интегрируемую. Требуется ещё, чтобы разность ϕ ( x) = f ( x) − g ( x) b
была достаточно гладкой функцией. Далее ∫ ϕ ( x)dx вычисляется по a
b
какой-либо квадратурной формуле, а ∫ g ( x )dx вычисляется точным a
методом интегрального исчисления. Поскольку f ( x) = ϕ ( x) + g ( x) , то
b
b
b
a
a
a
∫ f ( x)dx = ∫ ϕ ( x)dx + ∫ g ( x)dx .
Основываясь
на
последнем
40
равенстве, получаем приближённое значение несобственного интеграла. Укажем теперь правило построения такой функции
g (x) , применяемое для достаточно широкого класса несобственных интегралов. Пусть у подинтегральной функции f (x) особая точка есть a , сама же функция имеет вид f ( x ) = ( x − a )α ⋅ ψ ( x ) , 0 < α < 1 .
(53)
где ψ (x) раскладывается в степенной ряд:
ψ ( x) = C0 + C1 ⋅ ( x − a) + C2 ⋅ ( x − a) 2 + K.
(54)
Тогда полагаем
g ( x) = ( x − a) −α ⋅ (C0 + C1 ⋅ ( x − a) + K + Cn ⋅ ( x − a) n ) ,
(55)
ϕ ( x) = ( x − a) −α ⋅ (Cn +1 ⋅ ( x − a) n +1 + K) = ( x − a) n +1−α ⋅ (Cn +1 + K) . Очевидно, функция g (x) интегрируется непосредственно, а ϕ (x) имеет n непрерывных производных на [a, b] . Для подсчета b
∫ ϕ ( x)dx
интеграла
можно
применять
любые
квадратурные
a
формулы. Пример 1. Вычислить приближенно интеграл 0,5
J=
− ∫ (x ⋅ (1 − x) ) 2 dt . 1
0
Решение. Здесь особая точка a = 0 . Нетрудно показать, что интеграл
J
сходящийся. Раскладывая функцию
(1 − x)
−1
2
по
степеням x , остановимся на члене, содержащем x 4 , и положим
3 2 5 ⋅ x 3 35 4 x g ( x) = x ⋅ (1 + + ⋅x + + ⋅ x ), 2 8 16 128 −1
2
41
ϕ ( x) = x
−1
2
35 4 ⎤ 63 9 2 −1 ⎡ ⋅ ⎢(1 − x) 2 ⋅ (1 + K + ⋅ x )⎥ = ⋅ x + K. 128 ⎣ ⎦ 256
Тогда J=
0,5
0,5
0
0
∫ g ( x)dx + ∫ ϕ ( x)dx = J1 + J 2 . 0,5
J1 =
Интеграл
∫ g ( x)dx
вычисляется
непосредственно
и
его
0
значение
J1 = 1,569158K .
например,
по
Интеграл
формуле
Симпсона.
J2
можно
вычислить,
n = 10 ,
Полагая
имеем
J 2 ≈ 0,001163 , и суммируя J1 и J 2 , получаем J ≈ 1,57080 . Точное
же значение интеграла J =
π 2
= 1,5707963K.
Замечание. В некоторых случаях вычисления несобственных интегралов можно использовать квадратурные формулы с весом. Например, квадратурные формулы типа Гаусса. Для этого подинтегральную функцию представляют в виде произведения:
f ( x) = p ( x) ⋅ ϕ ( x) .
Причем
ϕ (x)
имеет
достаточное
число
производных, а p(x) рассматривают как весовую функцию. Внутренняя особая точка. Если особая точка С ∈ [a, b] , то используем
простой
приём,
основанный
на
определении
несобственного интеграла. Для этого интеграл представляют в виде: b
С − δ1
b
С + δ2
a
a
С + δ2
С − δ1
∫ f(x)dx = ∫ f(x)dx + ∫ f(x)dx + ∫ f(x)dx , причем δ1 , δ2 выбирают столь малыми, чтобы в пределах заданной
42 С + δ2
ρ = ∫ f(x)dx не влиял бы на результат.
точности интеграл
С − δ1
С − δ1
b
a
С + δ2
Интегралы же ∫ f(x)dx , ∫ f(x)dx уже не имеют особенностей и их вычисляют по каким-либо квадратурным формулам. Пусть, например, f ( x) = x − c С + δ2
С + δ2
С − δ1
С − δ1
∫
f(x)dx ≤ A ⋅
∫
x−c
−α
−α
⋅ ϕ ( x) , где 0 < α < 1 , а ϕ ( x) ≤ A . Тогда
dx =
A ⋅ (δ 21−α + δ11−α ) ≈ 0 1−α
при
δ1
и
δ2
С + δ2
близких к нулю. Отсюда получаем, что ∫ f(x)dx ≈ 0 . С − δ1
Пример 2. Найти δ1 и δ2 такие, чтобы при вычислении 0,5
интеграла J = ∫ x
−1
2
−1
⋅ (1 − x) dx модуль ρ < ε , где ε - требуемая 2
− 0,5
точность расчетов. Решение. Очевидно, у функции f ( x) = x
−1
2
⋅ (1 − x)
−1
2
имеется
особая внутренняя точка С = 0 ∈ [−0,5;0,5] . Следуя изложенному −1
выше, берём ϕ ( x) = (1 − x) . Модуль ϕ ( x) ≤ 2 на [−0,5;0,5] . Так 2
как интеграл J сходится, то для ρ имеем оценку: δ2
δ2
1 2
−1
1 2
ρ = ∫ f(x)dx ≤ 2 ⋅ ∫ x dx = 2 2 ⋅ (δ2 + δ1 ) . 2
− δ1
(56)
− δ1
1 2
Возьмём, например, δ 2 = δ1 . Тогда из (56) будет ρ < 4 ⋅ 2 ⋅ δ 1 . Если
взять
δ 1 = ε 32 , 2
то
ρ <ε.
Итак
приближенно
43 0,5
−δ 1
−1
−1
0,5
−1
−1
−1
−1
∫ x ⋅ (1 − x) dx ≈ ∫ x ⋅ (1 − x) dx + ∫ x ⋅ (1 − x) dx с 2
2
2
2
− 0,5
2
2
δ1
− 0,5
точностью до ρ . Случай 2. Если вычисляется сходящийся несобственный ∞
интеграл 1-го рода ∫ f ( x)dx , то для его приближенного вычисления a
∞
B
∞
a
a
B
используем равенство ∫ f ( x)dx = ∫ f ( x)dx + ∫ f ( x )dx . Причем число B
берут настолько большим, чтобы в пределах заданной точности
интеграл
∞
∫ f ( x)dx не влиял бы на результат. Далее последний B
интеграл вычисляют по какой-либо квадратурной формуле с нужной точностью. ∞
2
Пример 3. Вычислить J = ∫ e − x dx с точностью до 0,0001 . 0
Решение. Очевидно неравенство x 2 − 2 ⋅ B ⋅ x + B 2 = ( x − B ) 2 ≥ 0 . Тогда ∞
− x2
x2 ≥ 2 ⋅ B ⋅ x − B2 B2
∞
∫ e dx ≤ e ⋅ ∫ e B
B
− 2⋅ B ⋅ x
−B dx = e
и
отсюда
верна
2
(57)
2⋅ B
−9 Нетрудно установить, что e
2⋅3
оценка
< 0,00005 . Поэтому достаточно 3
2
взять B = 3 . Далее, вычисляя интеграл ∫ e − x dx по формуле 0
Симпсона с точностью до 0,00005 , находим его приближение J = 0,88621. Полагаем теперь J = 0,88621. Отметим, что J есть
интеграл
Эйлера-Пуассона
и
его
точное
значение
44
J=
π 2
= 0,8862269 K . Таким образом, здесь имеем совпадение в 4
знаках после запятой. Рассмотрим ещё один пример на применение аддитивного способа для приближенного вычисления несобственного интеграла 2-го рода. Он основан на преобразовании подинтегрального выражения в виде суммы, выделяющей в одном из слагаемых особенность. Пример 4. Аддитивным способом вычислить интеграл π
2
J = ∫ ln⋅ sin xdx . 0
Решение. Очевидно равенство ln⋅ sin x = ln⋅ π
π
2
2
0
0
J = J1 + J 2 = ∫ ln x + ∫ ln⋅
Интегрируя
sin x + ln x . Тогда: x
sin x x
по частям,
вычисляем
несобственный
интеграл
J1 = −0,861451 до 6-го верного знака после запятой. В интеграле J 2
подинтегральная функция не имеет особенностей. Поэтому его можно подсчитать, например, по формуле Симпсона. Беря n = 1 , находим J 2 = −0,228189 . Таким образом, имеем J = J1 + J 2 = −1,089640 . Отметим, что точное значение интеграла J = −1,0890045 . Итак, имеем совпадение в трех знаках после
запятой, что говорит об удовлетворительных расчетах, ибо в формуле Симпсона здесь большая погрешность. Увеличивая число n , можно получить более точные результаты.
45
Литература 1. Бахвалов Н.С., Жидков Н.П., Кобельков Г.М. Численные методы. – М.: Наука, 1987. 2. Самарский А.А., Гулин А.В. Численные методы. – М.: Наука, 1989. 3.
Тихонов
А.Н.,
Арсенин
некорректных задач. – М.: Наука, 1986.
В.Я.
Методы
решения