Допомога у написанні освітніх робіт...
Допоможемо швидко та з гарантією якості!

Обчислення певних інтегралів

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Program Kursovoy; const A1=5/9; A2=8/9; t=-0.77 459;{константы для взяття інтеграла методом Гаусса} type func=function (x, c, d: real):real;{прототип функції від якої береться інтеграл} var a, b, eps: real;{пределы інтегрування і точність обчислення} c: array of real;{параметры функції, від якої береться інтеграл} d: array of real;{взяты з таблиці 2} function f_test (x, c, d: real):real;{тестовая… Читати ще >

Обчислення певних інтегралів (реферат, курсова, диплом, контрольна)

Міністерство Освіти Російської Федерации.

Рязанська державна радіотехнічна академия.

Кафедра обчислювальної і прикладної математики.

ОБЧИСЛЕННЯ ПЕВНИХ ИНТЕГРАЛОВ.

Пояснювальна записка до курсової роботу з дисципліни «Информатика».

Виконав: студент гр.

Проверил:

Нікітін В.И.

Рязань, 2001 г.

Задание.

Скласти програму обчислення певного інтеграла [pic] з похибкою яка перевищує задану величину [pic]. У конкурсній програмі передбачити захисту від зациклення итерационного процесу, підрахунок і висновок на печатку числа ітерацій, протягом якого знаходить значення інтеграла із заданою похибкою. Для перевірки програми інтегрування обчислити [pic] Метод обчислень — Формула Гаусса.

|№ |f (x) |a |b |з |d |[pic] | |1 |edx/2cos2(cx) |0 |(|0.9; 1; 1.05; |2.4; 2.5; 2.6|10−4 | | | | | |1.1 | | | |2 |(x ln (cdx))2 |1 |e |3; 3.2; 3.4; |0.5; 0.4; |10−3 | | | | | |3.5 |0.85 | |.

Завдання. 1.

Зміст. 2.

Опис методу рішення. 3.

Блок-схема програми. 4.

Текст програми розвитку й результати рахунки. 5.

Укладання. 7.

Бібліографічний список. 7.

Опис методу решения.

У формулі Гаусса кожному інтервалі інтегрування значення функції f (x) обчислюється над рівномірно розподілених по інтервалу вузлах, а абсциссах, вибраних з умови забезпечення мінімуму похибки интерполяции:

[pic] де nчисло інтервалів інтегрування, m — число вычисляемых кожному інтервалі значень функції. [pic], [pic]- кордону інтервалів інтегрування; [pic] і [pic]- коефіцієнти значення яких визначаються величиною m. Для m=3 A1=5/9, A2=8/9, A3=5/9, [pic], t2=0, t3=-t1.

Блок-схема программы.

Блок-схема1: Функція обчислення интеграла.

Блок-схема 2: Основна программа.

Текст програми розвитку й результати счета.

program Kursovoy; const A1=5/9; A2=8/9; t=-0.77 459;{константы для взяття інтеграла методом Гаусса} type func=function (x, c, d:real):real;{прототип функції від якої береться інтеграл} var a, b, eps:real;{пределы інтегрування і точність обчислення} c: array[1.4] of real;{параметры функції, від якої береться інтеграл} d: array[1.5] of real;{взяты з таблиці 2} function f_test (x, c, d:real):real;{тестовая функція sin (x)} begin{интеграл від 0 до пі теоретично дорівнює 2} f_test:=sin (x); end; function f1(x, c, d:real):real;{первая функція з таблиці 2} begin f1:=exp (d*x/2)*sqr (cos (c*x)); end; function f2(x, c, d:real):real;{вторая функція з таблиці 2} begin f2:=sqr (x*ln (c*d*x)); end; {Функція взяття інтеграла від функції f, прототип (вид) якої описаний в типі func a, bмежі інтегрування, cm, dm-параметры з і d функції f, epsточність обчислень k-число ітерацій, які вдалося віднайти інтеграл } function Integral (f:func;a, b, cm, dm, eps: real; var k: integer):real; var S, z, h, c, d, l, x, x1, x2,x3:real;{S-текущее близьке значення інтеграла, z-предыдуще близьке значення интеграла, h-шаг інтегрування, c, d, l, x, x1,x2,x3-вспомогательные перемінні див. стр. 25 методички} i, n: integer;{i-счетчик циклу, n-число інтервалів інтегрування} begin n:=1; S:=0; k:=0; repeat k:=k+1;{увеличиваем число ітерацій} z:=S; {попереднє значення інтеграла одно поточному} n:=n*2;{в двічі збільшуємо число інтервалів інтегрування} h:=(b-a)/n; x:=a; S:=0; c:=h/2; l:=c*t;{определение кроку інтегрування, початкового значення x, сам інтеграл спочатку дорівнює 0, допоміжні перемінні вважаємо } for i:=0 to n-1 do{перебираем все інтервали інтегрування} begin d:=x+c; x1:=d-l;x2:=d; x3:=d+l;{вычисляем значення абцисс вузлів, вибраних з умови забезпечення мінімуму похибки интерполяции}.

S:=S+A1*(f (x1,cm, dm)+f (x3,cm, dm))+A2*f (x2,cm, dm);{добавляем від суми} x:=x+h;{переходим нового інтервал інтегрування} end;

S:=S*c;{умножаем отриману суму в h/2} until (abs (z-S)=14);{выходим з добірки, якщо відносна похибка попереднього і поточного з дитинства інтегралів менше заданої точності або якщо число ітерацій перевищила дозволене} Integral:=S;{возвращаем значення отриманого интергала} end; var i, j, n:integer; begin {обчислюємо значення перевірочного інтеграла, передаючи до функцій Integral ім'я вычисляемой функції у разі f_test, інтервал інтегрування a=0 b=3.14 159 cm=0 dm=0(последние два параметра у разі може бути любыми, т.к. f_test від нього залежною) eps=1e-3(точность), в параметр n, після виходу з функції обчислення інтеграла прописано число ітерацій} writeln («Перевірочний інтеграл від 0 до пі sin (x)dx = «, Integral (f_test, 0,3.14 159,0,0,1e-3,n):7:5,.

" «, n, «ітерацій »); c[1]: =0.9; c[2]: =1; c[3]: =1.05; c[4]: =1.1;{ввод параметрів перша функції} d[1]: =2.4; d[2]: =2.5; d[3]: =2.6; eps:=1e-4; a:=0; b:=3.14 159; writeln («Інтеграл від », a:1:0, «до », b:5:3, «функції f1 », «з точністю », eps:5, «при: »); for i:=1 to 4 do{перебираем параметр з} for j:=1 to 3 do{перебираем параметр d} begin {обчислюємо значення першого інтеграла, передаючи до функцій Integral ім'я вычисляемой функції у разі f1, інтервал інтегрування a=0 b=3.14 159 cm=c[i] dm=d[i](последние два параметра перебираються в циклі і рівні 0, т.к. f1 від нього залежить) eps=1e-4(точность), в параметр n, після виходу з функції обчислення інтеграла прописано число ітерацій} writeln («з= «, c[i]: 4:2, «d= «, d[j]: 4:2, «дорівнює «, Integral (f1,a, b, c[i], d[j], eps, n):8:5, «», n, «ітерацій »); end; readln;{ожидаем натискання клавіші enter, інакше все виведені дані не помістяться однією екран} c[1]: =3; c[2]: =3.2; c[3]: =3.4; c[4]: =3.5;{ввод параметрів перша функції} d[1]: =0.5; d[2]: =0.4; d[3]: =0.85; eps:=1e-3; a:=1; b:=exp (1);{b=e} writeln («Інтеграл від », a:1:0, «до », b:5:3, «функції f2 », «з точністю », eps:5, «при: »); for i:=1 to 4 do{перебираем параметр з} for j:=1 to 3 do{перебираем параметр d} begin {обчислюємо значення другого інтеграла, передаючи до функцій Integral ім'я вычисляемой функції у разі f2, інтервал інтегрування a=1 b=e cm=c[i] dm=d[i](последние два параметра перебираються в циклі і рівні 0, т.к. f2 від нього залежить) eps=1e-3(точность), в параметр n, після виходу з функції обчислення інтеграла прописано число ітерацій} writeln («з= «, c[i]: 4:2, «d= «, d[j]: 4:2, «дорівнює «, Integral (f2,a, b, c[i], d[j], eps, n):8:5, «», n, «ітерацій »); end; end.

Результати счета.

Перевірочний інтеграл від 0 до пі sin (x)dx =2.0 2 итераций Интеграл від 0 до 3.142 функції f1 з точністю 1.0E-0004 при: с=0.90 d=2.40 дорівнює 17.12 437 3 ітерацій с=0.90 d=2.50 дорівнює 19.52 435 3 ітерацій с=0.90 d=2.60 дорівнює 22.28 654 3 ітерацій с=1.00 d=2.40 дорівнює 22.33 040 2 ітерацій с=1.00 d=2.50 дорівнює 25.49 172 2 ітерацій с=1.00 d=2.60 дорівнює 29.12 609 3 ітерацій с=1.05 d=2.40 дорівнює 24.19 102 3 ітерацій с=1.05 d=2.50 дорівнює 27.60 541 3 ітерацій с=1.05 d=2.60 дорівнює 31.52 694 3 ітерацій с=1.10 d=2.40 дорівнює 25.37 969 3 ітерацій с=1.10 d=2.50 дорівнює 28.93 760 3 ітерацій с=1.10 d=2.60 дорівнює 33.1 928 3 итераций Интеграл від 1 до 2.718 функції f2 з точністю 1.0E-0003 при: с=3.00 d=0.50 дорівнює 8.40 102 2 ітерацій с=3.00 d=0.40 дорівнює 5.52 503 2 ітерацій с=3.00 d=0.85 дорівнює 17.78 460 2 ітерацій с=3.20 d=0.50 дорівнює 9.35 094 2 ітерацій с=3.20 d=0.40 дорівнює 6.29 171 2 ітерацій с=3.20 d=0.85 дорівнює 19.17 026 2 ітерацій с=3.40 d=0.50 дорівнює 10.29 153 2 ітерацій с=3.40 d=0.40 дорівнює 7.6 018 2 ітерацій с=3.40 d=0.85 дорівнює 20.52 016 2 ітерацій с=3.50 d=0.50 дорівнює 10.75 780 2 ітерацій с=3.50 d=0.40 дорівнює 7.44 414 2 ітерацій с=3.50 d=0.85 дорівнює 21.18 214 2 итераций.

Заключение

.

У цьому курсової роботі обчислювалися певні інтеграли методом Гаусса. Як очевидно з отриманих результатів, програма працює вірно, т.к. теоретично [pic]=2, що збігаються з розрахунковим, забезпечує задану точність обчислень, при малому числі ітерацій. До переваг даного методу обчислення функцій слід зарахувати, те, що метод Гаусса забезпечує точне обчислення інтеграла від полинома ступеня 2m-1. До вад слід віднести щодо велике час розрахунку інтеграла, на великих m.

Бібліографічний список.

1. Рішення рівнянь і чисельна інтегрування на ЕОМ: Методичні вказівки до курсової роботу з дисципліни «Інформатика». Рязань, 2000 г. 32 c.

2. Бронштейн І.Н., Семендяев К. А. Довідник з математики для інженерів і учнів втузів. М.:1986 544с. 3. Хвальків М.С. Чисельні методи. М.:1975.

———————————;

Выход.

j.

Висновок P. S, n.

Близьке обчислення другого інтеграла S.

j=1,3.

i=1,4.

c[1]: =0.9; c[2]: =1; c[3]: =1.05; c[4]: =1.1; d[1]: =2.4; d[2]: =2.5; d[3]: =2.6; eps:=1e-4; a:=0; b:=3.14 159;

c[1]: =0.9; c[2]: =1; c[3]: =1.05; c[4]: =1.1; d[1]: =2.4; d[2]: =2.5; d[3]: =2.6; eps:=1e-4; a:=0; b:=3.14 159;

i.

Близьке обчислення першого інтеграла S.

Висновок P. S, n.

i.

j.

j=1,3.

i=1,4.

Висновок S.

S=[pic].

Вход.

S=S*c.

d=x+c; x1=d-l; x2=d; x3=d+l;

S=S+A1*(f (x1,cm, dm)+f (x3,cm, cd))+A2*(f (x2,cm, dm)) x=x+h.

i=0,n-1.

i.

Выход (S, k).

НЕТ ДА.

|z-S|< (|P.S| or k>=14.

k=k+1;z=S; n=n*2; h=(b-a)/n; x=a; S=0; c=h/2; l=c*t.

n=1; S=0; k=0;

Вход (f, a, b, cm, dm, ().

Показати весь текст
Заповнити форму поточною роботою