Sunteți pe pagina 1din 4

1.

Calculul numeric al integralelor prin metoda dreptunghiurilor

Una dintre cele mai des aplicate implementri ale calculului numeric este calcularea
integralei definite prin metode aproximative. Metodele directe nu ntotdeauna permit calculul
analitic al integralei, i, de multe ori formula care definete funcia ce trebuie integrat nici nu
este cunoscut. De obicei sunt date doar o serie de puncte n care este cunoscut valoarea
funciei. n aceste cazuri integrala poate fi calculat doar prin metode aproximative (n
presupunerea c funcia de sub integral este continu pe segmentul pe care se face integrarea).
Din cursul de analiz matematic se tie, c sensul geometric al integralei definite este
aria trapezului curbiliniu, determinat de axa 0X, dreptele y = a i y = b, i graficul funciei f(x) pe
segmentul [a,b] (vezi fig. de mai jos)

y
f(x)

0 a b x

Sensul geometric al integralei


definite

Fie dat funcia f (x ) , unde f : [a, b] R i F (x) o primitiv a funciei f (x ) . Funciile


f (x ) i F (x) sunt continuii. Integrala funciei f (x ) pe intervalul [a, b] se calculeaz cu
ajutorul primitivei F (x) conform formulei lui Newton Leibnitz i anume:
b

f ( x)dx = F ( x) = F (b) F (a )
b
a
a
n unele cazuri este dificil de calculat primitiva i atunci sunt bine venite diferite metode
numerice, care aproximeaz funcia iniial f (x ) cu o funcie polinomial g (x) . Astfel integrala
se calculeaz cu aproximaie n jurul primitivei G (x) a funciei g (x) :
b b


a
f ( x )dx g ( x )dx = G ( x ) ba
a
(1)

Sunt cunoscute diferite metode de integrare numeric cu utilizarea diferitor polinoame de


interpolare i puncte de diviziune.
- formule de integrare cu interval nchis capetele intervalului [a, b] se afl printre
punctele de diviziune
- formule de integrare cu interval deschis capetele intervalului [a, b] nu se afl printre
punctele de diviziune.
Formulele de integrare numeric se mai numesc cuadraturi.

Formula dreptunghiurilor de stnga


Considerm funcia f(x) definit, continu i derivabil pe [a, b].
y

y=f(x)

y0 y1 y2 y3

0 a=x0 x1 x2 x3 x4 =b x

ba
mprim segmentul [a, b] n n pri egale, h = , astfel nct a=x0<x1<<xn=b i pe fiecare
n
segment obinut construim un dreptunghi la care o latur este egal cu [xi, xi+1], iar alt latur cu
valoarea funciei f(xi).
Aria trapezului curbiliniu aproximativ este egal cu suma ariilor tuturor dreptunghiurilor.
Este evident c o latur [xi, xi+1] va fi egal cu h, iar alt latur a dreptunghiului este
valoarea funciei f(xi), i=0,1,..,n-1. n aa mod, obinem:
S = h * f ( x0) + h * f ( x1) + h * f ( x2) + ... + h * f ( xn 1) = h * ( f ( x0) + f ( x1) + f ( x2) + ... + f ( xn 1)) =
n 1
= h * f ( xi )
i =0

Programul realizat n Pascal pentru calcularea integralelor prin metoda dreptunghiurilor de


stnga:

Program Dreptunghi_Stanga;
Uses Crt;
Function Fn(x:real):real;
Begin
fn:=Sin(x);
End;
Var a,b,h,x,s:real;
i,n:integer;
Begin
ClrScr;
Write('Introdu extremitile [a,b]: ');
ReadLn(a,b);
Write('Introdu numrul de diviziuni n= ');
ReadLn(n);
h:=(b-a)/n;
s:=0;x:=a;
For i:=0 To n-1 Do
Begin
s:=s+Fn(x);
x:=x+h;
End;
s:=s*h;
WriteLn('Integrala = ',s:12:10);
ReadKey
End.

Formula dreptunghiurilor de dreapta


Considerm funcia f(x) definit, continu i derivabil pe [a, b]. Procedm n felul
urmtor:
ba
a) mprim segmentul [a, b] n n pri egale, astfel nct h = .
n
b) Prin punctele a=x0<x1<<xn=b ridicm perpendiculare pn la intersecia cu graficul
funciei y=f(x). Construim i apoi examinm dreptunghiurile la care o latur este
egal cu [xi, xi+1], iar alt latur cu f(xi+1),i=0, 1,,n-1.
c) Aria trapezului curbiliniu aproximativ este egal cu suma ariilor tuturor
dreptunghiurilor obinute.

y=f(x)

y1 y2 y3 y4

0 a=x0 x1 x2 x3 x4 =b x

S = h * f ( x1 ) + h * f ( x2) + h * f ( x3) + ... + h * f ( xn ) = h * ( f ( x1 ) + f ( x 2) + f ( x3) + ... + f ( xn )) =


n
= h * f ( xi)
i =1

Programul realizat n Pascal pentru calcularea integralelor prin metoda dreptunghiurilor de


dreapta:

Program Drept_Dreapta;
Uses Crt;
Function Fn(x:real):real;
Begin
fn:=Sin(x);
End;
Var a,b,h,x,s:real;
i,n:integer;
Begin
ClrScr;
Write('Introdu extremitile [a,b]: ');
ReadLn(a,b);
Write('Introdu numrul de diviziuni n= ');
ReadLn(n);
h:=(b-a)/n;
s:=0;
x:=a+h;
For i:=1 To n Do
Begin
s:=s+Fn(x);
x:=x+h;
End;
s:=s*h;
WriteLn('Integrala = ',s:12:10);
ReadKey
End.
Nota 1. Menionm c att pentru formula dreptunghiurilor de stnga, ct i pentru formula
h
dreptunghiurilor de dreapta eroarea se calculeaz conform relaiei Rn b a M 1 , unde
2

M 1 = max f ( x ) , a x b .

2
Exemplu. S se calculeze 1
x dx dup formula dreptunghiurilor de stnga, diviznd segmentul

[1;2] n zece pri egale. S se aprecieze eroarea.


2 1
Soluie. Este clar c y = x , pentru n=10 obinem h = = 0,1 . Astfel vom avea x 0 = 1;
10
x1 = x0 + h = 1,1; x2 = 1,2; x3 = 1,3; x 4 = 1,4; x5 = 1,5; x6 = 1,6; x7 = 1,7; x8 = 1,8; x9 = 1,9 . n

acest caz y 0 = 1 = 1; y1 = 1,1 = 1,049; y 2 = 1,2 = 1,095; y 3 = 1,3 = 1,140;


y 4 = 1,4 = 1,183; y 5 = 1,5 = 1, 225; y 6 = 1,6 = 1,265; y 7 = 1,7 = 1,304; y 8 = 1,8 = 1,342;
y 9 = 1,9 = 1,378 . n aa mod
2

x = h( f ( x 0 ) + f ( x1 ) + f ( x 2 ) + f ( x 3 ) + f ( x 4 ) + f ( x 5 ) + f ( x 6 ) + f ( x 7 ) + f ( x 8 ) + f ( x 9 ) ) =
1
= 0,1 (1 + 1,049 + 1,095 + 1,140 + 1,183 + 1, 225 + 1, 265 + 1,304 + 1,342 + 1,378) = 0,1 11,981 1,2 .
1 1
Apreciem eroarea. Aflm c f ' ( x ) = . Pe segmentul [1;2], max f ' ( x ) M 1 = pentru
2 x 2
h 0,1 1
x=1. Determinm Rn b a M 1 = 1 = 0,025 . Am obinut n aa fel c
2 2 2
2

1
x dx 1,2 0,025 .

S-ar putea să vă placă și