
книги из ГПНТБ / Михельсон В.С. Элементы вычислительной математики учебное пособие для электроприборостроительных техникумов
.pdfТаким образом, мы получаем следующее приближенное значе ние для у (х ):
|
|
|
|
X 2 |
X 3 |
1 |
|
X й ' |
vn+l |
|
|
|
|
___ |
1 ___ |
|
|
(П + 1)! |
|
|
V |
|
|
2! |
3! |
1 |
|
1 я! , |
|
V х‘ |
е* и |
|
|
xn+1 |
7 = |
0, |
|
то у = lim уп — I + х -\-ех |
|
Так как^_| -ур = |
i |
( |
» |
+ |
|||||
i =rQ |
|
|
|
n r |
|
||||
является точным решением рассматриваемого уравнения. |
|||||||||
Численное |
интегрирование |
дифференциальных |
уравнений. |
В предыдущих параграфах рассматривались методы нахождения ре шения дифференциальных уравнений в виде некоторой функции
y = f(x).
Часто бывает трудно найти решение в виде функции, и поэтому применяют численные методы интегрирования дефференциального уравнения.
Рассмотрим эти методы на примере интегрирования уравнения
|
|
|
y '= F ( x ; y ) . |
|
|
(47) |
|
Пусть y ~ f (х) является аналитическим решением уравнения. |
|||||||
Решить дифференциальное уравнение (47) |
численным методом — |
||||||
это значит для заданной |
последовательности аргументов |
|
|||||
|
|
*о,*1. *2..........хп |
|
|
(48) |
||
и числа г/о.не определяя |
функцию |
у=!(х), |
найти |
такие |
значения |
||
что |
|
|
У1. У ..........Уф |
|
|
|
|
|
|
|
|
|
|
|
|
У1 |
= Н х i) |
(£ = 1,2..........п) и f(x 0 ) = y 0. |
|
||||
Таким образом, численные методы позволяют вместо нахождения |
|||||||
функции y=f(x) |
получить |
таблицу |
значений |
этой |
функции |
для за |
|
данной последовательности |
значений аргумента (48). Величина А* = |
||||||
=хк—Xfc_i называется шагом интегрирования. |
|
|
|||||
Мы рассмотрим два метода: метод функциональных рядов и ме |
|||||||
тод Рунге — Кутта. |
|
|
Пусть функция y = f(x) |
— реше- |
|||
Метод функциональных рядов. |
|||||||
ние уравнения |
(47). Возьмем некоторое значение |
х^ из последова |
150
тельности (48); если функция f(x) имеет непрерывные производные до (т+1)-го порядка, то ее можно разложить по формуле Тейлора в окрестности точки хн (глава 1, раздел 2):
У (Ч + hk) = Ук + |
-J7 Ук + |
I------- Ь — |
y km)+( |
R, |
где |
|
|
|
|
|
hm~\~1 |
|
|
|
у{ =Ут (хк) и R = |
* |
■y (m+l)(xk + 0А), |
0 < 0 < 1. |
Если выбрать шаг интегрирования /г* достаточно малым, то мож но пренебречь остаточным членом R и тогда
т |
! |
S |
hfe |
i=i |
'7 Г г,* >* |
|
При помощи этого равенства, вычислив значение г/*, можно най ти значение уи+и но для этого необходимо знать значения
Уk’ y'k> • • • > Уk •
Эти числа определяются из равенств путем m-кратного диффе ренцирования равенства (47):
|
y'k = |
F ( xk, Ук ) , |
|
у'к = К { * к , |
У к ) + р ' Л х ь у к ) у' к |
И т. д. |
Найти значения функции y= f (х) — решения урав |
|
Пр и м е р . |
||
нения |
|
|
|
У' М = У (х) — 4х + 3 |
|
при *о=0, i/o = 3, |
п = 3 и постоянном шаге интегрирования h = 0,1. |
|
Р е ш е н и е . |
По условию задачи требуется определить |
|
У1 , 1/2. Уз Для Уо (0) = 3. |
— О-1> *2 = 0,2 и х3 = 0,3. |
- 151 -
Возьмем m= 3, тогда |
|
|
|
|
|
|
|
|||||
|
|
^*+1 (■*) = Ук+ |
ft |
, |
П‘ |
" , ft-’ |
«■ |
|
||||
|
|
~\\ |
уь+ |
+ "зГ |
* |
|
||||||
Определим (/"(*) и У'"(х)'- |
|
|
|
|
|
|||||||
|
|
|
|
У" (х)=(у' (х)У = |
— 4 + |
(/' = |
|
|
||||
|
|
|
= — 4 + (у - 4х + 3) = у - 4* - 1, |
|
|
|||||||
|
|
У"’ (х) = (у" (х)У = у ’ - 4 = у - 4 х - 1 . |
|
|||||||||
Значения у0, у0 |
и у0 |
равны: |
|
|
|
|
|
|||||
|
У о = |
У о — |
Ч ) + |
3 = |
6- |
Уо = |
Уо = |
— 4*0 — 1 = |
2> |
|||
поэтому |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
их = 3 + |
0,1 |
6 + |
О, I2 |
0,13 |
|
|
|
|||
|
|
— |
- 1— 2 + ^ — 2 = 3,6103, |
|
||||||||
|
|
|
|
|
1! |
|
2! |
|
3! |
|
|
|
Значения (/х, y t |
и yt |
равны: |
|
|
|
|
|
|||||
у [ = у1 — 4х1 |
+ 3 = 6,2103 и у\ = |
у" = |
уг — 4л:, — 1 = |
2,2103, |
||||||||
поэтому |
|
0,1 |
|
|
О,I3 |
|
0,1з |
|
|
|||
(/2 = |
3,6103+ |
|
|
|
|
4,2427. |
||||||
-у|-6,2103 + |
— |
2,2103 + |
2,2103= |
|||||||||
Находим значения у2. у2 |
и у2 |
: |
|
|
|
|
|
|||||
У2 = |
Уг - |
4 ^ |
+ |
3 = 6,4427, у2’ = у 1 = * „ - 4 * , - |
1 = |
2,4427, |
||||||
поэтому |
|
|
0,1 |
|
|
О, I2 |
|
0,13 |
|
|
||
уя = |
4,2427 + |
6,4427 + |
|
|
4,8999. |
|||||||
— |
- 1- 2,4427 + |
2,4427 = |
||||||||||
|
|
|
|
1 |
|
2 |
|
|
|
3 |
|
|
Легко проверить, что |
|
|
|
|
|
|
||||||
|
|
|
|
|
|
у(х) = 2ег + 4лг+ 1 |
|
|
является решением заданного уравнения. Для сравнения найдем значение у для х0, x it х2 и х3. Результаты приведены в таблице.
152
|
xi |
0 |
0,1 |
0,2 |
0,3 |
Значение, |
полученное |
3 |
3,6103 |
4,2427 |
4,8999 |
численным методом |
|
|
|
|
|
Значение, |
полученное из |
3 |
3,6021 |
4,2428 |
4,8996 |
аналитического решения |
|
|
|
|
Метод Руиге — Кутта. В рассмотренном методе функциональных рядов значение ук+\ определялось при помощи ук и производных
yk , . . . , y \™. Если функция F(x, у) имеет сложный вид, то вычислять
производные у\ и их значения при различных хк и ук бывает весьма
затруднительно. Поэтому были разработаны методы, в которых зна чение уь+] вычисляется при помощи только ук и F. Одним из них яв ляется метод Рунге — Кутта.
Пусть уже вычислено значение ук, тогда при помощи хк и ук оп
ределяют числа kh ki, k3 и k4. Для |
этого вычисляют: |
||
1) |
A,= hF(xk,y k)-, |
Л |
1 . |
2) |
1 |
||
координаты хк + — п н Уь+ |
— А,; |
||
3) |
1 |
I |
|
k2 =hF(xk+ — /г, yh+ — А,); |
|||
|
1 |
, |
1 . |
4)координаты хк+ — п и ук+ — А2;
5)k3 =hF(xk+ —^- /!,(/*+ —^-k2)\
6) координаты xk+ h и тм + А3; 7) kt =hF(xk+h, yh+k3).
При помощи вычисленных А,- значение ук+1 находят по формуле
Ук+\ — У^Л- ~^Г" (Ai + 2Аг + 2А3 + А4). |
(49) |
153
П р и м е р . |
Найти значения |
функции y = f ( x ) — решения |
урав |
||||||
нения |
|
|
|
|
|
|
|
|
|
|
|
|
У' (х) = у(х) — Ах + 3 |
|
|
|
|||
при Хо=0, 1/о= 3, п = 3 и /г= 0,1• |
|
|
|
|
|
|
|||
Р е ш е н и е . |
Вычисляем числа ku k2, k3 и k4 для х0 и уо.- |
|
|||||||
ki = h-F (х0, у0) = 0,1-6 = |
0,6; |
|
|
|
|||||
k2 = h-F(x0 + 0,05, у0 + 0,3) = 0 ,1 (3 ,3 -4 -0 ,0 5 + 3) = |
0,61; |
||||||||
k3 = h-F (х0+0,05, |
г/0+ 0,305) = 0 ,1 (3,305 — 4-0,05 + 3) = 0,6105; |
||||||||
= h-F (х0+ 0 ,1, |
(/0+0,6Ю5) = |
0,1 (3,6105 — 4-0,1 + |
3) = 0,62105. |
||||||
Находим у\ |
по формуле (49) |
|
|
|
|
|
|||
у г = 3 + — |
(0,6 + |
2-0,61 + |
2-0,6105 + 0,62105) = |
3,61034. |
|||||
6 |
|
|
|
|
|
|
|
|
|
Теперь вычислим |
для .>0= 0,1 |
и г/i =3,61034 |
числа kt, k2, k3 |
и k4: |
|||||
kl = h-F(xl , ух) = 0,621034; |
|
|
|
||||||
k2 = |
h-F(xx + 0,05, |
ух. + |
0,310517) = 0,63209; |
|
|||||
ka = |
h-F(xx. -f 0,05, |
yx + |
0,31605) = |
0,632635; |
|
||||
ki = |
h-F (xx. + 0,1, |
yx + |
0,632635) =-0,6442975. |
|
|||||
При помощи этих чисел находим |
|
|
|
|
|||||
1/2 = |
l/i + |
~г~ (ki + |
2^2 + |
2Аз + ki) — 4,2428. |
|
||||
|
|
|
6 |
|
|
|
|
|
|
Чтобы определить у3, вычисляем klt k2, k3 |
и kt для лг2= 0,2 и |
||||||||
1/2=4,2428: |
|
|
|
|
|
|
|
|
|
k\ = 0,644280, |
k2 |
= 0,65649, ka = 0,65711 |
и 64 = |
0,66991, |
|
||||
Тогда |
|
|
|
|
|
|
|
|
|
Уз = 4,2428 + 4 - (0,64428 + 2-0,65649 + 2-065711 +
6
+ 0,066991) = 4,89971.
Таким образом, решив одно и то же уравнение двумя методами, мы получили практически одинаковые результаты.
154
Глава V
ЧИСЛЕННЫЕ МЕТОДЫ ИНТЕГРИРОВАНИЯ И ДИФФЕРЕНЦИРОВАНИЯ
§ 1. Вычисление интегралов методом трапеций |
|
Чтобы вычислить определенный интеграл |
|
ъ |
(1) |
A = \ f ( x ) d x , |
|
а |
|
нужно найти неопределенный интеграл |
|
J7 (х) dx = F (х) + С. |
(2) |
Вэтом случае значение интеграла А определяется по формуле
А= F ф) — F (а).
Однако функция f(x) может быть очень сложной, а интеграл (2) не существовать. В таких случаях для вычисления определенного интеграла ( 1) применяются численные методы интегрирования. Эти методы заключаются в следующем.
Из курса дифференциального исчисления известно, что значение определенного интеграла (I) равно площади фигуры ABDC (рис. 24), где ОА=а и ОВ = Ь. Эта фигура ограничена кривой y=f{x), частью оси Ох и двумя ординатами, проведенными в точках А к В с абсцис сами а и Ь.
Чем точнее мы сможем определить площадь рассматриваемой фигуры, тем точнее мы будем знать значение интеграла (1). Определение площади фигуры ABDC затрудняется тем, что она ограничена дугой к р и в о й у=\(х). Если же заменить эту дугу ломаной линией или несколькими дугами парабол, то площадь получаемой фигуры вычислить намного легче. Численные методы вычисления определен ных интегралов сводятся к вычислению площади «под кривой f(x)» путем замены дуги y=f(x) более простой дугой. В зависимости от того, чем заменяется дуга y —f(x), получаются различные методы вычисления интеграла.
Рассмотрим наиболее простой метод — метод трапеции, который заключается в замене дуги кривой y=f(x), ломаной линией.
Разделим отрезок оси Ох между точками А п В на п частей (см. рис. 24), получим отрезки АоАи . . . , А„_1А п. Из точек Ai вос
155 —
ставим перпендикуляры А;С; до пересечения с кривой (/=Дх) и, наконец, соединим соседние точки С; и Cj+i между собой. Таким об разом дуга кривой y=f(x) заменяется ломаной линией C0C i.. .C„_iCn.
D
Получаем п трапеций Ai-\Ai CiCi_u |
|
Обозначим пло |
|||||||||||
щадь такой трапеции через S;. Если мы разделили отрезок АВ на п |
|||||||||||||
равных частей, |
|
|
|
|
|
. ~ |
|
Ь — а |
|
||||
то длина каждого отрезка Л*С; равна |
--------, а абс- |
||||||||||||
|
|
|
|
|
|
Ъ— а |
|
|
|
|
п |
|
|
цисса точки Ai |
|
|
|
|
|
|
перпендикуля |
||||||
равна а + — - — -i. Обозначим длину |
|||||||||||||
ра AiCi через (/,. Возможны два случая. |
|
длиннее стороны |
|||||||||||
А. |
В трапеции А |
ЛгС(Сг-_, сторона /1 |
|
||||||||||
AiCt, |
т. е. |
yi-i>yi, (см. |
рис. |
24); |
тогда проведем |
перпендикуляр |
из |
||||||
точки |
Сi |
до пересечения |
с прямой Aj-iCj-i. |
В этом |
случае |
|
|||||||
|
|
S. = пл. A, , A . C . D , , + п л . q о |
|
с. |
i |
|
|||||||
|
|
I |
|
l — i |
( |
i |
1 — 1 I |
1 — 1 |
I — 1 |
|
|||
ИЛИ |
|
|
|
|
|
|
|
|
|
|
|
|
|
Si |
Ь — а |
Vi + |
« i-i |
~ |
У, |
Ь — а |
Ь — а [ ?/,•_!+ У[ |
( 3) |
|||||
|
|
|
|
|
|
|
|
|
|
• |
|||
Б. |
В трапеции |
тогда |
|
|
сторона y4f_iCj_i |
короче стороны |
|||||||
AiCi, |
т. е. |
t/f_1< г/г, |
проведем перпендикуляр |
из |
точки С,_j |
до пересечения с прямой /1,0,. В этом случае
156 —
S i = пл. А ._ J Л . Z).
или
+ пл. С,_ 1 Dt С.
S . = |
&— а |
У1 - 1 |
у { - у 1 - 1 |
Ь — а ^ |
п |
2 |
|
||
|
|
|||
Итак мы видим, |
что в обоих случаях |
площадь S t определяется |
||
по одной и той же формуле (3). |
|
|||
Таким образом, |
|
|
а |
|
/=1 |
*=1 |
|
И ЛИ |
|
|
|
|
А |
^ + |
Ух н------ ь г/,г_1 |
(4) |
|
где |
|
|
|
|
Hi = |
/ ( а + |
г’ |
|
|
Формула (4) называется формулой трапеции. Она позволяет вы |
||||
числить приближенное значение А интеграла |
(1). Погрешность, |
кото- |
рая получается при ее применении, равна площади криволинейной фигуры, ограниченной дугой кривой и ломаной линией С0С,С2, .., C„_iC„. Чем больше будет число п, т. е. чем больше тра пеций будет вписано между отрезками AqCq и А пСп< тем точнее определяется значение интеграла (1) по формуле (4). Можно дока зать, что абсолютная величина этой погрешности, т. е. разности зна чения интеграла и значения, получаемого по формуле (4), равна
1 (Ь — а)я Г (Б).
[а, Ь].
Пусть задано число е и требуется определить, на какое число равных частей нужно разделить отрезок АВ, чтобы по формуле тра пеций (4) получить значение интеграла (1) с погрешностью, мень
157
шей, чем е. Обозначим через М наибольшее значение f"(x) на сег менте [а, b|, тогда достаточно выбрать п таким, чтобы выполнялось неравенство
п > |
М-(Ь — я)3 |
(5) |
|
12~ё |
|||
|
|
||
В этом случае | А—Л |< е. |
|
Вычислим значение |
|
Рассмотрим п р и м е р . Пусть f(x)= Зх2 —4х. |
интеграла
з
Так как
J / (х) dx — х3 — 2л:2, то ,4 = 9.
Определим значение этого интеграла при помощи формулы тра пеции. Возьмем п = 3, тогда
А |
1 |
,/(2) |
9,055. |
|
3 |
V 2 |
|||
|
|
Определим теперь из соотношения (5), на сколько частей до статочно разделить отрезок АВ, чтобы вычислить значение задан ного интеграла (6) с точностью е=0,005. Так как M=f"( 3)=3, то из соотношения (5) находим
3(3 — 2)з
п > |
12-5- 10- з |
|
|
|
|
||
Таким образом, при ti^ |
- 8 мы должны получить |
\А—А |<0,005. |
|
Возьмем, например, п=9. |
|
|
|
1_ |
|
+ - - - + П 2 |
Н~ |
9 |
|
||
|
|
|
|
/ |
(3 ) |
9,0061, |
|
|
|
|
т. е. |Л—Л | ~0,0039<0,005.
158
§2. Метод Симпсона
Впредыдущем параграфе была составлена формула Трапеций Для приближенного вычисления значения определенного интеграла. Для этого дуга кривой заменялась ломаной линией. Можно посту
пить иначе и заменить дугу несколькими дугами парабол. На рис. 25 изображен график функции y = f(x). Возьмем на оси Ох три рав ноотстоящих друг от друга точки А и А2 и А3. Абсциссы этих точек
обозначим через |
Х и х2 |
и х3. Пусть У \ = ! ( Х \ ) , У2 =!(х |
2) и y3 =f(x3), |
тогда точки Сь С2 |
и С3 |
имеют координаты (хи т/,), (х2, |
у2) и (х3 ,у 3). |
Проведем через эти три точки параболу. Эту параболу выберем так,
чтобы ее ось была параллельна оси |
Оу. Общий вид таких |
парабол |
|
у = di х2 + d2x + d3. |
(7) |
||
Определим значения коэффициентов di. Для упрощения вычис |
|||
лений предположим, что точка Ai |
является началом координат |
||
(х=0). Так как точки А и А2 |
и А3 выбраны равноотстоящими друг |
||
от друга, то х3 —х2 =х2 —Х \ = h. |
Число |
h называется шагом |
интегри |
рования. Выразим через него координаты точек А\, А2, А3: х 1 =0,х2—
= Л, x3 — 1 h. |
|
|
|
|
и С3, должны |
Чтобы парабола (7) проходила через точки Сь С2 |
|||||
выполняться равенства |
|
|
|
||
di х\ + d 2 |
xi + d3 — Уъ |
d3 — Уи |
|
||
d \ х 2 "Т~ d 2 |
х 2 |
~ Г d 3 |
== У 2* И Л И |
dih2 + d2h + d3 |
— у2, |
d \ 4 + d 2 |
х 3 |
+ d 3 |
= УЗ |
4di № -j- 2 d 2h -\-d3 ^=y3. |
159