Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metoduchka ІТАС_.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
25.85 Mб
Скачать

3. Теоретична оцінка похибки чисельного інтегрування

Розглянемо приклади використання теоретичної оцінки похибки інтегрування на прикладі двох завдань.

Завдання 1. Визначити теоретичну похибка чисельного інтегрування методом трапецій у випадку одного елементарного відрізка інтегрування ..

Теоретична похибка для методу трапецій становить

У разі елементарного відрізка іртегрірованія, якщо задані межі інтегрування і подинтегральная функція, завдання можна вирішити наприклад таким чином:

В результаті отримаємо

f2 = 50*x^3-366/5*x^2+34/5 M2 = 16.4000 Погрешность R = 0.1164

Т.ч. теоретична оцінка абсолютної похибки становить 0.1. У задачі 1 лабораторної роботи вам пропонується переконатися, що дана теоретична оцінка дійсно справедлива.

Завдання 2. Визначити крок дискретизації і кількість вузлів інтегрування, необхідні для того. щоб похибка інтегрування не перевищувала величини 0.0001.

Якщо задані межі інтегрування і інтегрована функція, завдання можна вирішити наприклад таким чином:

В результаті отримаємо

f2 = 50*x^3-366/5*x^2+34/5 M2 = 16.4000 h = 1.289562396771206e-002 n = 3.412010160203707e+001 n = 35 h = 1.257142857142857e-002

Таким чином, щоб обчислити інтеграл від функції

f(x)=2.5*x5-6.1*x4+3.4*x2-9.1*x+18

за методом трапецій c точністю 0.0001, небхідно задати 35 вузлів інтегрування. При цьому крок дискретизації становить h = 1.257142857142857 * 10-2.

Вам залишається переконатися, що похибка інтегрування з даними параметрами дійсно не перевищує 0.0001.

4. Чисельне інтегрування

Обчислювальні формули наведені в додатку. Їх аналіз показує, що формули для одного елементарного відрізка інтегрування не вимагають будь-яких нових знань. Необхідно тільки приготувати m-функцію, в якій слід визначити інтегруються функцію. І звичайно для оцінки похибки інтегрування слід знати точне значення інтеграла (див. Вище).

Випадок формул для складеного відрізка інтегрування більш складний. Тут потрібне обчислювати значення сум. Наприклад в методі Сімпсона

де

У мові программіровані MATLAB, як і в інших мовах програмування, існує оператор циклу for, можливостей якого досить для вирішення поставлених завдань. Синтаксис оператора циклу описаний в розділі Програмування. Далі ми просто розглянемо приклад вирішення задачі чисельного інтегрування.

Приклад. Чисельне інтегрування методом Сімпсона.

Замальовану область слід обрахувати самостійно.

Результаты

>> Результаты Точное значение интеграла 2.575860114624924e-001 Результат и погрешность для элементарного отрезка 2.575665708043314e-001 1.944065816106289e-005 Количество узлов 4 Результат и погрешность по методу Симпсона 2.575859351120611e-001 7.635043136611230e-008

Звичайно, розглянутий тут спосіб вирішення завдання є не єдиним і не найкращим. Зокрема, можна було б створити m-функцію, в якій і вироблялося б обчислення інтеграла.

5. Чисельне інтегрування засобами MatLab

В MatLab реалізовані безліч сучасних методів чисельного інтегрування. Ми розглянемо найпростіші з них.

А. Метод трапецій. Метод трапеції реалізований в MatLab декількома функціями:

  • cumtrapz(у)

  • cumtrapz(x,y)

  • trapz(y)

  • trapz(x,y)

Найбільш цікава остання з них. Ця функція обчислює інтеграл від функції у (х) по х методом трапецій. Аргумент і функція задаються у вигляді векторів або х - у вигляді вектора, а у - у вигляді матриці. Якщо у (х) - матриця, то функція повертає вектор значень інтеграла для кожного шпальти матриці.

Приклад. Нехай подинтегральная функція має вигляд

у(х) = х*еx + ln(x) + 1

Необхідно обчислити визначений інтеграл в діапазоні від 1 до 10 з кроком 0.5.

рішення:

x=1:0.5:10; y=x.*exp(x)+log(x)+1; trapz(x,y)

рішення:

ans = 2.032841320958599e+005

Б. Метод Сімпсона. Метод Сімпсона реалізований в MatLab також декількома функціями. Ми розглянемо найпростішу з них:

quad ('fun', a, b)

quad ('fun', a, b, tol)

Позначення:

'fun'- подинтегральная функція, взята в одинарні лапки;

а, b - межі інтегрування;

tol - відносна похибка, що задається користувачем; за замовчуванням tol = 10-3.

Приклад. Обчислити інтеграл від функції x+ex на відрізку [1, 2] з точністю 10-5.

quad('x+exp(x)', 1, 2, 1e-5)

Результат:

ans = 6.170774280645000e+000

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]