Sunteți pe pagina 1din 16

METODE MUMERICE LUCRRI DE LABORATOR #11

155

LUCRAREA #11


INTEGRAREA NUMERIC



REZUMATUL I SCOPUL LUCRRII

Prin integrare numerica se urmrete determinarea aproximativa, pe cale
numerica, a valorii unei integrale definite.
n analiza matematica problema este definita cat se poate de concis, folosind
noiunea de primitiva: daca pentru funcia f(x) continua in intervalul [a,b] se cunoate
primitiva F(x), integrala definita a acestei funcii intre limitele a si b se calculeaz cu
formula Leibnitz-Newton.
n practic exist ns numeroase situaii n care primitiva F(x), fie are o expresie
complicat, fie pur si simplu - nu poate fi determinat pe ci elementare, analitice.
Totodat, este posibil ca funcia f(x) sa fie data sub forma tabelara, situaie n care nsi
noiunea de primitiva i pierde sensul. n asemenea cazuri, calculul integralei definite cu
relaia anterioara nu mai este posibil, fiind necesara aplicarea unor procedee de integrare
numerica, numite si metode de cuadratur (cuadraturi).
Lucrarea are drept scop prezentarea metodelor de aproximare a integralelor
funciilor (inclusiv duble i triple) prin diferite metode i implementarea acestora n
MatLab pentru exemplificarea acestora.



CUPRINSUL LUCRRII

1. Integrarea numeric
2. Formule de integrare Newton-Ctes
3. Metoda Romberg i procedura de extrapolare Richardson
4. Calculul integralelor duble i triple
5. Aplicaii de laborator













#11 Integrarea numeric


156

1. Integrarea numeric

Prin integrare numerica se urmrete determinarea aproximativa, pe cale
numerica, a valorii unei integrale definite.
Interpretarea geometric a integralei pe un interval [a, b] este aria delimitat de
axa Ox, curba f(x) i dreptele x=a i x=b (fig. 11.1).

y
x
a
f(x)
b
S

Fig. 11. 1 Interpretarea geometric a integralei unei funcii

n analiza matematica problema este definita cat se poate de concis, folosind
noiunea de primitiva: daca pentru funcia f(x) continua in intervalul [a,b] se cunoate
primitiva F(x), integrala definita a acestei funcii intre limitele a si b se calculeaz cu
formula Leibnitz-Newton:

( ) ( ) ( )
b
a
I f x dx F b F a = =
}
(11.1)

n practic exist ns numeroase situaii n care primitiva F(x), fie are o expresie
complicat, fie pur si simplu - nu poate fi determinat pe ci elementare, analitice.
Totodat, este posibil ca funcia f(x) sa fie data sub forma tabelara, situaie n care nsi
noiunea de primitiva i pierde sensul. n asemenea cazuri, calculul integralei definite cu
relaia anterioara nu mai este posibil, fiind necesara aplicarea unor procedee de integrare
numerica, numite si metode de cuadratur (cuadraturi).
n principiu toate metodele de cuadratur numerica calculeaz o valoare
aproximativ a integralei definite pornind de la un numr finit de valori cunoscute ale
funciei integrand f(x). Majoritatea metodelor de cuadratur aproximeaz funcia
integrand printr-un polinom si determin valoarea integralei definite aplicnd formula
Leibnitz-Newton polinomului de aproximare, fie pe ntregul interval [a,b], fie pe
subdiviziuni ale acestuia.
O formul de cuadratur numeric are n general urmtoarea form:


METODE MUMERICE LUCRRI DE LABORATOR #11


157
( ) ( ) ( )
0
b
n
i i
i
a
f x dx A f x R f
=
= +

}
(11.2)

Punctele x0, x1, ..., xn se numesc nodurile formulei de integrare, iar A0, A1, ..., An se
numesc coeficienii formulei de integrare numeric. Practic, evaluarea integralei revine la
calculul sumei din membrul drept
( )
0
n
n i i
i
I A f x
=
=
. Expresia R(f) este restul formulei de
integrare numeric. R(f) ofer informaii privind clasa funciilor pentru care formula de
integrare numeric este eficient, n sensul c pentru funcia dat i un > 0, pentru un n
suficient de mare, are loc inegalitatea:

( ) ( ) ( )
0
b
n
i i
i
a
R f f x dx A f x
=
= <

}
(11.3)

n aplicaii, acurateea aproximrii se probeaz prin satisfacerea unei inegaliti de
forma:

'
, '
n n
I I n n < >
(11.4)

Cea mai general clasificare a metodelor numerice de integrare se face dup tipul
funciei de integrat i valoarea limitelor de integrare.
I. Prima grup de metode se refer la funciile continue i cu limite finite de
integrare. Aceste metode se mpart la rndul lor n dou subgrupe n funcie de modul de
divizare a intervalului de integrare:
- Metode ce mpart intervalul de integrare n subintervale de aceeai lungime,
numrul subintervalelor fiind impus de operator. Dintre aceste metode
amintim: metoda dreptunghiului, metoda trapezului, metoda lui Simpson
i metoda lui Richardson;
- Metode ce mpart intervalul de integrare n aa fel nct eroarea de calcul s
fie minim. Dintre aceste metode amintim metoda cuadraturii a lui Gauss.
II. A doua grup de metode se refer la integralele improprii, adic la integrarea
funciilor cu discontinuiti de spea nti i a doua pe intervale de integrare finite sau
integrarea funciilor continue pe intervale de integrare infinite.
III. A treia grup de metode numerice de integrare se ocup cu integrarea dubl a
funciilor de dou variabile. Amintim n acest sens formulele de cubatur a trapezului i a
lui Simpson.


2. Formule de integrare Newton-Ctes

Metode care mpart domeniul de integrare n subintervale de aceeai lungime se
numesc metode Newton-Ctes.
Se exemplific n cadrul acestora, metoda trapezelor, metoda dreptunghiului,
metoda lui Simpson.

#11 Integrarea numeric


158
Metoda trapezelor
S definim, pentru nceput, pe intervalul [a,b] numai doua puncte de diviziune,
care coincid cu extremitile intervalului: x1=a si x2=b. n acest caz aproximarea integralei
se poate face prin interpolarea liniar a funciei pe intervalul [a,b], respectiv prin aria
trapezului format de punctele a, b, f(b) i f(a) (fig. 11.2).
y
x
x0=a
f(x)
x1=b
f(a)
f(b)
I
R(f)

Fig. 11. 2 Metoda trapezului

n acest fel integrala
( )
b
a
f x dx
}
se calculeaz aproximativ folosind formula ariei
trapezului, respectiv cu relaia:

( ) ( ) ( ) ( )
2
b
a
b a
I f x dx f a f b

= = +
}
(11.5)

iar din formula (11.2) se deduce c R(f) reprezint aria delimitat de dreapta
[f(a),f(b)] i f(x).
Cantitativ, aceast eroare de aproximare calculeaz n general, astfel:

( )
( )
( )
3
3
"
12
b a
R f f
n

(11.6)

unde e[a,b], reprezint o medie a punctelor ke[xk , xk+1].

Folosind aceast formul, eroarea de aproximare R(f) poate fi foarte mare. De
aceea n practic se folosete de regul formula trapezului generalizat. Conform acesteia,
intervalul [a,b] se mparte n n subintervale egale, pentru care se calculeaz integrala cu
formula trapezului (11.5), iar prin nsumarea acestora se aproximeaz integrala I cu o
eroare mic (fig. 11.3).


METODE MUMERICE LUCRRI DE LABORATOR #11


159
y
x
x0
f(x)
f(a)
f(b)
I1
R1(f)
I2
I3
I4
I5
R2(f)
R3(f)
R4(f)
R5(f)
x1 x2 x3 x4 x5

Fig. 11. 3 Metoda trapezelor generalizat

Deci:

( ) ( )
0 0
b
n n
i i
i i
a
I f x dx I R f
= =
= = +

}
(11.7)

i folosind formula (11.5) pentru fiecare integral se obine formula trapezului
generalizat, adic:

( ) ( ) ( ) ( ) ( ) ( ) ( )
0 1 1
2 ...
2
b
n n
a
b a
I f x dx f x f x f x f x
n

= = + + + +

}
(11.8)

sau

( ) ( ) ( ) ( )
1
0
1
2
2
b
n
n k
k
a
b a
I f x dx f x f x f x
n

=
| |
= = + +
|

\ .

}
(11.9)

Folosind limbajul MatLab, calculul unei integrale prin metoda trapezelor este
foarte uoar, folosind funcia predefinit trapz.
Sintaxa de apelare a funciei este:

I = t r apz( x, y)

unde, I este integrala de aproximat, iar x i y sunt doi vectori care conin abscisele
respectiv valorile corespunztoare absciselor, adic, yi=xi, 1, i n = .
Dac funcia se apeleaz doar cu un singur argument, acesta reprezint vectorul y,
iar distana dintre dou abscise succesive este considerat 1. n acest caz, limitele de
integrare sunt x0=1 i xn=n.


#11 Integrarea numeric


160
Dac funcia este cunoscut sub form analitic y=f(x), se creeaz pe rnd vectorul
x pentru un pas adecvat, apoi vectorul y pentru fiecare x cu funcia MatLab feval, i la final
se apeleaz funcia trapz.

Exemplul 11.1: S se calculeze integrala funciei ( )
2 3
1 0,4 0,1 f x x x x = + + pe
intervalul [0,4].
Definirea analitic a funciei se face sub forma unei funcii MatLab astfel:

f unct i on y=f ex11_1( x)
y=1+x+0. 4*x. ^2- 0. 1*x. ^3

Apoi se urmeaz paii:
Definirea capetelor intervalului i a numrului de subintervale:

a = 0; , b = 4;
n=250;

Calcularea pasului de integrare:

h=( b- a) / n;

Vectorul care conine nodurile de integrare:

x=a: h: b;

Calcularea lui f(x) n nodurile de integrare. n acest fel am creat cei doi vectori
necesari pentru a apela funcia trapz:

y=f eval ( ' f ex11_1' , x) ;
I =t r apz( x, y)

Exemplul 11.2: S se calculeze integrala funciei ( )
2 3
1 0,4 0,1 f x x x x = + + pe
intervalul [0,4], folosind MatLab i metoda trapezelor.
Pentru rezolvare se va rula fiierul script ex11_2 [W.25].

De asemenea, s-a scris i o funcie utilizator, care calculeaz integrala unei funcii
definit analitic, prin metoda trapezelor.

f unct i on I =t r apeze( f , a, b, n)
%Dat e de i nt r ar e
%f f unct i a i nt egr and, def i ni t a anal i t i c i n f i si er f unct i e
%a si b l i mi t el e de i nt egr ar e
%n numar ul de subi nt er val e
%Dat e de i esi r e
%I apr oxi mar ea i nt egr al ei pr i n met oda t r apezel or
i f nar gi n<4
n=100
end
%pasul h
h=( b- a) / n;
I =0;
f or k=1: ( n- 1)

METODE MUMERICE LUCRRI DE LABORATOR #11


161
x=a+h*k;
I =I +f eval ( f , x) ;
end
%cal cul i nt egr al a cu f or mul a t r apezel or
I =h*( f eval ( f , a) +f eval ( f , b) ) / 2+h*I ;

Apelul acesteia se poate face prin: I=trapeze(f,a,b,n). f reprezint numele funciei
MatLab n care este definit funcia de integrat i salvat pe hardisk ntr-o cale cunoscut
de MatLab.

Metoda Simpson
Spre deosebire de metoda trapezelor, care folosete un polinom de interpolare
liniar, metoda Simpson folosete polinoame de interpolare parabolice, de gradul doi. Din
acest motiv, este de ateptat ca n cazul unor funcii integrand suficient de netede precizia
acestei metode sa fie superioara. Intervalul [a,b] conine trei puncte de diviziune: doua
dintre acestea coincid cu extremitile x0=a, x2=b, iar al treilea realizeaz njumtirea
intervalului x1=(a+b)/ 2 (fig. 11.4).


Fig. 11. 4 Metoda Simpson de integrare

Valoarea aproximativa a integralei ( )
b
a
f x dx
}
se calculeaz n acest caz cu formula
Simpson:

( ) ( ) ( ) 4
6 2
b
a
b a a b
I f x dx f a f f b
| + | | |
= = + +
| |
\ .
\ .
}
(11.10)

Eroarea de aproximare calculeaz n general, astfel:

( )
( )
( )
5
4
2880
IV
b a
R f f
n

(11.11)


#11 Integrarea numeric


162
Ca i n cazul metodei trapezelor, pentru o mai bun aproximare, intervalul de
integrare se mparte n 2n subintervale egale i aplicm formula (11.10) pentru fiecare din
acestea.
Rezult n acest fel formula Simpson generalizat:

( ) ( ) ( ) ( )
0 2 1 2
1 1
4 ( ) 2
6
b
n n
i i n
i i
a
b a
I f x dx f x f x f x f x
n

= =
| |
= = + + +
|

\ .

}
(11.12)

Folosind limbajul MatLab, calculul unei integrale prin metoda Simpson de
asemenea este foarte uoar, folosind funcia predefinit quad.
Sintaxele de apelare ale funciei sunt:

I = quad ( f , a, b)
I = quad ( f , a, b, t ol )
I = quad ( f , a, b, t ol , t r ace)

unde, f este numele unei funcii MatLab care conine definirea analitic a funciei
de integrat,
a,b - sunt capetele de integrare
tol - reprezint tolerana de calcul (dac lipsete tol este 10
-3
)
trace - este un parametru opional care controleaz afirile intermediare.
Se observ c funcia necesit obligatoriu ca funcia integrand s fie definit
analitic.
Dac funcia este cunoscut tabelar prin diferite valori n intervalul de integrare,
atunci aceasta se aproximeaz printr-o funcie prin metodele cunoscute i aceasta va fi
scris sub forma unei funcii MatLab.
De exemplu dac funcia este cunoscut prin valorile urmtoare x=[1,2,3,4,5] i
y=[2,4,6,8,10], prin interpolare funcia rezultat va fi y=2x, iar funcia quad va fi apelat cu
aceast funcie.

De asemenea, s-a scris i o funcie utilizator, care calculeaz integrala unei funcii
definit analitic, prin metoda Simpson.

f unct i on I =si mpson( f , a, b, n)
%Dat e de i nt r ar e
%f f unct i a i nt egr and, def i ni t a anal i t i c i n f i si er f unct i e
%a si b l i mi t el e de i nt egr ar e
%n numar ul de subi nt er val e
%Dat e de i esi r e
%I apr oxi mar ea i nt egr al ei pr i n met oda Si mpson
i f nar gi n<4
n=100
end
h=( b- a) / ( 2*n) ;
s1=0;
s2=0;
f or k=1: n
x=a+h*( 2*k- 1) ;
s1=s1+f eval ( f , x) ;
end
f or k=1: ( n- 1)

METODE MUMERICE LUCRRI DE LABORATOR #11


163
x=a+h*2*k;
s2=s2+f eval ( f , x) ;
end
I =h*( f eval ( f , a) +f eval ( f , b) +4*s1+2*s2) / 3;

Exemplul 11.3: S se calculeze integrala funciei ( )
2 3
1 0,4 0,1 f x x x x = + + pe
intervalul [0,4], folosind MatLab i metoda Simpson.
Pentru rezolvare se va rula fiierul script ex11_3 [W.25].

Metoda dreptunghiurilor
S considerm diviziunile echidistante ale intervalului [a,b], a=x0<x1<<xn=b. Se
poate aproxima integrala ( )
b
a
f x dx
}
cu suma ariilor dreptunghiurilor pe fiecare subinterval
[xi-1,xi] situate sun graficul funciei f(x) (fig. . Utiliznd acelai raionament ca i n cazurile
precedente se obine formula generalizat:

( )
1
1
( )
2
b
n
i i
i
a
x x b a
I f x dx f R f
n

=
+ | |
= = +
|
\ .

}
(11.13)

cu eroarea:

( )
( )
( )
5
2
24
III
b a
R f f
n

(11.14)

y
x
x0=a
f(x)
x4=b
f(a)
f(b)
x2
R3(f)
I1
I2
I3
I4
R1(f)
R2(f)
R4(f)
x1 x3

Fig. 11. 5 Metoda dreptunghiurilor

MatLab 5.2 nu dispune de o funcie predefinit care s calculeze o integral prin
aceast metod.
S crem aceast funcie:

f unct i on I =dr ept ( f , a, b, n)
%Dat e de i nt r ar e
%f f unct i a i nt egr and, def i ni t a anal i t i c i n f i si er f unct i e
%a si b l i mi t el e de i nt egr ar e

#11 Integrarea numeric


164
%n numar ul de subi nt er val e
%Dat e de i esi r e
%I apr oxi mar ea i nt egr al ei pr i n met oda t r apezel or
i f nar gi n<4
n=100
end
%pasul h
h=( b- a) / n;
f or k=1: n+1
x( k) =( a+h) +( k- 1) *h;
end
s=0;
f or k=2: n+1
s=s+f eval ( f , ( x( k- 1) +x( k) ) / 2) ;
end
%cal cul i nt egr al a cu f or mul a dr ept unghi ur i l or
I =( x( n+1) - x( 1) ) / n*s;

Apelul funciei se face prin: I=drept(f,a,b,n) i necesit declararea funciei sub
form analitic, adic intr-un fiier funcie MatLab.
Deci, dac funcia este cunoscut tabelar prin diferite valori n intervalul de
integrare, atunci aceasta se aproximeaz printr-o funcie prin metodele cunoscute i
aceasta va fi scris sub forma unei funcii MatLab.

Exemplul 11.4: S se calculeze integrala funciei ( )
2 3
1 0,4 0,1 f x x x x = + + pe
intervalul [0,4], folosind MatLab i mtoda dreptunghiurilor.
Funcia a fost deja creat la exemplul 11.1 Vom folosi aceast definiie:

I =dr ept ( f ex11_1 , 0, 4, 250)
I =
14. 19714437120000

Comparai rezultatul cu exemplele anterioare.


3. Metoda Romberg i procedura de extrapolare Richardson

Metoda Romberg urmrete mbuntirea preciziei formulelor de cuadratur
numerica prin aplicarea repetata a uneia din formule (formula trapezelor, formula
Simpson, etc.) nsoita de njumtirea pasului h, deci dublarea numrului de
subintervale de lucru. Din acest motiv, atunci cnd funcia obiectiv este definita sub forma
tabelara, metoda Romberg poate fi aplicata numai daca numrul punctelor prin care este
definite funcia conduce la un numr de subintervale egal cu o putere a lui 2. Dublarea
numrului de intervale de lucru este de ateptat sa duca la creterea preciziei.
Se construiete astfel un ir de aproximaii ale integralei dup o formul stabilit
prin inducie, prin njumtirea pasului h de integrare. n general, dup N-1 njumtiri
ale pasului h se poate scrie:
2 1
,1 1,1 1
1, 2
1
2 2 2
N
N N N N
i i
b a b a
I I f a i


= A =
(
| |
= + +
( |
\ .

(11.15)


METODE MUMERICE LUCRRI DE LABORATOR #11


165
irul astfel construit tinde ctre valoarea exacta a integralei ce se calculeaz. Se
calculeaz repetat integrale de forma Ik,1, pana cnd abaterea intre doua aproximaii
succesive | Ik,1, Ik+1,1 | scade sub o anumita valoare prag considerata ca limita de precizie.
Creterea vitezei de convergenta a metodei Romberg este posibila daca acesteia i
se asociaz procedura de extrapolare Richardson. Aceasta procedura folosete doua valori
succesive din irul aproximaiilor Romberg, Ik,1 si Ik+1,1 pentru a calcula o alta aproximaie
Ik,2, mai precisa, cu relaia:

( )
,2 1,1 .1
1
4 , 1 1
3
k k k
I I I k k
+
= = (11.16)

sau, in general:

1
1, 1 , 1
, 1
4
4 1
j
k j k j
k j j
I I
I

(11.17)

irurile generate pe baza acestei recurente formeaz un tablou cu n linii si tot
attea coloane, sub forma unei matrice inferior triunghiulare:

11
21 22
31 32 33
1 2 n n nn
I
I I
I I I
I I I
(
(
(
(
(
(
(





Fiecare coloan converge ctre I, cu att mai rapid cu ct este situat mai la
dreapta.
Pentru o coloan j, calculul iterativ este oprit n momentul n care
, 1, , k j k j k j
I I I

< .

Practic, pentru a crea o funcie MatLab care s implementeze metoda Romberg se
folosete urmtorul algoritm:

Date de intrare:
f funcia de integrat
a, b capetele intervalului
tol precizia determinrii integralei
Date de ieire:
I valoarea integralei pe domeniul stabilit

pasul 1: err=1; n=1 % se porneste cu n=1 adic se cunosc doar capetele a si b
pasul 2: Calculeaz Inou = trapeze(f,a,b,n)
pasul 3: cat timp (err>tol)
Ivechi = Inou
n = 2*n % se dubleaz numerul de noduri
Calculeaza Inou = trapeze(f,a,b,n)
Iextr = (4 * Inou Ivechi) / 3 % extrapolare Richardson

#11 Integrarea numeric


166
err = Iextr Ivechi
pasul 4: I = Iextr; Afiseaza I

Dup cum se vede, funcia rafineaz valoarea integralei prin folosirea funciei
trapezedefinit la metoda trapezelor, pentru diferite numere de noduri de integrare, n
particular n, 2n, 3n.... Extrapolarea Richardson este folosit pentru o acuratee mai bun.
Cu acestea, codul surs MatLab este urmtorul:

f unct i on I =r omber g( f , a, b, t ol )
%Dat e de i nt r ar e
%f f unct i a de i nt egr at sub f or ma anal i t i ca ( numel e unui f i si er f unct i on)
%a si b l i mi t el e de i nt egr ar e
%t ol est e t ol er ant a de cal cul
%Dat e de i esi r e
%I est e val oar ea i nt egr al ei pr i n met oda Romber g

er r =1;
%se por nest e pent r u n=1, adi ca pent r u 2 punct e
n=1;
%se cacl ul eaza val oar ea i nt egr al ei pr i n f unct i a def i ni t a "t r apeze"
I nou=t r apeze( f , a, b, n) ;
whi l e ( er r >t ol ) %condi t i a de opr i r e
I vechi =I nou;
%se dubl eaza numar ul de nodur i de i nt egr ar e
n=2*n;
I nou=t r apeze( f , a, b, n) ;
I ext r =( 4*I nou- I vechi ) / 3; %ext r apol ar e
%se cal cul eaza er oar ea car e se const i t ui e condi t i e de opr i r e a i t er at i i l or
er r =abs( I ext r - I vechi ) ;
end
I =I ext r

Aceast funcie ntoarce doar valoare integralei. S-a scris i o funcie
[R,I,err]=romber(f,a,b,n,tol), care pe lng valoarea integralei calculeaz i afieaz i tabloul
Romberg-Richardson i de asemenea estimeaz i eroarea de calcul. Codul surs este
urmtorul [W.8]:

f unct i on [ R, I , er r ] =r omber ( f , a, b, n, t ol )
%Dat e de i nt r ar e
%f f unct i a de i nt egr at sub f or ma anal i t i ca ( numel e unui f i si er f unct i on)
%a si b l i mi t el e de i nt egr ar e
%n numar ul maxi mumde l i ni i i n t abl oul Romber g
%t ol est e t ol er ant a de cal cul
%Dat e de i esi r e
%R t abel ul Romber g
%I val oar ea i nt egr al ei
%er r er oar ea est i mat a

M=1;
h=b- a;
er r =1;
J =0;
R=zer os( 4, 4) ;
R( 1, 1) =h*( f eval ( f , a) +f eval ( f , b) ) / 2;
whi l e( ( er r >t ol ) &( J <n) ) | ( J <4)
J =J +1;
h=h/ 2;

METODE MUMERICE LUCRRI DE LABORATOR #11


167
s=0;
f or p=1: M
x=a+h*( 2*p- 1) ;
s=s+f eval ( f , x) ;
end
R( J +1, 1) =R( J , 1) / 2+h*s;
M=2*M;
f or K=1: J
R( J +1, K+1) =R( J +1, K) +( R( J +1, K) - R( J , K) ) / ( 4^K- 1) ;
end
er r =abs( R( J , J ) - R( J +1, K+1) ) ;
end
I =R( J +1, J +1) ;

Exemplul 11.5: Presupunnd definit funcia n fiierul funcie MatLab fex11_1
definit la exemplul 11_1 se poate calcula integrala astfel:

I =r omber g( ' f ex11_1' , 0, 4, 0. 0001)

I =
14. 1333

sau

[ R, I , er r ] =r omber ( ' f ex11_1' , 0, 4, 10, 0. 0001)

R =
12. 0000 0 0 0 0
13. 6000 14. 1333 0 0 0
14. 0000 14. 1333 14. 1333 0 0
14. 1000 14. 1333 14. 1333 14. 1333 0
14. 1250 14. 1333 14. 1333 14. 1333 14. 1333
I =
14. 1333
er r =
0


4. Calculul integralelor duble i triple

Formulele pentru calculul integralelor duble se numesc cubaturi.
Fie
2
: f R R c D o funcie continu.
Pentru simplitate vom considera domeniul de integrare al funciei de dou
variabile un dreptunghi | | | | , , a b c d = D .
Atunci integrala dubl din funcia de dou variabile va fi:

( ) ( ) , ,
b d
a c
f x y dxdy f x y dy dx
| |
=
|
\ .
}} } }
D
(11.18)

Pentru fiecare integral simpl putem aplica o formul de integrare numeric. De
exemplu, dac aplicm formula trapezelor obinem:


#11 Integrarea numeric


168
( ) ( ) ( )
( ) ( ) ( ) ( )
, , ,
2
, , , ,
2 2
b
a
d c
f x y dxdy f x c f x d dx
b a d c
f a c f a d f b c f b d

~ + = (


= + + + (

}} }
D
(11.19)

Aadar, formula trapezului pentru integrala dubl este:

( )
( )( )
( ) ( ) ( ) ( ) ( )
- -
, , , , ,
4
b a d c
f x y dxdy f a c f a d f b c f b d R f = + + + + (
}}
D
(11.20)

Pentru obinerea unei formule generalizate, intervalele de integrat [a,b] i [c,d] se
mpart n subintervale de lungimi egale
b a
h
n

= i respectiv
d c
k
m

= i se consider
dreptunghiul cu vrfurile | | ,
i i
x y | |
1
,
i i
x y
+
| |
1 1
,
i i
x y
+ +
| |
1
,
i i
x y
+
.
Pentru dreptunghiul dat se calculeaz integrala II,j aplicnd formula trapezului
(11.20).
Integrala pe ntreg domeniul cu dou dimensiuni din plan este:

-1 -1 -1 -1
1 1 1 1
0 0 0 0
( , ) ( , ) ( , ) ( , )
4
n m n m
ij i j i j i j i j
i j i j
kh
I I f x y f x y f x y f x y
+ + + +
= = = =
( = = + + +


(11.21)

n mode asemntor formula Simpson va fi:

( )
( )( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( )

( )
1 1 1 1 1 1
, , , , ,
36
4 , , , , 16 ,

= + + +

+ + + + + + (

}}
b a d c
f x y dxdy f a c f a d f b c f b d
f a y f b y f x c f x d f x y R f
D (11.22)

unde
1 1
,
2 2
a b c d
x y
+ +
= = .
Pentru formula generalizat vom considera dreptunghiul cu vrfurile [xi,yj],
[xi+1,yj][ xi+1,yj+1][ xi,yj+1] i cu punctul central [xi,yj].

Integrala pe dreptunghiul | | , , , a b c d este dat de formula de cubatur a lui
Simpson:
{
}
1 1 1 1
1 1 1 1 1 1 1 1
0 0 0 0
1 1 1 1
( ) ( ) ( ) ( )
9
4 ( ) ( ) ( ) ( ) 16 ( )
n m n m
ij i j i j i j i j
i j i j
i j i j i j i j i j
kh
I I f x , y f x , y f x , y f x , y
f x , y f x , y f x , y f x , y f x , y

+ + + +
= = = =
+ +
= = + + + +
( + + + + +


(11.23)

Practic, folosind MatLab, calculul integralelor duble se face folosind funcia
dblquad, care permite urmtoarele sintaxe:



METODE MUMERICE LUCRRI DE LABORATOR #11


169
I d = dbl quad ( ' f ' , a, b, c, d)
I d = dbl quad ( ' f ' , a, b, c, d, , t ol , t r ace)

Funcia f trebuie definit analitic, adic ntr-un fiier funcie Matlab, iar a,b,c,d
sunt limitele de integrare. Variabilele tol i trace, au aceleai semnificaii ca i n cazul
funciei quad, adic, tol reprezint tolerana de calcul (dac lipsete tol este 10
-3
), iar trace
este un parametru opional care controleaz afirile intermediare.

Exemplul 11.6: Folosind cele expuse mai sus, s dm un exemplu de calcul de
integral dubl pentru funcia ( ) ( ) ( ) , sin cos f x y y x x y = + pe domeniul determinat de
,2 ,0,2 [B.7].
Dup cum am spus, se va defini un fiier funcie cu urmtoarea form:

f unct i on f xy=f ex11_6( x, y)
f xy=y. *si n( x) +x. *cos( y)

Acum putem s apelm funcia dblquad, pentru calculul integralei duble:

I dubl a = dbl quad( ' f ex11_6' , - pi , 2*pi , 0, 2*pi )
I dubl a =
- 39. 47856912921012

n mod asemntor se pot deduce i formulele pentru calculul integralelor triple.
n MatLab (versiunile mai noi) exist definit funcia triplequad, care poate fi
apelat cu sintaxele:

I t = t r i pl equad ( ' f ' , x1, x2, y1, y2, z1, z2)
I t = t r i pl equad ( ' f ' , x1, x2, y1, y2, z1, z2, t ol )

semnificaiile fiind: f funcia de integrat definit ntr-un fiier funcie (adic
analitic), x1,x2,y1,y2,z1,z2 limitele de integrat, iar tol reprezint tolerana de calcul a
integralei.

Exemplul 11.7: S se calculeze integrala funciei ( ) ( ) ( ) , , sin cos f x y z y x z x = + , pe
domeniul | | | | | | 0, , 0,1 , 1,1 x y z e e e [B.7].

I t r i pl e = t r i pl equad( i nl i ne( y*si n( x) +z*cos( x) ) , 0, pi , 0, 1, - 1, 1)
I t r i pl a =
2


5. Aplicaii de laborator

Ca aplicaie final se prezint un caz nefericit de calcul al unei integrale i modul n care
se evit aceast problem:


#11 Integrarea numeric


170
Aplicaia 11. 1: S se calculeze integrala funciei ( )
( )
1
sin
f x
x
= , pe intervalul ,
2 2
(
(

.

Soluie: Se observ c funcia are un punct de singularitate i anume x=0. Definim funcia:

f unct i on y=f apl i c11_1( x)
y=1. / si n( x)

Apoi se apeleaz funcia Matlab quad pentru calculul integralei cerute, evitnd punctul de
singularitate:

I p=quad( ' f apl i c11_1' , - pi / 2, - eps, 10^( - 5) ) +quad( ' f apl i c11_1' , eps, pi / 2, 10^( - 5) )

Se descompune integrala n 2 integrale, cu excluderea singularitii, prin nlocuirea limitei
0 cu limitele foarte apropiate de 0, dar diferite de zero (n particular constanta predefinit
).
Se obine valoarea:

I 3q =
0

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