1-laboratoriya ishi mavzu: Turli modellar tuzishga doir misollar yechish. Kerakli texnik vositalar


Download 1.87 Mb.
bet8/15
Sana27.12.2022
Hajmi1.87 Mb.
#1067790
1   ...   4   5   6   7   8   9   10   11   ...   15
Bog'liq
Labaratoriya modellashtirish

Nazariy qism.
Masalaning qo‘yilishi: [a,b] oraliqda aniqlangan uzluksiz f(x) funksiya berilgan bo‘lib bizdan quyidagi
(1)
integralni hisoblash talab qilingan bo‘lsin. Ba’zi hollarda f(x) funksiyaning berilishiga qarab bu integralni aniq hisoblashimiz mumkin. Amaliy ishlarda f(x) funksiya shunday ko‘rinishga ega bo‘ladiki, (1) integralni aniq hisoblab bo‘lmaydi. Bunday hollarda (1) integralni berilgan aniqlikda taqribiy hisoblashga to‘ѓri keladi.
Ќuyida aniq integralni hisoblash uchun bir necha taqribiy usullar, ularning algoritmi va unga mos Paskal algoritmik tilida tuzilgan programmalari keltirilgan.
To‘ѓri to‘rtburchaklar usuli. x0=a, xn=b, n – natural son bo‘lsin. Ushbu formulalar yordamida (1) integralni taqribiy hisoblash mumkin:

bu yerda xi=xi-1+h, yi=f(xi), i=1,2,…,n.
To‘ѓri to‘rtburchak usuli uchun xatolik quyidagicha aniqlanadi:
|I-S|
Aniq integralni to‘ѓri to‘rtburchak usulida hisoblash uchun Paskal tilida tuzilgan dasturning ko‘rinishi:
program turt_bur; uses crt;
var a,b,int:real; n:integer;
function f(x:real):real;
begin
f:= { f(x) funksiyaning ko‘rinishi }
end;
procedure turtburchak(a1,b1:real;n1:integer; var int1:real);
var i:integer; h1,c:real;
begin
h1:=(b1-a1)/n1;
c:=0; int1:=0; c:=a1-h1/2;
for i:=1 to n1 do
begin
c:=c+h1; int1:=int1+f(c)
end;
int1:=int1*h1;
end;
begin
read(a,b,n);
turtburchak(a,b,n,int);
writeln('Integr "=',int:10:4);
end.
Trapesiya usuli. [a;b] oraliq xi=a+ih nuqtalar bilan (bu yerda i=1,2,…,n; x0=a, xn=b, n-natural son) n+1 ta oraliqqa ajratiladi va har bir oraliqda egri chiziqli trapesiya yuzi taqribiy ravishda to‘ѓri chiziqli trapesiya yuziga almashtirilib, quyidagi taqribiy formulani hosil qilamiz

bu yerda I-(1) integralning aniq qiymati, S-(1) integralning taqribiy qiymati, yi=f(xi)
Xatolikni baholash: , M=max|f’’(z)| , z[a,b]
Aniq integralni trapesiya usulida hisoblash uchun Paskal tilida tuzilgan dasturning ko‘rinishi:
program trap; uses crt;
var n1:integer; a,b,i1:real;
function f(x:real):real;
begin
f:= { f(x) funksiyaning ko‘rinishi }
end;
procedure trap1(a1,b1:real;N:integer; var int:real);
var i:integer; h,s:real;
begin
h:=(b1-a1)/n;
s:=(f(a1)+f(b1))/2;
for i:=1 to n-1 do s:=s+f(a1+i*h);
int:=s*h;
end;
begin
clrscr;
write('a='); read(a);
write('b='); read(b);
write('N='); read(n1);
trap1(a,b,n1,i1);
writeln('i=',i1:10:4);
end.
Simpson usuli. x0=a, x2n=b , yi=f(xi), i=1,2,…,n. n- natural son bo‘lsin. Ushbu yiѓindi yordamida (1) integralni taqribiy hisoblash mumkin:

Xatoliklar:
, M=max|fIV(z)|, z[a,b].
Misol. integral qiymatini [1;2] oraliqda n=4 da, trapesiya formulasi bilan hisoblang:

x0=1, x1= x2= x3= x4=2;
;



.
Aniq integralni Simpson usulida hisoblash uchun Paskal tilida tuzilgan dasturning ko‘rinishi:
program simpson; uses crt;
var a,b,int1:real; n:integer;
function f(x:real):real;
begin
f:= { f(x) funksiyaning ko‘rinishi }
end;
procedure simps(a,b:real;n:integer;var int:real);
var h,s,s1,s2:real; i:integer;
begin
h:=(b-a)/(2*n);
s1:=0; s2:=0;
s:=f(a)+f(b);
for i:=1 to n do s1:=s1+f(a+(2*i-1)*h);
for i:=1 to n-1 do s2:=s2+f(a+2*i*h);
int:=h*(s+4*s1+2*s2)/3;
end;
begin clrscr;
write('a='); read(a);
write('b='); read(b);
write('n='); read(n);
simps(a,b,n,int1);
writeln('integral=',int1:10:4);
end.

Download 1.87 Mb.

Do'stlaringiz bilan baham:
1   ...   4   5   6   7   8   9   10   11   ...   15




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling