НАБЛИЖЕНЕ ОБЧИСЛЕННЯ ІНТЕГРАЛІВ ЗА ДОПОМОГОЮ КВАДРАТУРНИХ ФОРМУЛ НЬЮТОНА-КОТЕСА

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2010
Тип роботи:
Лабораторна робота
Предмет:
Інші

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” / Лабораторна робота №5 Тема: «НАБЛИЖЕНЕ ОБЧИСЛЕННЯ ІНТЕГРАЛІВ ЗА ДОПОМОГОЮ КВАДРАТУРНИХ ФОРМУЛ НЬЮТОНА-КОТЕСА» Завдання: 1. Одержати варіант завдання. 2. Вивчити теоретичну частину. 3. Використовуючи будь-яку з відомих Вам мов програмування, написати та відлагодити програму наближеного обчислення означеного інтеграла за допомогою квадратурних формул НьютонаКотеса з заданою точностю . 4. Для відлагодження програми потрібно вибрати таку підінтегральну функцію і межі інтегрування, щоб інтеграл обчислювався точно, наприклад . Якщо точність  досягнута, то вивести на друк величину похибки . Варіант №15. Метод Сімпсона. № варіанта     15.      Короткі теоретичні відомості Нехай потрібно обчислити інтеграл  (1) де  — задана інтегровна на  вагова функція,  — задана достатньо гладка на  функція. Для наближеного обчислення (1) будемо розглядати формули вигляду  (2) які називаються квадратурними формулами. Числа  називають вузлами квадратурної формули, а числа  — коефіцієнтами, або ваговими коефіцієнтами. Величина  називається залишковим членом, або похибкою квадратурної формули. Якщо функцію  на  замінити інтерполяційним поліномом Лагранжа то одержимо квадратурну формулу інтерполяційного типу. У цьому випадку . (3) Якщо у квадратурній формулі (2) з ваговими коефіцієнтами (3) для інтегралів (1) з  вузли рівновіддалені, тобто   то така формула називається квадратурною формулою Ньютона–Котеса. У формулах Ньютона–Котеса крок . Тоді квадратурна формула (2), (3) буде мати вигляд де Поклавши , маємо складену формулу Сімпсона (парабол)   ,  для формули Сімпсона маємо оцінку похибки . Алгоритм наближеного обчислення інтеграла для квадратурної формули Сімпсона. 1. Ввожу значення . 2. . 3. Обчислюю величину кроку =(b-a)/2N та вузли квадратурної формули =a+2ih. 4. Обчислюю наближене значення інтеграла:, 5. Приймаю. 6. Обчислюю наближене значення  за тією ж формулою. 7. Якщо  то присвоююі перехожу до пункту 5. 8. Уточнюю наближене значення інтеграла за формулою . 9. Вивожу . Результати отримані за допомогою пакету програм Maple 12. > / / / / / / / /// Код програми: #include <iostream.h> #include <math.h> //using namespace std; int N = 8; double a = 0, b = 1, e = 0.0000001, h = (b - a) / (2 * N), X[100], Ics, Ics2; double F(double); void Simpson(); void main() { Simpson(); cout<<"Iteraciji zakin4eno... Velu4uba pohubku = "<<fabs(Ics - Ics2)<<endl; Ics = Ics2 + (Ics2 - Ics)/15; cout<<"N = "<<N<<"\nh = "<<h<<"\nIh = "<<2 * Ics<<endl; } double F(double x) { double func = pow(x, 3) / (pow(x, 8) + 1); return func; } void Simpson() { for(int i = 0; i < N + 1; i++) X[i] = a + 2 * i * h; double S = F(X[0]); for(i = 1; i < N; i++) if(i % 2 == 1) S += 4 * F(X[i]); else S += 2 * F(X[i]); S += F(X[N]); Ics = S * h / 3; Ics2 = Ics; do { Ics = Ics2; N = 2 * N; h = h / 2; for(int i = 0; i < N + 1; i++) X[i] = a + 2 * i * h; S = F(X[0]); for(i = 1; i < N; i++) if(i % 2 == 1) S += 4 * F(X[i]); else S += 2 * F(X[i]); S += F(X[N]); Ics2 = S * (h / 3); } while(fabs(Ics - Ics2)/15 > e); } Результат виконання програми: / Висновок: В процесі виконання даної лабораторної роботи я наближено обчислив інтеграл за допомогою квадратурних формул Ньютона-Котеса, а саме формули Сімпсона. Значення обчислене за допомогою цієї формули майже співпало із значенням отриманим за допомогою пакету програм Maple 12.
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!