Наближене обчислення визначених інтегралів
До обчислень визначених інтегралів зводяться багато практичних задач фізики, хімії, екології, механіки й інших природничих наук. На практиці формулою Ньютона-Лейбніца не завжди вдається скористатися. У цьому випадку використовуються методи чисельного інтегрування. Вони засновані на наступних міркуваннях: з геометричної точки зору визначений інтеграл являє собою площу криволінійної трапеції. Ідея методів чисельного інтегрування зводиться до розбивки інтервалу на безліч менших інтервалів і знаходженню шуканої площі як сукупності елементарних площ, отриманих на кожному частинному проміжку розбивки. Залежно від використаної апроксимації виходять різні формули чисельного інтегрування, що мають різну точність. Розглянемо методи трапецій і Сімпсона (парабол).
Метод трапецій
Тут використовується лінійна апроксимація, тобто графік функції представляється у вигляді ламаної, з’єднуючої точки . Формула трапецій при постійному кроці , де n – число ділянок, має вигляд
(5.8) |
У МАТLAB дану формулу реалізує програма .
Метод Сімпсона
Якщо підінтегральну функцію замінити параболою, то формула Сімпсона з постійним кроком інтегрування буде у вигляді
(5.9) |
У МАТLAB формула Сімпсона реалізується програмою quad. Підінтегральна функція може задаватися за допомогою дескриптора @, тоді вона програмується у файлі-функції, або за допомогою апострофів, тоді вона записується в самій програмі quad. Точність обчислення інтегралів за замовчуванням прийнята рівною .
Приклад 5.6. Обчислити й вивести на друк по методах трапецій і Сімпсона значення інтеграла .
Протокол програми методу трапецій
Результат обчислень
Протокол програми методу Сімпсона
Результат обчислень
Точне значення інтеграла дорівнює 0.785398163. Як видно із приклада 5.6 отримані результати є практично точними, а самі протоколи досить прості.
Варіанти завдань. Обчислити й вивести на друк значення визначеного інтеграла методами трапецій і Сімпсона, дані взяти з табл. 5.11.
Таблиця 5.11
Підінтегральна функція | Інтервал інтегрування | Точність обчислень інтеграла | ||||
1 | 0.001 | |||||
2 | 0.002 | |||||
3 | 0.0001 | |||||
4 | 0.003 | |||||
5 | 0.0015 | |||||
6 | 0.002 | |||||
7 | 0.001 | |||||
8 | 0.001 | |||||
9 | 0.0005 | |||||
10 | 0.003 | |||||
11 | 0.001 | |||||
12 | 0.0025 | |||||
13 | 0.001 | |||||
14 | 0.002 | |||||
15 | 0.001 | |||||
16 | 0.0015 | |||||
17 | 0.002 | |||||
18 | 0.001 | |||||
19 | 0.0006 | |||||
20 | 0.0016 | |||||
21 | 0.002 | |||||
22 | 0.0014 | |||||
23 | 0.002 | |||||
24 | 0.0011 | |||||
25 | 0.0023 | |||||
26 | 0.0015 | |||||
27 | 0.001 | |||||
28 | 0.002 | |||||
29 | 0.0013 | |||||
30 | 0.0025 | |||||
Чисельний розв’язок нелінійних рівнянь
Задача знаходження коренів нелінійних рівнянь зустрічається в різних областях науково-технічних досліджень. Проблема формулюється в такий спосіб. Нехай задана безперервна функція й потрібно знайти корінь рівняння
.
Будемо припускати, що є інтервал зміни , на якому необхідно дослідити функцію й знайти значення х0, при якому дорівнює або досить мало відрізняється від нуля.
Дана задача в системі MATLAB може бути розв’язана в такий спосіб. Спочатку необхідно побудувати графік функції на заданому інтервалі й переконатися в існуванні кореня або декількох коренів. Потім застосувати програми пошуку коренів. Якщо існує один корінь і графік перетинає вісь ОХ, то можна застосувати програму fzero. Якщо має більше одного кореня й може стосуватися й перетинати вісь ОХ, то варто застосувати програму fsolve з пакета Optimization Toolbox, що розв’язує задачу методом найменших квадратів. Програма fzero використовує відомі чисельні методи: розподіл відрізка навпіл, січною й зворотної квадратичної інтерполяції.
Приклад 5.7. Знайти корінь нелінійного рівняння на інтервалі .
Протокол програми
% Будуємо графік заданої функції
З’являється вікно із графіком функції (рис. 5.5), з якого видно, що корінь функції на заданому інтервалі існує. Для точного визначення кореня застосовуємо програми fzero і fsolve.
Рис. 5.5 |
Результат розв’язку
Результат розв’язку
Варіанти завдань. Побудувати графік і знайти корінь нелінійного рівняння. Дані взяти з табл. 5.12.
Таблиця 5.12
Рівняння f(х) = 0 | Відрізок [а; в] | |
1 | 2 | |
1 | [1.0; ] | |
2 | [2.0; 3.0] | |
3 | [8.0; 9.0] | |
4 | [0.5; 1.0] | |
5 | [0.0; 1.0] | |
6 | [3.0; 3.2] | |
7 | [0.0; 1.0] | |
8 | [0.0; 0.2] | |
9 | [0.8; 1.0] | |
10 | [2.6; 3.0] | |
11 | [1.0; 1.5] | |
12 | [1.0; 2.0] | |
13 | [0.0; 1.0] | |
14 | [0.0; 1.0] | |
15 | [3.0; 4.0] | |
16 | [1.0; 1.2] | |
17 | [1.0; 2.0] | |
18 | [0.0; 1.0] | |
19 | [-0.2; -0.1] | |
20 | [0.1; 0.9] | |
21 | [1.0; 1.4] | |
22 | [3.0; 4.0] | |
23 | [0.0; 1.5] | |
24 | [0.0; 1.0] | |
25 | [0.1; 1.0] | |
26 | [0.4; 0.6] | |
27 | [3.0; 4.0] | |
28 | [4.0; 5.0] | |
29 | [2.0; 3.0] | |
30 | [0.0; 0.48] |
Нашли опечатку? Выделите и нажмите CTRL+Enter