Применение квадратурной формулы Чебышева для вычисления определенного интеграла
| Категория реферата: Рефераты по математике
| Теги реферата: реферат по истории, сочинение татьяна
| Добавил(а) на сайт: Regina.
Предыдущая страница реферата | 1 2 3 4 5 6 | Следующая страница реферата
y 3 =sin(x 3) = sin(0,785) = 0,706825
y 4 =sin(x 4) = sin(0,509015) = 0,487317
y 5 =sin(x 5) = sin(0,868511) = 0,763367
I = p /10(0,131118+ 0,471494+0,706825+0,487317+0,763367) = p /10*2,560121=0,8038779
Описание алгоритма программы.
Процедура TABL — это подпрограмма, осуществляющая вывод таблицы узлов (аргумент — функция).
Процедура CHEB — используя массивы x i и y i, высчитывает по квадратурной формуле Чебышева приближенное значение интеграла.
Процедура FORM — используя массив, содержащий аргументы x i заполняет массив y i.
Процедура VVOD — заполняет массив, содержащий в себе аргументы x i.
При запуске программы необходимо ввести границы интегрирования. После ввода границ интегрирования используется процедура VVOD, а затем высчитывается и выводится на экран шаг табулирования функции h. После этого используем процедуры FORM и CHEB. Получив результат, выводим таблицу (процедура TABL) и интеграл.
Делая вывод по исследованию нашей работы можно заметить, что вычисление определенных интегралов с помощью квадратурных формул, а в частности по формуле Чебышева не дает нам точного значения, а только приближенное. Чтобы вычислить интеграл более точно нужно уметь правильно выбрать метод и формулу, по которой будет вестись расчет. Также важно какой будет взят шаг интегрирования. На практике не всегда можно решить задачу интегрирования аналитическим способом, поэтому необходимо знать численные методы, хотя и они не могут дать точного значения интеграла.
Листинг программы: program integral; uses crt; const n = 5; k = -0.832498; l = -0.374541; z = 0.0; type aa = array[1..n] of real; var x,y:aa; a,b,h,ich:real; { заполнение х-сов в массив х[5] }; procedure vvod(var a,b:real;var c:aa); var i:integer; t:aa; Begin t[1]: = k; t[2]: = l; t[3]: = z; t[4]: = l; t[5]: = k; for i: = 1 to n-1 do c[i]: = ((b+a)/2 + (b-a)/2*t[i]); for i: = n-1 to n do; c[i]: = 1 - c[n+1-i]; end; {заполнение y-ков в массиве у[5]} procedure form(var x:aa; var y:aa); var i:integer; Begin for i:=1 to n do y[i]:=sin(x[i]); {функция} end; {процедура для расчета интеграла по квадратурной формуле Чебышева} procedure cheb(var y:aa;var ich:real); var i:integer; Begin ich: = 0; for i: = 1 to n do ich: = ich+y[i]*h; end; {процедура вывода таблицы} procedure tabl; var i:integer; Begin
writeln('___________________________________');
writeln('| i | t | x | y |');
writeln('___________________________________');
writeln('| 1 |',k:9:6,'|',x[1]:9:6,' |',y[1]:9:6,'|');
writeln('| 2 |',l:9:6,'|',x[2]:9:6,' |',y[2]:9:6,'|');
writeln('| 3 |',z:9:6,'|',x[3]:9:6,' |',y[3]:9:6,'|');
writeln('| 4 |',l:9:6,'|',x[4]:9:6,' |',y[4]:9:6,'|');
writeln('| 5 |',k:9:6,'|',x[5]:9:6,' |',y[5]:9:6,'|');
writeln('___________________________________');
end; Begin clrscr; writeln (Программа для вычисления); writeln (Определенного интеграла); writeln; writeln('Введите границы интегрирования a,b:'); readln(a,b); vvod(a, b, x); h: = (b-a)/n; writeln ('h = ',h:9:6); form(x,y); cheb(y,ich); tabl; writeln('I = ',ich:8:6); end
Вывод результата: Программа для вычисления определенного интеграла.
Введите границы интегрирования a,b: 0 1.5708, h= 0.314160
____________________________
Рекомендуем скачать другие рефераты по теме: шпори, сочинение татьяна.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 | Следующая страница реферата