У вас вопросы?
У нас ответы:) SamZan.net

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

Работа добавлена на сайт samzan.net: 2015-07-10

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 2.2.2025

Міністерство освіти і науки, молоді та спорту України

Львівський національний університет імені Івана Франка

Факультет електроніки

Звіт

Про виконання лабораторної №8

«Чисельне інтегрування. Формули Грегорі»  

Виконав :

Студент групи ФЕІ-33

Ходонович В.Р

Перевірив :

доц. Шувар Р. Я

Львів-2011

Мета: вивчити методи чисельного інтегрування з використанням квадратурних формул Грегорі.

Основні відомості:

Найпростішою квадратурною формулою Ньютона-Котеса є формула трапецій,  яка використовує два вузли

Для побудови більш точніших формул у випадку квадратурних формул Ньютлона-Котеса використовується більша кількість вузлів. Так для побудови квадратурної формули Сімпсона ми використовуємо три вузли. Можна піти іншим шляхом і для підвищення точності квадратурної формули використовувати інформацію не тільки про значення функції у вузлі, а про значення її похідних. Побудовані таким чином формули для чисельного інтегрування називаються квадратурними формулами Грегорі.

Побудуємо квадратурну формулу Грегорі на двох вузлах  та  у вигляді

Обмежимось спочатку двома першими членами розкладу

Значення коефіцієнтів  та  знайдемо за допомогою методу невизначених коефіцієнтів. Отримаємо систему рівнянь:

ЇЇ розвязок . Врахуємо тепер наступні два члени розкладу. Отримаємо формулу:

 Значення коефіцієнтів  та  знайдемо методом невизначених Отримаємо систему рівнянь:

Задамо умову, що значення коефіцієнтів  та  є такими самими, що у попередньому випадку, тобто . Отримаємо

Знаходимо

, ;

Ми вивели формулу:

Отримана формула є точною для многочленів . Для побудови більш точніших формул використовуємо інформацію про значення вищих похідних

Накладаємо умову, що значення коефіцієнтів , які ми отримали раніше є ті ж самі, що і в попередній формулі. Отримаємо систему рівнянь

Знаходимо значення коефіцієнтів

Побудуємо наступну формулу з використанням значень третіх похідних.

Накладемо умову, що значення коефіцієнтів  є ті ж самі, що в  попередніх двох формулах, тобто ми шукатимемо квадратурну формулу наступного вигляду

Методом невизначених коефіцієнтів отримаємо систему рівнянь

Знаходимо значення коефіцієнтів

,

Ми отримали наступну формулу Грегорі

Отримана формула є точною для . Аналогічно можна побудувати і більш точніші формули. Перевагою такого підходу, що для підвищення точності необхідно не використовувати нову формулу, як у формулах Ньютона-Котеса, а обрахувати тільки новий доданок.

Побудуємо складову формулу Грегорі для  відрізків:

Для обчислення похідних в крайніх точках  і  апроксимуємо підінтегральну функцію інтерполяційним многочленом Ньютона. Для вузла  отримаємо:

Якщо обмежитись першими трьома членами, то ця формула буде точною для многочленів степені .

       Обчислимо першу похідну

Аналогічно для вузла :

Врахувавши, що вузли є рівновіддаленими, виразимо розділені різниці через відповідні скінченні різниці.

В результаті отримаємо формулу, яка називається квадратурною формулою Грегорі:

Ця формула є  точною  для многочленів степеня  . Аналогічно можна отримати і біль точнішу формулу:

Хід роботи

  1.  Для заданої аналітичної функції  знаходжу точне значення інтегралу . .
  2.  Пишу програму обчислення наближеного значення інтегралу за

допомогою формули Грегорі.

  1.  Досліджую залежність точності обчислення інтегралу за допомогою формули Грегорі в залежності від числа використаних складових в формулі Грегорі для заданого числа вузлів n(n=100..400).

Тест програми:

Program Lab8;

uses  crt;

var

 N           :integer;

 integ0 , integ    :extended;

 fout              :text;

 k, a, b, h :extended;

    

function func(x:extended):extended;

Begin

 func := x*exp(x);    

End;

function intfunc(xi:extended):extended;

Begin

 intfunc := xi*exp(xi)-exp(xi);

End;

function factorial(n :extended):extended;

Begin

if (n=0) then

 factorial := 1

 else

   Begin

     if (n=1) then

       factorial := 1

       else

       factorial := n*factorial(n-1);

   End;

End;

function Cki (n:extended; k:extended):extended;

Begin

Cki := factorial(n)/(factorial(k)*factorial(n-k));

End;

function minusone(n:integer):integer;

Begin

 if (n mod 2 = 0) then

   minusone:=1

 else

   minusone := -1;

End;

function Rizn_up(kriz:integer):extended;

var

 iriz :integer;

 tempriz :extended;

Begin

 tempriz:=0;

 for iriz:=0 to kriz do

   Begin

     tempriz := tempriz + Cki(kriz,iriz)*minusone(kriz-iriz)*func(a+iriz*h);

   End;

 Rizn_up:=tempriz;

End;

function Rizn_down(krizd:integer):extended;

var

 irizd :integer;

 temprizd :extended;

Begin

 temprizd:=0;

 for irizd:=0 to krizd do

   Begin

     temprizd := temprizd + Cki(krizd,irizd)*minusone(irizd)*func(b-irizd*h);

   End;

 Rizn_down:=temprizd;

End;

BEGIN

clrscr;

a := 1e-5;

b := 1;

N := 300;

h := (b-a)/N;

Integ0 := intfunc(b)-intfunc(a);

assign(fout, 'Lab8.txt');

rewrite(fout);

  Integ := 0;

  Integ := Func(a)+func(b);

  for n:=1 to N-1 do

    Integ := Integ+2*func(a+n*h);

  Integ := Integ*h/2;

  Writeln(fout, 1, ' ', abs(Integ-Integ0));

  Integ:=Integ + h*(Rizn_up(1)-Rizn_down(1))/12;

  Writeln(fout, 2, ' ', abs(Integ-Integ0));

  Integ:=Integ - h*(Rizn_up(2)+Rizn_down(2))/24;

  Writeln(fout, 3, ' ', abs(Integ-Integ0));

   Integ:=Integ + 19*h*(Rizn_up(3)-Rizn_down(3))/720;

  Writeln(fout, 4, ' ', abs(Integ-Integ0));

   Integ:=Integ - 3*h*(Rizn_up(4)+Rizn_down(4))/160;

  Writeln(fout, 5, ' ', abs(Integ-Integ0));

   Integ:=Integ + 863*h*(Rizn_up(5)-Rizn_down(5))/60480;

  Writeln(fout, 6, ' ', abs(Integ-Integ0));

   Integ:=Integ - 275*h*(Rizn_up(6)+Rizn_down(6))/24192;

  Writeln(fout, 7, ' ', abs(Integ-Integ0));

close(fout);

END.

Функція y(x)= x*exp(x);

Межі інтегрування: (0;1).

Рис.  . Графік залежності точності обчислення від числа використаних складових в формулі Грегорі

Висновки:

На даній лабораторній роботі я вивчив  методи чисельного інтегрування з використанням квадратурних формул Грегорі. Результати вимірювань показав на графіку, що точність інтегрування  зростає при рості числа доданків у формулі Грегорі.




1. Тема 2.1.Сетевые технологии обработки информации и защита информации Виды компьютерных сетей.
2. Статья подготовлена редакцией сайта Slf
3. а нейролептики; б транквілізатори; в седативні засоби тощо а до засобів стимулюючої дії а антидепресан
4. Экологическое воздействие разломных зон на окружающую среду на примере мушкетовского надвига
5. то давно до возникновения кланов к центру зоны отправилась экспедиция
6. Авангардом традиционно назывались первые ряды войска; быть
7. тематических теорий
8. Конст право составляет основу всех остальных отраслей права и закрепляет основополагающие прпы националь
9. это определенный уровень организации жизни- чем выше план тем сложнее законы организации жизни тем выше ко
10. Таможенный кодекс Российской Федерации 2004 года