книги / Численные методы. Ч. 4
.pdf2.С уменьшением шага разностной сетки погрешность определения чис ленного значения первой производной уменьшается.
3.При очень малых сеточных шагах, h < 210‘п, погрешность определения значения первой производной возрастает, что связано с влиянием ошибок ок ругления результатов расчетов в ЭВМ.
2.1,2. Разностный аналог второй производной
Задание. Вычислить приближенно значение второй производной функции f{x ) - x/sin х в точке х = л/2 с помощью разностного аналога
/ f c -i) - 2/ ( s , ) + / f o J 2
А2
Исследовать сходимость численно определяемых значений к точному зна чению и определить зависимость погрешности численного дифференцирова ния от шага h.
Алгоритм решения
Пусть на отрезке [а9Ъ] задана сетка с шагом h = {b-a)!n. В произволь
ной точке этой сетки приближенное значение второй производной функцииДх) представляется с помощью выражения
■г»_ /(* /-|)-У (* ,)+ /(* ,.|)
3>~ и2
Эта формула аппроксимирует значение второй производной в рассматри ваемой точке с погрешностью второго порядка.
При условии, что погрешность округления 5окр результата вычисления функции в ЭВМ не превышает погрешности аппроксимации при записи разно стных аналогов, можно получить ограничение на шаг сетки при численном оп ределении второй производной f ”,
'486^
h> i
М< ’
где М4 =qaxj/"(*)|.
Выполнение расчетов
Для оценки точности разностных формул определяется вторая производ
ная заданной функции: |
|
|
||
/'(* )= |
х sin2 х - 2sin х cos+ 2х cos2 х |
f ”(n/2)=n/2. |
||
sin3 |
х |
|||
|
|
|
п |
п . |
|
|
xi ~ ’ xi+1 ~ ~2^ ^’ |
|
|
|
|
|
Таблица 2.2 |
Погрешность вычисления значения производной f |
от сеточного шага h |
||
h |
5 |
h |
5 |
10"2 |
0,6572-10'2 |
10"7 |
0,2746-10 '7 |
КГ3 |
0,6539-1 O'* |
ю -8 |
0,1693-10 '3 |
1СГ4 |
0,6009-10 '8 |
КГ9 |
0,2792-10 '1 |
10'5 |
0,2917-10’9 |
,0-ю |
0,2870-Ю1 |
|
|||
10■* |
0,8186-1 О*9 |
|
|
Рис. 2.3. Погрешность 5 аппроксимации второй производной функции /(* ) = jc/sin х вблизи точки х = п/2
Для различных значений шага h определяются, в соответствии с приве денными формулами, приближенные значения производных. В табл. 2.2 приве дены отклонения получаемых значений от точного значения производной:
s =
На рис. 2.3 представлены те же данные в виде зависимости погрешности 6 от шага h.
Выводы
1. Определены приближенные значения второй производной заданной функции в указанной точке с ипользованием разностного соотношения.
2.С уменьшением шага разностной сетки погрешность определения при ближенного значения производной уменьшается.
3.При малых сеточных шагах, h < КГ4, погрешность определения значе ния второй производной возрастает, что связано с влиянием ошибок округле ния результатов расчетов в ЭВМ.
2.2.Численное интегрирование
Требуется вычислить значение определенного интеграла
/ = J/(x)dx.
а
Пусть подынтегральная функция на отрезке [а, Ь] представлена разложе-
|
т |
нием /(* )« |
где /у = /(* у ) - известные значения функции в за- |
у=0
данных точках ху; фу(х) - линейно-независимые функции. Подстановка разло
жения под знак интеграла приводит к выражению
I = \f{x)d x * £ |
/ у Jq»y(x)dx = £ С ,/ ,, |
|
a |
а |
У=0 |
ь___
Cj = |
j = 0, т - весовые коэффициенты. |
а |
|
Пусть |
Q„ = {х0 = а;х, = а + / • h; i = 0,п\ h = (b - a)/n } - разностная сетка с |
постоянным шагом h на заданном отрезке [а, Ь\. Аддитивность операции ин
тегрирования |
„ |
позволяет представить искомый |
интеграл в виде |
ь |
хк |
|
|
I = j/(x )d x = ^ |
\f{x) dx. На каждом из отрезков [x*_j, |
хк] проще и удобнее |
ох,_,
Вычислять и оценивать квадратурные формулы.
2.2.1. Формула прямоугольников
10
Задание. Для определенного интеграла je~* dx :
о
-разработать вычислительную программу, реализующую метод прямо угольников;
-найти значение заданного интеграла;
Выполнениерасчетов
Д л я р а з л и ч н ы х з н а ч е н и й ш а г а h о п р е д е л я ю т с я в с о о т в е т с т в и и
н ы м и ф о р м у л а м и п р и б л и ж е н н ы е з н а ч е н и я з а д а н н о г о и н т е г р а л а .
сп р и в е д е н
Вт а б л . 2 . 3
п р и в е д е н ы о т к л о н е н и я 5 = | / - I h \ п о л у ч а е м ы х ч и с л е н н ы х з н а ч е н и й I h и н т е г р а
л а ( б л - п о ф о р м у л е с л е в о й т о ч к о й , 5 - |
п о ф о р м у л е с ц е н т р а л ь н о й т о ч к о й , 6 П - |
п о ф о р м у л е с п р а в о й т о ч к о й ) о т т о ч н о г о з н а ч е н и я |
|
1 = j e ~ x d x = - |
* [ ° = 0 , 9 9 9 9 5 4 6 . |
О |
|
Т а б л и ц а 2 . 3
З а в и с и м о с т ь п о г р е ш н о с т и з н а ч е н и я и н т е г р а л а о т в е л и ч и н ы с е т о ч н о г о ш а г а h
h |
б л |
6 |
6 „ |
1 , 0 0 0 0 0 - 1 0 ° |
5 , 8 1 9 5 0 - 1 0 " ' |
4 , 0 4 8 0 8 - 1 0 " 2 |
4 , 1 8 0 0 4 - 1 0 " ' |
5 , 0 0 0 0 0 - 1 0 " ' |
2 , 7 0 7 3 5 - 1 0 " ' |
1 , 0 3 4 0 7 - 1 0 " 2 |
2 , 2 9 2 4 3 - 1 0 " ' |
2 , 5 0 0 0 0 - 1 0 ' 1 |
1 , 3 0 1 9 7 - 1 0 " ' |
2 , 5 9 9 3 1 - 1 0 " 3 |
1 , 1 9 7 9 2 - 1 0 " ' |
1 , 2 5 0 0 0 - 1 0 “ * |
6 , 3 7 9 8 8 - Ю " 2 |
6 , 5 0 7 1 5 - 1 0 “ * |
6 , 1 1 9 5 5 - 1 0 " 2 |
6 , 2 5 0 0 0 - 1 0 " 2 |
3 , 1 5 7 4 1 - Ю " 2 |
1 , 6 2 7 3 4 - 1 0 " 4 |
3 , 0 9 2 3 1 - 1 0 " 2 |
3 , 1 2 5 0 0 - 1 О * 2 |
1 , 5 7 0 5 7 - 1 0 " 2 |
4 , 0 6 8 7 0 - 1 0 " 5 |
1 , 5 5 4 2 9 - 1 0 " 2 |
1 , 5 6 2 5 0 - 1 0 ' 2 |
7 , 8 3 2 4 9 - 1 0 " 3 |
1 , 0 1 7 1 9 - Ю ' 5 |
7 , 7 9 1 8 0 - 1 0 " 3 |
7 , 8 1 2 5 0 - 1 0 " 3 |
3 , 9 1 1 1 6 - 1 0 - 3 |
2 , 5 4 2 9 4 - 1 0 " 6 |
3 , 9 0 0 9 9 - 1 0 " 3 |
3 , 9 0 6 2 5 - 1 0 ' 3 |
1 , 9 5 4 3 1 - 1 0 " 3 |
6 , 3 5 6 8 3 - 1 0 " 7 |
1 , 9 5 1 7 6 - 1 0 " 3 |
1 , 9 5 3 1 2 - 1 0 ' 3 |
9 , 7 6 8 3 6 - 1 0 “ * |
1 , 5 8 8 6 8 - 1 0 " 7 |
9 , 7 6 2 0 0 - 1 0 " * |
9 , 7 6 5 6 2 - 1 0 " * |
4 , 8 8 3 3 9 - 1 0 " 4 |
3 , 9 6 6 4 4 - 1 0 " * |
4 , 8 8 1 8 0 - 1 0 " 4 |
4 , 8 8 2 8 1 - 1 0 - 4 |
2 , 4 4 1 4 9 - 1 0 “ * |
9 , 8 6 3 4 3 - 1 0 " 9 |
2 , 4 4 1 Ю - Ю - 4 |
2 , 4 4 1 4 1 - 1 0 “ * |
1 , 2 2 0 7 0 - 1 0 " 4 |
2 , 4 1 3 1 9 - Ю " 5 |
1 , 2 2 0 6 0 - 1 0 " 4 |
1 , 2 2 0 7 0 - 1 0 - 4 |
6 , 1 0 3 3 7 - 1 0 " 5 |
5 , 5 0 6 2 8 - Ю " 10 |
6 , 1 0 3 1 1 - Ю " 5 |
6 , 1 0 3 5 2 - 1 0 ~ 5 |
3 , 0 5 1 6 6 - 1 0 " 5 |
8 , 4 9 8 0 9 - 1 0 " 11 |
3 , 0 5 1 5 8 - 1 0 " 5 |
3 , 0 5 1 7 6 - 1 0 ' 5 |
1 , 5 2 5 8 2 - Ю " 5 |
3 , 1 4 1 8 4 - 1 0 " " |
1 , 5 2 5 7 9 - 1 0 " 5 |
1 , 5 2 5 8 8 - 1 0 " 5 |
7 , 6 2 9 1 4 - 1 0 " * |
6 , 0 5 2 9 9 - 1 0 " " |
7 , 6 2 8 9 6 - 1 0 " 6 |
7 , 6 2 9 3 9 - 1 0 - 6 |
3 , 8 1 4 6 0 - 1 0 " * |
6 , 7 8 4 0 0 - 1 0 ' " |
3 , 8 1 4 4 5 - 1 0 " * |
3 , 8 1 4 7 0 - 1 0 " * |
1 , 9 0 7 3 3 - 1 0 " 6 |
6 , 9 6 3 3 3 - 1 0 " " |
1 , 9 0 7 1 9 - 1 0 " * |
1 , 9 0 7 3 5 - 1 0 " * |
9 , 5 3 7 0 2 - 1 0 " 7 |
6 , 9 9 5 7 0 - 1 0 " " |
9 , 5 3 5 6 0 - 1 0 " 7 |
9 , 5 3 6 7 4 - 1 0 " 7 |
4 , 7 6 8 8 6 - 1 0 " 7 |
7 , 0 2 7 7 7 - 1 0 " " |
4 , 7 6 7 4 5 - 1 0 " 7 |
4 , 7 6 8 3 7 - 1 0 " 7 |
2 , 3 8 4 7 8 - Ю " 7 |
7 , 0 1 2 9 1 - 1 0 " " |
2 , 3 8 3 3 8 - Ю " 7 |
2 , 3 8 4 1 9 - 1 0 " 7 |
1 , 1 9 2 7 4 - Ю " 7 |
7 , 0 0 8 6 5 - 1 0 " " |
1 , 1 9 1 3 4 - Ю ' 7 |
1 , 1 9 2 0 9 - 1 0 " 7 |
5 , 9 6 7 2 3 - 1 0 " * |
7 , 0 1 7 5 8 - 1 0 " " |
5 , 9 5 3 1 6 - 1 0 " * |
Рис. 2.4. Сходимость на последовательности сеток Q„ значений
ю
интеграла je~x dx, вычисленных по формулам метода прямоуголь-
о
ников с центральной (-о-), левой (-А-) и правой (-0-) точками
На рис. 2.4 приведены кривые, отражающие сходимость процесса при10
ближенного вычисления определенного интеграла jV x dx с помощью формул
о
метода прямоугольников с левой, центральной и правой точками.
Выводы
1. Найдены приближенные значения определенного интеграла от заданной функции на указанном отрезке с использованием формулы прямоугольников.
2.С уменьшением шага разностной сетки погрешность вычисления при ближенного значения определенного интеграла уменьшается.
3.Погрешность вычисления интеграла не превышает КГ6 (согласно табл.
2.3), если шаг интегрирования равен 3,9-10~3 для метода прямоугольников с центральной точкой и 1,9-Ю^6 для метода прямоугольников с левой И правой точками. Это свидетельствует о более высокой эффективности метода прямо угольников с центральной точкой.
4. Для вычисления значения определенного интеграла по формуле прямо угольников с центральной точкой на компьютере с процессором Intel® Pentium® 4 (тактовая частота 2,2 ГГц, объем оперативной памяти 512 Мбайт) требуется 0,8-10 '3 с.
ю
Задание. Для определенного интеграла je~xdx :
о
-найти значение заданного интеграла;
-исследовать сходимость численно определяемых значений при умень шении шагов интегрирования;
-определить зависимость погрешности численного интегрирования от шага интегрирования;
-установить, при каком шаге интегрирования погрешность вычисления интеграла не превышает КГ6/
-оценить быстродействие вычислительной программы.
Алгоритм решения
Пусть функция /(х ) на отрезке [xk. ]txk] заменяется линейным прибли жением /(х ) * [(хк - x)f{xk_\ )+ (х - хк_\)f(xk)]/h. Это означает, что для разло жения /(х ) используются две функции: Фо(*) = (**-*)/Л и Ф1(х) = (х-х^_1)/Л. В этом случае весовые коэффициенты принимают следую щие значения:
С0* = }<PoW£b: = r . С* = jcp,(x)dc = ^.
Отсюда вытекает формула трапеций:
}/(x)dx * /(**_, ) | + /(* , ) | = {/(х,.,)+ f{x t Щ . **-■
Погрешность вычисления интеграла на отрезке [х*ч , х*] оценивается ве личиной
M ± £ L = 0 {h} ).
Для всего отрезка интегрирования [а, Ь] погрешность интегрирования Оценивается выражением
|6|<M 2A2(6 -a)/l2 . В этих выражениеях, как и ранее,
Иными словами, для всего отрезка [а, Ь] погрешность формулы трапеций Имеет второй порядок.
На рис. 2.5 приведена зависимость погрешности приближенного вычисле-
ю
ния определенного интеграла Je'xdx с помощью формулы трапеций.
о
Выводы
1. Найдено приближенное значение определенного интеграла от заданной функции на указанном отрезке с использованием формулы трапеций.
2.С уменьшением шага разностной сетки погрешность определения при ближенного значения интеграла уменьшается.
3.Погрешность вычисления интеграла по формуле трапеций не превышает КГ6 (согласно табл. 2.4), если шаг интегрирования равен 1,95-10-3
4.Для вычисления значения определенного интеграла по формуле трапе
ций на компьютере с процессором Intel® Pentium® 4 (тактовая частота 2,2 ГГц, объем оперативной памяти 512 Мбайт) требуется 3,Ы(Г3 с.
2.2.3. Формула парабол (Симпсона)
ю
Задание. Для определенного интеграла je~xdx ;
о
-разработать вычислительную программу, реализующую метод парабол;
-найти значение заданного интеграла;
-исследовать сходимость численно определяемых значений при умень шении шагов интегрирования;
-определить зависимость погрешности численного интегрирования от шага интегрирования;
-установить, при каком шаге интегрирования погрешность вычисления интеграла не превышает 10-6;
-оценить быстродействие вычислительной программы.
Алгоритм решения
Пусть на отрезке [х*_1} х*] функция /(х ) заменяется полиномом Лагранжа
2-й степени:
ЛЛ |
(*-*<-1/2 К* |
*») |
f t |
\ |
(*-*»-! К * -* * ) |
f L |
L |
||||
2 ^ - |
г |
у г |
m |
*+к |
|
- г |
Иг |
_ г |
к |
*'V2 ^ |
|
|
№ - 1 “ Xk-l/2 |
А Х *-1 |
Хк) |
\Хк-1/2 |
Х А-1 )\Хк-У2 |
Хк) |
|
||||
|
|
+ ( * - * » - ■ ) ( * - * * - , / 2 ) f ( r |
\ |
|
|
|
|||||
|
|
|
(** |
|
-JCfc-va) |
|
|
|
|
|
= Ш Х ~ *‘-1/2Xх - ** )/(**-!)- 2(* - **-1 )(Х “ х*)/(*MJ + (х - X*-l)(х - Xk-V2)/(** )]• |
|||||
п |
|
|
|
|
|
Здесь хк_1/2 = (** + дсг* _ 1 )/2 - центральная точка отрезка [х*_,, хА]. Для раз |
|||||
ложения f( x ) |
используются три |
функции: |
ф0(х) = 2(х - хк_112)(х - хк)/h2, |
||
Ф,(х) ——4(х -x* _ ,)(x -xJ/A 2, ср2 (х) = 2(х - х*., )(х - х*_1/2)/h2 |
|||||
Весовые коэффициенты принимают значения: |
|
||||
С0* = |
) Фо(*)<Ь = | . <? = |
}ф,(х)Лс = у |
. С * = |
}<p2(x)dx = | . |
|
*1| |
Х*-| |
**-1 |
|||
Отсюда вытекает формула парабол (Симпсона) |
|
||||
|
|
j/(x )d x * [/‘(хд.,)+ 4/ ( Xj1_1/2 )+ /(х* ) ] | . |
|||
Погрешность вычисления интеграла на отрезке \хк_х, хк\ оценивается ве |
|||||
личиной |
= o(h5). Для всего отрезка интегрирования [а, Ъ] погрешность |
||||
2880 |
4 |
7 |
|
|
|
|
|
|
id |
|
„ |
интегрирования оценивается выражением |о| <, — |
-— -. В этих выражениях |
||||
|
|
|
|
2880 |
|
МАк= yiax J / /V(x)|, |
М4 = таХ||у',у(лг)|. Иными |
словами, |
для всего отрезка |
[а, b] погрешность формулы парабол имеет четвертый порядок.
Выполнение расчетов
Для различных значений шага h определяются, в соответствии с приве денным выражением, приближенные значения заданного интеграла. В табл. 2.5 приведены отклонения 5 = |/ - I h\ получаемых численных значений /* интегра ла от точного значения
|
1= fe-J,dx = - e - J'l'0 = 0,9999546. |
|
|
|
J |
1о |
|
|
О |
|
Таблица 2.5 |
|
|
|
|
Зависимость погрешности значения интеграла от сеточного шага h |
|||
h |
5 |
И |
б |
1,00000-10° |
3,37137-10^ |
1,56250-10'2 |
9,09318-10'" |
5,00000-10’1 |
2,15401-Ю-5 |
7,81250-10'3 |
7,15300-1 Г " |
2,50000-10-1 |
1,35383-Ю-6 |
3,90625-10‘3 |
7,03170-10 '11 |
1,25000-10"1 |
8,47980-10"® |
1,95312-10_3 |
7,02421-10 '11 |
6,25000-10-2 |
5,36757-10‘9 |
9,76562-10м |
7,02360-10 '11 |
3,12500-Ю”2 |
4,01351-Ю'10 |
|
|