Sunteți pe pagina 1din 135

Laborator 1. Calcule matematice fundamentale in Matlab 7.

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

MATLAB 7.0 este un pachet de programe de o performanţă remarcabilă care are o


vastă aplicabilitate atât în domeniul ştiinţei cât al ingineriei.
Pentru lansarea în execuţie a programului se acţionează dublu click pe pictograma
Matlab 7.0 de pe Desktop sau se selectează Start  All Programs  Matlab 7.0.
In figura 1 se observa aparitia a trei tipuri de ferestre cu care lucreaza Matlab 7.0.

Fig. 1. Ferestrele din Matlab 7.0.


Ferestrele din Matlab 7.0 sunt:
1. fereastra de comenzi Command Window;
2. fereastra Command History în care sunt stocate comenzile lansate în execuţie în
fereastra de comenzi;

1
3. fererastra Workspace, ce prezintă atât variabilele curente din memorie cu
numele, valoarea şi tipul acestora (dacă alegem subfereastra Workspace) cât şi
directorul current, împreună cu subdirectoarele şi fişierele acestuia (dacă
alegem subfereastra Current Directory).
Dintre funcţiile utilizate pentru controlul general al Matlab-ului 7.0 menţionăm
 help nume funcţie furnizează informaţii “on-line” despre funcţia intitulată
nume funcţie;
 who listează variabilele curente din memorie.
Pentru a obţine informaţii “on-line” despre toate funcţiile din Matlab 7.0 şi despre
operatorii utilizaţi de acest program vom accesa:
Help  Matlab Help  Functions  In Alphabetical Order.
Matlab 7.0 utilizează următorii operatori aritmetici între doi scalari:
Nume operator Forma algebrică Forma Matlab 7.0
Adunarea x y x y
Scăderea x y x y
Înmulţirea x y x y
Împărţirea la dreapta x: y x/ y
Împărţirea la stânga y:x x\ y
Ridicarea la putere xy x^ y
Ordinea operaţiilor din Matlab 7.0 este aceeaşi cu cea a operaţiilor aritmetice,
cunoscute din matematica elementară, adica se efectuează întâi operaţiile cuprinse în
paranteze, apoi ridicarea la putere, înmulţirea şi împărţirea, adunarea şi scăderea.
Vom prezenta cateva funcţii din Matlab 7.0 utilizate în calcule matematice
fundamentale.
Funcţia Semnificaţie
abs(x) Determină modulul unui număr real sau complex x
acos(x) Calculează arccos x
asin(x) Calculează arcsin x
base2dec('strn',base) Converteşte nr. strn din baza base în baza 10
[th,rho]=cart2pol(x,y) Transformă coordonatele carteziene (x,y) în coordonate polare

2
(unghiul th este returnat în radiani)
[x,y]=pol2cart( th,rho) Transformă coordonatele polare (th,rho) în coordonate
carteziene (unghiul th este dat în radiani)
[th,phi,r]=cart2sph(x,y,z) Transformă coordonatele carteziene (x,y,z) în coordonate sferice
(unghiurile th şi phi sunt returnate în radiani)
[x,y,z]=sph2cart(th,phi,r) Transformă coordonatele sferice (th,phi,r) în coordonate
carteziene (unghiurile th şi phi sunt date în radiani)
complex(a,b) Construieşte z  a  ib
conj(z) Determină conjugatul numărului complex z
cos(x) Calculează cos x
cot(x) Calculează cot x
dec2base(d,base) Converteşte numărul d din baza 10 în baza base
dms2deg(d,m,s) Converteşte în grade un unghi dat în grade(degree), minute(m),
secunde(second)
dms2rad(d,m,s) Converteşte în radiani un unghi dat în grade(degree), minute(m),
secunde(second)
exp(x) Calculează e x
log(x) Calculează ln x
log2(x) Calculează log 2 x
pow2(x) Calculează 2 x
rats(d) Aproximează d printr-o fracţie raţională
sin(x) Calculează sin x
sqrt(x) Calculează x
tan(x) Calculează tg x
unitsratio(to, from) Converteşte unităţi de măsură pentru lungimi şi unghiuri
Matlab 7.0 dispune de funcţia unitsratio, pe care nu o au versiunile precedente de
Matlab. Unitsratio recunoaşte următorii identificatori pentru convertirea unităţilor de
lungime: metrul- „m‟, centimetrul- „cm‟, milimetrul- „mm‟, micronul- „micron‟,
kilometrul- „km‟, mila nautică- „nm‟, piciorul- „ft‟, inch- „in‟, yard- „yd‟, mila
internaţională- „mi‟.

3
Unitsratio recunoaşte următorii identificatori pentru convertirea unghiurilor:
gradul- „deg‟, radianul- „rad‟; 1 rad este unghiul pentru care raportul dintre lungimea
arcului şi rază este egal cu 1.
Din punct de vedere al formatului extern de afişare a numerelor pe ecran, Matlab
7.0 pune la dispoziţia utilizatorului funcţia format, a cărei sintaxă este: format(„type‟).
Principalele formate de afişare sunt:
Valoare Rezultat Exemplu
a pentru
type
long 15 cifre pentru double (numere reprezentate în dublă >>format long
precizie) şi 8 cifre pentru single (numere reprezentate >> a=5/6
în simplă precizie) a=
0.83333333333333
>>single(a)
ans=
0.8333333
long e 15 cifre pentru double şi 8 cifre pentru single+exp >> format(„long‟,‟e‟)
>>b=0.32/8799
b=
3.636776906466644e-005
>>single(b)
b=
3.6367768e-005
short 5 cifre >>format short
>> a=32/89
a=
0.3596
short e 5 cifre+exp >> format(„short‟,‟e‟)
>> a=32/89
a=
3.5955e-001

4
Dintre variabilele speciale şi constantele din Matlab 7.0 menţionăm:
ans variabilă creată automat atunci când unei expresii nu i-a fost asignat un nume
realmax cea mai mare valoare pozitivă în virgulă mobilă, care poate fi folosită în calcule,
adică 1.7977e+308
realmin cea mai mică valoare pozitivă în virgulă mobilă, care poate fi folosită în calcule,
adică 2.2251e-308
inf variabilă ce semnifică 
pi PI 3.1415926535897....
i sau j variabile folosite pentru introducerea numerelor complexe
nan Variabilă care reprezintă un Not-a-Number .
Aplicaţii
1. Determinaţi numărul complex z cunoscând partea sa reală şi partea imaginară:
Re z  2

Im z  5.
2. Să se aproximeze prin fracţii raţionale numerele: 2 , 3 3, 4 4 , 5 5 , 6 6
>> rats([2^(1/2),3^(1/3),4^(1/4),5^(1/5),6^(1/6)]);
8959
3. Să se calculeze cu 14 zecimale valoarea fracţiei .
3700
4. Să se scrie numărul 6562 din baza 7 în baza 10 .
>> base2dec('6562',7)
ans =
2347

5. Determinaţi câţi metri are 1 yard.


>>to=‟m‟;
>>from=‟yd‟;
>>unitsratio(to, from)
ans=
0.9144

6. Câţi inci au 0.254 m?


>>0.254*unitsratio(„in‟,‟m‟)

5
ans=
10
7. Determinaţi câte grade are un radian
>>unitsratio(„deg‟,‟rad‟);

8. Transformaţi în grade unghiul de 57 1745 .


>>dms2deg(57,17,45);

9. Calculaţi tg113.43 .
>> tan(dms2rad(113.43,0,0));
10. Determinaţi coordonatele sferice ale punctului P3,4,12 .
>> [th,phi,r] = cart2sph(3,-4,-12);
11. Să se calculeze expresiile următoare:

a. 3 17  5 2  3 17  5 2

4 7 4 7
b. 
3 5 3 5
7
c. A  log 6 7  log 6  log 2 5  37  e 3
36
d. M  x  1  2 x  2  3 x  3 , pentru x  4

e. N  1  z  1  z 2  1  z 3 , pentru z  i

1 i  1 i 
3 3

f.    
1 i  1 i 

x 2  3x  1
g. F  , pentru x  1
x3  2
h. B  log 3 5 x , pentru x  7


1

i. (2  tg x ctg x ) sin x cos x


, pentru x  ;
5

j. C  cos 4 x  cos 4 3x  cos 4 5x  cos 4 7 x , pentru x 
8

6
Tema
1. Calculaţi:

a) 1  2  2 4  2 3

  3 
b) log 1  log 1   
3  
2
4

c) 7 7 7


d)  1  3 i 3
e) lg cos 320.39

f) ctg 62 37 .

2. Determinaţi valoarea expresiilor următoare:


2 2x
a) u  arcsin , pentru x  2.2
 x 1
2

sin x  x cos x
b) , pentru x  1.6
e  e  x  2 sin x
x

1 z  z2
c) , pentru z  i
1 z  z2

3. Verificaţi dacă:

a) x  3 este soluţie a ecuaţiei 3 x  4 x  5 x  6 x ;

b) x1  3 7  4 3  3 7  4 3 este soluţie a ecuaţiei x 3  3x  14  0 ;

c) u1  1  i este soluţie a ecuaţiei x 2  1  2i x  3  i   0 ;


7 21 3
d) x1   şi x2  sunt soluţii ale ecuaţiei cos x  sin x  0 .
8 22 7

4. Să se efectueze următoarele operaţii:


a) 1100000102  11111100002

b) 122012006 : 14426 .

5. Determinaţi câţi radiani reprezintă unghiul de 57 1745 .

7
Laborator 2. Definirea tablourilor si a functiilor (in linia de comanda)
in Matlab 7.0

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

În Matlab 7.0 definirea tablourilor se poate face prin una din următoarele
modalităţi:
1. introducerea listei de elemente componente,
2. generarea lor cu ajutorul unor instrucţiuni şi funcţii,
3. crearea de fişiere cu extensia .m,
4. încărcarea lor din fişiere de date externe.
În cazul primei metode, cea mai utilizată dintre toate, elementele unei linii dintr-un
tablou sunt separate prin spaţii sau virgule iar liniile se separă prin punct-virgulă.
Elementele tabloului sunt cuprinse între paranteze drepte şi pot fi atât numere reale
sau complexe cât şi orice expresie din Matlab 7.0.
Elementele
 unui vector x pot fi identificate prin notaţia xi  , semnificând componenta a i-a

din vectorul x , i  1, n , n fiind numărul total de componente ;


 unei matrice A pot fi identificate prin notaţia Ai, j  , semnificând elementul

aflat în A , la intersecţia dintre linia i şi coloana j , i  1, m , j  1, n , m fiind


numărul de linii iar n numărul de coloane ale matricei A .
Matlab 7.0 utilizează următorii operatori aritmetici între două matrici:
Nume operator Forma algebrică Forma Matlab 7.0
Adunarea X Y X Y
Scăderea X Y X Y
Înmulţirea X Y X Y
Împărţirea la dreapta X * Y 1 X /Y

1
Împărţirea la stânga X 1 * Y X \Y

Ridicarea la putere X p , p scalar X^ p

Observaţie. Produsul a două matrici este posibil dacă şi numai dacă numărul
coloanelor matricei X este egal cu numărul liniilor matricei Y .
Transpunerea unui tablou se realizează folosind operatorul apostrof.
Dintre funcţiile folosite pentru generarea tablourilor menţionăm:
eye(n) Generează o matrice unitate cu n linii şi n coloane
eye(m,n) Generează o matrice unitate cu m linii şi n coloane
ones(n) Generează o matrice de unu-ri cu n linii şi n coloane
ones(m,n) Generează o matrice de unu-ri cu m linii şi n coloane
rand(m,n) Generează o matrice ale cărei elemente sunt numere aleatoare, cu distribuiţie
uniformă în intervalul 0, 1
randn(m,n) Generează o matrice ale cărei elemente sunt numere aleatoare, cu distribuiţie
normală, de medie 0 şi varianţă 1
zeros(n) Generează o matrice nulă cu n linii şi n coloane
zeros(m,n) Generează o matrice nulă cu m linii şi n coloane
Observaţie. Transformarea numerelor r distribuite uniform pe intervalul 0, 1 în
numerele x distribuite uniform pe intervalul a, b  se realizează prin intermediul relaţiei
x  b  a r  a .
Vom prezenta câteva funcţii din Matlab 7.0 utilizate în calcule cu tablouri.
Funcţia Semnificaţie
cross(x,y) Calculează produsul vectorial al vectorilor x şi y

dot(x,y) Calculează produsul scalar al vectorilor x şi y


u=find(x==a) Returnează în u indicii elementelor din vectorul x , care au
valoarea egală cu a
[u,v]=find(X==a) Returnează indicele liniei(vectorul u ) şi al coloanei (vectorul v )
matricei argument X , care conţin elemente ce au valoarea egală
cu a
sort(x) Sortează în ordine crescătoare elementele vectorului x

2
[y,I]= sort(x) Returnează în vectorul y elementele sortate în ordine
crescătoare ale vectorului x iar în I indicii elementelor sortate
sort(x,’descend’) Sortează în ordine descrescătoare elementele vectorului x
Observaţii. Specific pentru Matlab 7.0 este opţiunea descend a funcţiei sort; pentru
versiunile precedente de Matlab, sortarea poate fi realizată numai în ordine crescătoare,
neeexistând această opţiune.
Ca orice mediu de programare, Matlab 7.0 lucrează fie în modul linie de comandă,
fie cu programe conţinute în fişiere.
O funcţie poate fi definită în Matlab 7.0 atât în modul clasic (întâlnit şi în versiunile
precedente), adică într-un fişier function cât şi în linia de comandă, facilitate care nu
este posibilă la variantele precedente lui Matlab 7.0.
Sintaxa de definiţie a unei funcţii în linia de comandă, în Matlab 7.0 este
nume_funcţie=@(var1,…,varn) expresie_funcţie

Aplicaţii

1) Să se sorteze în ordine descrescătoare elementele vectorului


x   0.76  1 20 8  7 , cu precizarea indicelui fiecărui element.
>> x=[-0.76 -1 20 8 -7];
>> [y,I]=sort(x,’descend’);

2) Să se determine indicii elementelor din vectorul x   0.76  1  6 8  1 , a


căror valoare este egală cu  1 .
>> x=[-0.76 -1 -6 8 -1];
>> u=find(x==-1);

1 1 1  1


     
3) Să se formeze matricea a   2  2  pe baza vectorilor u   2  şi v    2  .
 3  3  3   3
     
>> u=[1 2 3]';
>> v=[-1 -2 -3]';
>> a=[u v];

3
 1  7 99 3 
 
 4.7 0 0.9  7 
4) Se consideră matricea A   .
5.7 4 5 78 
 
  78 12  7.4 3 
 
Se cere:
a) Transformaţi matricea A într-un vector coloană b ;
>> A=[1 -7 99 3;4.7 0 0.9 -7;5.7 4 5 78;-78 12 -7.4 3];
>> b=A(:);
b) Să se extragă submatricea D de dimensiune 3x2 , ce constă din elementele situate
pe ultimele trei linii şi primele două coloane ale matricei A .
>> D=A(2:4,1:2);

5) Să se calculeze produsul scalar şi cosinusul unghiului dintre vectorii


1`
a  2i  j  k şi x  a.
2
>> a=[2 1 -1];
>> x=a/2;
>> s=dot(a,x);
>> u=s/(norm(a)*norm(x));

 
Rezultă că  x, a  0  x, a sunt coliniari.

6) În spaţiu se dau punctele A3, 2,1 , B4, 4, 0 , C 5, 5, 5 , D 1, 5,  1 . Să se verifice


dacă A, B, C, D sunt coplanare.

Pasul 1. Scriem Matlab în vectorii A , B , C , D coordonatele punctelor A3, 2,1 ,


B4, 4, 0 , C 5, 5, 5 , D 1, 5,  1 .
>> A=[3 2 1];
>> B=[4 4 0];
>> C=[5 5 5];
>> D=[-1 5 -1];

Pasul 2. Determinăm expresiile analitice ale vectorilor AB , AC , AD .


>> a=B-A;
>> b=C-A;

4
>> c=D-A;

Pasul 3. Calculăm produsul mixt al vectorilor AB , AC , AD .


>> M=[a;b;c];
>> v=det(M);
Pasul 4. Calculăm volumul tetraedrului ABCD
>> v=abs(v)/6;
Deoarece V ABCD  0 rezultă A , B , C , D necoplanare.

7) Calculaţi produsul vectorial al vectorilor u  3i  2 j  k , v   j  4k .


>> u=[3 -2 1];
>> v=[0 -1 4];
>> cross(u,v);

Deci: u  v  7i  12 j  3k .

8) Definiţi în linia de comandă funcţia f x   sin 2 x  2 sin x şi apoi calculaţi f   .


3
2
>> f=@(x) sin(2*x)+2*sin(3*x/2)
f=
@(x) sin(2*x)+2*sin(3*x/2)
>> f (pi)
ans =
-2.0000

Tema

1. Să se genereze:
a) o matrice identitate 7x7 ;
b) o matricea nulă 10x10 ;
c) o matrice aleatoare 10x11 cu elemente distribuite uniform şi normal.

2. Să se sorteze în ordine crescătoare elementele vectorului


x   0.76  1 20 8  7 , cu precizarea indicelui fiecărui element.

5
3. Se consideră matricea
1 1 0 
 
C  0 2 3  .
 4 0  1
 

Calculaţi: C 3  2C 2  C  14 I 3 .

4. Se consideră matricele:
 1  0 9   4 1 0
     
a   0  , B   1  5  , C   7 0 1  , d  0 2  7 .
  2 3 8   1 1 1
     
Verificaţi care dintre următoarele produse au sens şi în acest caz efectuaţi-le: Ba ,

ad , da , dB , Bd , CB , BC , dC , Cd , aC , Ca , C 2 , dBC , dCB , adC , adBC , adCa ,

a2 .

 1 3
5. Să se determine indicii elementelor din matricea X    a căror valoare
 3 3
este mai mare sau egală cu 3 .

1 3 4 32 
6. Fie matricea A    . Să se extragă din matricea A
 5  0.76 23 0 
 3 4
submatricea B    .
  0.76 23 

7. Calculaţi f  1, 2.5 cu ajutorul unei funcţii Matlab 7.0, definită în linia de

comandă, pentru f x, y   x 2  y 2 .

8. Să se calculeze produsul mixt al vectorilor

a  2i  j  k , b  3i  2 j  k , c   j  2k .

6
Laborator 3. Calcul simbolic în Matlab 7.0 cu aplicaţii în Algebră

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

Matlab 7.0 permite realizarea calculelor simbolice, ce au aplicaţii în Algebră.


Funcţiile utilizate în vederea efectuării acestor calcule simbolice în Matlab 7.0 sunt:
Funcţia Semnificaţie
det(A) Calculează determinantul simbolic al matricei A
inv(A) Calculează inversa simbolică a matricei A
transpose(A) Determină transpusa simbolică a matricei A
simplify(E) Simplifică simbolic o expresie E
simple(A) Simplifică simbolic o expresie sau o matrice; afişează
rezultatele intermediare ale calculelor, în timp ce funcţia
simplify prezintă rezultatul final
factor(E) Factorizează expresia E
[r,p,k]=residue(B,A) Se obţine descompunerea în fracţii simple pe baza
parametrilor de ieşire: r (vectorul coloană al rezidurilor),
p (vectorul coloană al polilor), k (vectorul linie al
termenilor liberi)
expand(E) Realizează expandarea expresiei E
collect(P,x) Colectează termenii asemenea din polinomul P în raport
cu variabila precizată x
coeffs(P,x) Determină coeficienţii polinomului P în raport cu x
subs(S,new) Înlocuieşte variabila liberă din expresia S cu new
subs(S,old,new) Înlocuieşte variabila simbolică old din expresia S cu
variabila numerică sau simbolică new
solve(eq) Rezolvă ecuaţia eq  0 în raport cu variabila din expresia
eq

1
solve(eq,var) Rezolvă ecuaţia eq  0 în raport cu variabila var din
expresia eq
solve(eq1,..,eqn,var1,..,varn) Rezolvă sistemul format din ecuaţiile eq1  0,, eqn  0
în raport cu variabilele var 1, , var n
Observaţie. Descompunerea în fracţii simple se obţine astfel:
B x  r 1 r 2 r n 
    k x  .
Ax  x  p1 x  p2 x  pn 
Dacă polul p j  este de ordinul m , atunci în descompunere vor apare termeni de
forma
r j  r  j  1 r  j  m  1
   k x  .
x  p j  x  p j  2
x  p j m
Variabilele utilizate în calcule simbolice se declară prin comada “scurtă” syms:
syms var1 var2… este notaţia scurtă pentru
var1 = sym('var1');
var2 = sym('var2'); ...
syms var1 var2 ... real este notaţia scurtă pentru
var1 = sym('var1,’real');
var2 = sym('var2',’real'); ...
syms var1 var2 ... positive este notaţia scurtă pentru
var1 = sym('var1,’positive');
var2 = sym('var2',’positive'); ...

Aplicaţii
1) Scrieţi sub o formă simplificată matricea
 cos 2 x  sin 2 x x 2 x 
A .
 2 
 2 sin x cos x e ln x 
Pasul 1. Declarăm pe x ca variabilă simbolică
>> syms x
Pasul 2. Scriem matricea A
>> A=[cos(x)^2+sin(x)^2 x^2/x; 2*sin(x)*cos(x) exp(log(x^2))];

2
Pasul 3. Scriem sub formă simplificată matricea A
>>u=simple(A)
u=
[ 1, x]
[ sin(2*x), x^2]

2) Simplificaţi expresia

3n  2  5 n  3n  5 n 1
E .
3n 1  5 n  2  3n 1  5 n
Pasul 1. Declarăm pe n ca variabilă simbolică
>> syms n
Pasul 2. Scriem expresia E
>> E=(3^(n+2)*5^n+3^n*5^(n+1))/(3^(n+1)*5^n+2*3^(n+1)*5^n);
Pasul 3. Simplificăm expresia E
>> simplify(E)
ans =
14/9
3) Calculaţi determinantul, transpusa şi inversa simbolică pentru următoarea matrice:
 cos x  sin x 
A    .
 sin x cos x 
Pasul 1. Declarăm pe x ca variabilă simbolică
>> syms x
Pasul 2. Scriem matricea A
>> A=[cos(x) -sin(x);sin(x) cos(x)];
Pasul 3. Calculăm determinantul simbolic al matricei A
>> det(A)
ans =
cos(x)^2+sin(x)^2
Pentru simplificarea rezultatului vom folosi
>> simplify(det(A))
ans =
1

3
Pasul 4. Determinăm transpusa simbolică a matricei A
>> transpose(A)
ans =
[ cos(x), sin(x)]
[ -sin(x), cos(x)]
Pasul 5. Determinăm inversa simbolică a matricei A
>> inv(A)
ans =
[ cos(x)/(cos(x)^2+sin(x)^2), sin(x)/(cos(x)^2+sin(x)^2)]
[ -sin(x)/(cos(x)^2+sin(x)^2), cos(x)/(cos(x)^2+sin(x)^2)]

4) Să se factorizeze expresia

E  x 3  yx 2  2 3x 2 y  2 3xy 2  3 y 2 x  3 y 3 .
>> syms x y
>> E=x^3+y*x^2-2*sqrt(3)*x^2*y-2*sqrt(3)*x*y^2+3*y^2*x+3*y^3;
>> factor(E)
ans =
(x+y)*(x-3^(1/2)*y)^2

5) Calculaţi suma
3 5  1 
Sn  2      1  , n   .
2 4  2 1 
n

>> syms k n
>> S=simplify(symsum(1+1/(2^(k-1)),k,1,n))
S=
n+2-2^(1-n)

6) Să se dezvolte determinantul
ab abc bc
a bc ab ac
ac bc a bc

iar rezultatul să fie pus sub formă de produs.


>> syms a b c

4
>> A=[a+b -a+b-c b+c;a-b-c a+b a+c;a+c b+c -a-b+c];
>> factor(det(A))
ans =
-3*(b+a+c)*(b^2+a^2+c^2)

7) Descompuneţi în fracţii simple expresia:


x 1
.
3
x  7 x 2  15 x  9
Pasul 1. Scriem vectorul linie ce conţine coeficienţii polinomului de la numărătorul
fracţiei.
>> B=[1 1];
Pasul 2. Scriem vectorul linie ce conţine coeficienţii polinomului de la numitorul
fracţiei.
>> A=[1 -7 15 -9];
Pasul 3. Apelăm funcţia residue.
>> [r,p,k]=residue(B,A)
r=
-0.5000
2.0000
0.5000
p=
3.0000
3.0000
1.0000
k=
[]
Deci:
- există doi poli: primul de ordinul doi, p1  3 şi cel de-al doilea de ordinul

întâi, p2  1 ;
- descompunerea nu conţine termeni liberi (deoarece k este vectorul nul).

5
Pe baza rezultatelor obţinem următoarea descompunere în fracţii simple:
1 2 1
  
2x  3 x  32 2x  1

8) Colectaţi coficienţii expresiei

xy  x 2 y 3  x 3 y  y  y 2
în raport cu variabila y .
>>syms x y
>> collect(x*y+x^2*y^3+x^3*y+y-y^2,y)
ans =
x^2*y^3-y^2+(x+x^3+1)*y

9) Expandaţi expresia:

  2
E  x2 2  x 3  5 x2 2  x 3  5  x2 2  5 .  
>>syms x
>>E=(x^2*sqrt(2)-x*sqrt(3)+sqrt(5))*(x^2*sqrt(2)+x*sqrt(3)+sqrt(5))-
(x^2*sqrt(2)+sqrt(5))^2;
>> expand(E)
ans =
-3*x^2

10) Fie p1 x   x  a , p2 x   x 2  bx  c . Calculaţi determinantul:

1 p1 x1  p 2 x1 
1 p1 x2  p 2 x2 
1 p1 x3  p 2 x3 

scriind rezultatul sub formă de produs.


>> syms x a b c x1 x2 x3
>>p1=x+a;
>>p2=x^2+b*x+c;
>> A=[1 subs(p1,x,x1) subs(p2,x,x1); 1 subs(p1,x,x2) subs(p2,x,x2); 1 subs(p1,x,x3)
subs(p2,x,x3)]
A=

6
[ 1, x1+a, x1^2+b*x1+c]
[ 1, x2+a, x2^2+b*x2+c]
[ 1, x3+a, x3^2+b*x3+c]
>> factor(det(A))
ans =
-(-x3+x2)*(x1-x3)*(x1-x2)

11) Rezolvaţi ecuaţia

x 2  2m  2x  m 2  1  0
în raport cu variabila x .
>> syms x m
>> x=solve('x^2-2*(m+2)*x+m^2-1',x)
x=
[ m+2+(4*m+5)^(1/2)]
[ m+2-(4*m+5)^(1/2)]

12) Rezolvaţi sistemul de ecuaţii următor în raport cu x, y, z :

3x  4 y  mz  0

4 x  my  3z  6 ,m .
mx  3 y  4 z  3  m

>> syms x y z m
>> [x,y,z]=solve('3*x+4*y+m*z','4*x+m*y+3*z-6','m*x+3*y+4*z-3-m',x,y,z)
x=
(3*m^2+60-30*m+m^3)/(-36*m+m^3+91)
y=
(2*m^2-45-3*m)/(-36*m+m^3+91)
z=
-(3*m^2+17*m-102)/(-36*m+m^3+91)

13) Determinaţi matricea A astfel încât:

2 A  3  1 2 0T  3 AT  2 1  1T .
Pasul 1. Fie A  a b c  .

7
>> syms a b c
>> A=[a b c];

Pasul 2. Calculăm X  2 A  3  1 2 0T  3 AT  2 1  1T .


>> X=transpose(2*A-3*[1 2 0])-3*transpose(A)-transpose([2 1 -1])
X=
[ -a-5]
[ -b-7]
[ -c+1]
 0
 
Pasul 3. Determinăm a, b, c astfel încât X   0  .
 0
 
>> [a b c]=solve(X(1),X(2),X(3))
a=
-5
b=
-7
c=

Tema
1. Se consideră matricea
a b 
X    .
c d 
Calculaţi:

X 2  2aX  (a 2  b 2 ) I 2 ,
unde I 2 semnifică matricea unitate de ordinul doi.
2. Fie matricele pătrate
 0 0   0 1 0
   
A   0  0  , B  0 0 1 .
0 0   0 0 0
   

8
Calculaţi

( A  B)100 .
3. Simplificaţi expresiile:

x 3  3x 2  2 x
a) E 
x 2  2x
 x2 x3   x x 2 
b) F    : 
 x  2 x 2  4x  4   x  2 x 2  4 
   

x 2  x sin 3
c) G  4 .

x sin 1
4
4. Calculaţi suma

S n  13  43  7 3    3n  23 , n   .
5. Se dau polinoamele

P x   x 6  x 5  3 x 4  x 3  4 x  3 ,

Qx   2 x 4  6 x 2  8x  6 , x   .
P x 
Să se transforme fracţia F x   într-o fracţie ireductibilă.
Q x 

6. Descompuneţi în fracţii simple expresia:


1
a)
x5  x  1

2 x 2  3x  1
b)
x 3  2 x 2  9 x  18

x 4  3x 3  3x 2  10
c) .
x  3x  12
7. Expandaţi expresia:

a) xx  22 x  33

9
b)  p  q3  3 p  q2  p  q  3 p  q p  q2   p  q3 .
8. Factorizaţi expresia:

a) E  x 3  y 3  z 3  3x  y x  z  y  z 

b) F  2m  3m  12  42m  3 .

9. Să se scrie sub forma unui singur polinom produsul a două polinoame:

a) X 3  X 2  1X 2  X  1
b)  X 2  2 2 X  2  X 2  2 2 X  2  .
  

10. Să se calculeze determinantul

a2 a  12 a  22
b2 b  12 b  22
c2 c  12 c  22
scriind rezultatul sub formă de produs.
11. Să se calculeze determinantul Vandermonde de ordinul patru:
1 1 1 1
x1 x2 x3 x4
V 2 .
x1 x 22 x32 x42
x13 x23 x33 x 43

12. Înlocuiţi variabila simbolică b din expresia

2a 2  8b 3a  3b  4
cu valoarea 4 .

13. Se consideră expresia


Ex   mx  n , m, n   , m  0 .
Calculaţi:
Ex  1  2Ex  2  3Ex  1 .

14. Fiind dat polinomul

P X   X 4  X 3  X 2  X  1

10
să se calculeze suma:
1 1 1 1
S    ,
x1  2 x2  2 x3  2 x4  2

unde xi , i  1,4 sunt rădăcinile ecuaţiei Px   0 .

15. Rezolvaţi ecuaţia

a) 3x 3  2mx  1  m  0 , m  

2 x  a  3x
b)  2 , a 
2 x  a  3x

în raport cu variabila x .

16. Rezolvaţi sistemul de ecuaţii următor în raport cu x, y, z :

ax  y  z  1

 x  ay  z  a , a   .
 2
 x  y  az  a

17. Determinaţi a, b şi c astfel încât sistemul

 x  ay  cz  0

bx  cy  3z  1
ax  2 y  bz  5

are soluţia x  3 , y  1 , z  2 .

18. Determinaţi matricea A astfel încât:

T  2 1
 1  1 0    
 A  3   
    0 5 .
 
 1 2 4    3 8
 

11
Laborator 4. Calcul simbolic în Matlab 7.0 cu aplicaţii în Analiză
matematică

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.
Matlab 7.0 permite realizarea calculelor simbolice, ce au aplicaţii în Analiză
matematică.
Funcţiile utilizate în vederea efectuării acestor calcule simbolice în Matlab 7.0 sunt:
Funcţia Semnificaţie
limit(f,x,a) Calculează limita expresiei simbolice f când x  a
limit(f,x,a,’right’) Calculează limita expresiei simbolice f când x  a , x  a
limit(f,x,a,’left’) Calculează limita expresiei simbolice f când x  a , x  a
symsum(s,v,a,b) b
Calculează simbolic  s
va

diff(f,’x’) Calculează simbolic f x 


diff(f,’x’,n) Calculează simbolic f n  x 
diff(f,n,’x’) Calculează simbolic f n  x 
int(f) Calculează simbolic  f x d x
jacobian(F,v) Determină matricea Jacobiană ataşată funcţiei vectoriale F în
raport cu vectorul v . Atunci când F este o funcţie scalară,
funcţia jacobian returnează gradientul lui F
taylor(f,n,x) scrie primii n termeni din dezvoltarea în serie MacLaurin a
funcţiei f
taylor(f,n,x,a) scrie primii n termeni din dezvoltarea în serie Taylor a funcţiei
f în jurul punctului x  a

Aplicaţii
1) Calculaţi următoarele limite:

1
1
x
a) lim
x 0 , x  0
e

>> syms x
>> limit(exp(1/x),x,0,'left')
ans =
0
1
x
b) lim
x 0 , x  0
e

>> limit(exp(1/x),x,0,'right')
ans =
Inf
n
c) lim
1
sin 1    sin n   lim
1
2  sin k

n  n  n2 n  n  n k 1

>> syms k n
>> u=symsum(sin(k),k,1,n);
>> limit(1/(n+n^2)*u,n,inf);

2n!
d) lim
n 
n
(n!) 2
>> limit(('(2*n)!/(n!^2)')^(1/n),n,inf)
ans =
4

2) Să se determine raza de convergenţă pentru următoarea serie de puteri:

ln 2 n
a) n  xn
n 1

Pentru a determina raza de convergenţă a unei serii de puteri  a n x n putem vom


n 0

folosi una din formulele:


1
R , (1)
lim n a n
n 

sau

2
1
R . (2)
a n 1
lim
n   an

Vom folosi formula (1).


>> syms n
>> 1/limit((n^(log(n)^2))^(1/n),n,inf)
ans =
1
n 1
  1 2
n
b) xn
n 1 n  n 1
Vom folosi formula (2).
>> a=@(n) (-1)^n*(n+1)/(n^2+n+1);
>> 1/simplify(limit(abs(a(n+1)/a(n)),n,inf))
ans=
1

3) Calculaţi
n k 2  3k  1
n  .
2
k 1 k  3k  2
>>syms k n
>>s=(k^2+3*k+1)/(k^2+3*k+2);
>> simplify(n-symsum(s,k,1,n))
ans =
1/2*n/(n+2)

4) Calculaţi suma seriei:


 1
a)  ln1  n 
n 1

>> a=simple(symsum(log(1+1/n),n,1,inf))
a=
Inf
2n  1
b)  n n  1
n 1
2 2

3
>> symsum((2*n+1)/(n^2*(n+1)^2),n,1,inf)
ans =
1
n2  n 1
c) 
n 1 n  1!

>> symsum((n^2+n-1)/'(n+1)!',n,1,inf)
ans =
2

5) Să se calculeze următoarele derivate:


a) f x   cos 2 x ; f x   ?
>> diff(cos(sqrt(x))^2)
ans =
-cos(x^(1/2))*sin(x^(1/2))/x^(1/2)
sau
>> f=@(x) cos(sqrt(x))^2;
>> diff(f(x))
ans =
-cos(x^(1/2))*sin(x^(1/2))/x^(1/2)
 
b) f x   x  arctg x  ln 1  x 2 , f x   ?
>> diff(diff(x*atan(x)-log(1+x^2)))
ans =
2*x^2/(1+x^2)^2

c) f x   , f 11 x   ?
1
x  6 x  11x  6
3 2

>> diff(1/(x^3+6*x^2+11*x+6),11);

6) Dezvoltaţi în serie Taylor funcţia


x2

f x   e 2
,
în jurul punctului x  0.5 , pentru n  4 .
>>syms x
>> taylor(exp(-x^2)/2,4,0.5);
4
7) Scrieţi primii şapte termeni din dezvoltarea în serie de puteri a funcţiei
1 1 x
f x   ln , x   1,1 .
2 1 x
>>syms x
>> taylor(1/2*log((1+x)/(1-x)),7)
ans =
x+1/3*x^3+1/5*x^5

8) Să se calculeze derivatele parţiale de ordinul întâi şi al doilea pentru funcţia


z
f x, y, z   y x , x, y  0 .
Pasul 1. Declarăm x, y, z ca variabile simbolice
>> syms x y z
Pasul 2. Scriem expresia lui f
>> f=y^(x^z);
f f f
Pasul 3. Calculăm derivatele parţiale de ordinul întâi al lui f , adică , şi .
x y z
>> s=diff(f,x)
s=
y^(x^z)*x^z*z/x*log(y)
>> t=diff(f,y)
t=
y^(x^z)*x^z/y
>> u=diff(f,z)
u=
y^(x^z)*x^z*log(x)*log(y)
Pasul 4. Calculăm derivatele parţiale de ordinul doi al lui f , adică

2 f 2 f 2 f 2 f 2 f 2 f
, , , , şi .
x 2 y 2 z 2 xy xz yz

>> simplify(diff(s,x))
ans =
y^(x^z)*z*log(y)*(x^(2*z-2)*z*log(y)+x^(z-2)*z-x^(z-2))

5
>> simplify(diff(t,y))
ans =
y^(x^z-2)*x^(2*z)-y^(x^z-2)*x^z
>> simplify(diff(u,z))
ans =
y^(x^z)*log(x)^2*log(y)*(x^(2*z)*log(y)+x^z)
>> simplify(diff(s,y))
ans =
y^(x^z-1)*z*(x^(2*z-1)*log(y)+x^(z-1))
>> simplify(diff(s,z))
ans =
y^(x^z)*log(y)*(x^(2*z-1)*log(x)*log(y)*z+x^(z-1)*log(x)*z+x^(z-1))
>> simplify(diff(t,z))
ans =
y^(x^z-1)*log(x)*(x^(2*z)*log(y)+x^z)

9) Se dă câmpul vectorial
2
vx, y, z   sin x  i  y e y  j   cos 2 z  k .
Să se determine:

a) div v ;

b) rot v .
Observatie. În analiză vectorială, câmpurile de vectori, asociază un vector fiecărui
punct din spațiu.
a) Divergenţa unui câmp vectorial

vx, y, z   Px, y, z   i  Qx, y, z   j  Rx, y, z   k


se calculează conform formulei
P Q R
div v    , (3)
x y z
Observatie. În analiza vectorială, divergența este un operator care măsoară cât de
mult un câmp vectorial iese din sau intră într-un punct; divergența unui câmp vectorial
este un scalar. Pentru un câmp vectorial care reprezintă viteza de expandare a aerului

6
atunci când acesta este încălzit, divergența câmpului de viteze are o valoare pozitivă
deoarece aerul se dilată. Dacă aerul se răcește și se contractă, divergența este negativă.
>> syms x y z
>> P=sin(x);
>> Q=y*exp(y^2);
>> R=cos(2*z);
>> div=diff(P,x)+diff(Q,y)+diff(R,z)
div =
cos(x)+exp(y^2)+2*y^2*exp(y^2)-2*sin(2*z)

b) Rotorul câmpului vectorial v este


 R Q   P R   Q P 
rot v      i      j      k . (4)
 y z   z x   x y 
>> r1=diff(R,y)-diff(Q,z);
>> r2=diff(P,z)-diff(R,x);
>> r3=diff(Q,x)-diff(P,y);
>> rot=[r1 r2 r3]
rot =
[ 0, 0, 0]
Deci

rot v  0  i  0  j  0  k  0 .
Observatie. În analiza vectorială, rotorul este un operator vectorial care evidențiază
"rata de rotație" a unui câmp vectorial, adică direcția axei de rotație și magnitudinea
rotației.

10) Să se calculeze gradientul următorului câmp scalar:

f x, y, z   x 4  xy 2  y 3  x 2 z  1 .
Observatie. În analiză vectorială, câmpurile de scalari, asociază un scalar fiecărui
punct din spațiu. Campurile scalare se pot reprezenta prin suprafete de nivel
 x, y, z   const sau prin linii de nivel  x, y   const .
Gradientul unui câmp scalar   x, y, z  este vectorul

7
  
grad   i j k.
x y z
Vectorul grad  este perpendicular pe suprafetele de nivel corespunzatoare campului
scalar  .
>> syms x y z
>> f=x^4+x*y^2+y^3+x^2*z+1;
>>v=[x y z];
>> jacobian(f,v)
ans =
[ 4*x^3+y^2+2*x*z, 2*x*y+3*y^2, x^2]
Deci

   
grad f  4 x 3  y 2  2 xz i  2 xy  3 y 2 j  x 2 k .

11) Fie

F : D   2 , D  0,    , F  ,    f1  , , f 2  , ,  a cos  , b sin   .


Calculaţi determinantul funcţional (jacobianul) al funcţiilor f1 , f 2 , adică
D f1 , f 2 
.
D, 
Observație. Determinantul funcţional (jacobianul) al funcţiilor f1, f 2 , f3 în raport

cu variabilele , ,  se calculează conform formulei:

f1 f1 f1


(1)
  
D f1 , f 2 , f 3  f 2 f 2 f 2

D, ,    
f 3 f 3 f 3
  
>> syms rho th a b
>> x=a*rho*cos(th);
>> y=b*rho*sin(th);
>> F=[x y];
>> v=[rho th];

8
>> J=jacobian(F,v)
J=
[ a*cos(th), -a*rho*sin(th)]
[ b*sin(th), b*rho*cos(th)]
>> simplify(det(J))
ans =
a*b*rho
Deci,
D f1 , f 2 
 ab .
D , 

12) Fie F : D  3 , D  0,    2 ,


F  , ,     f1  , ,  , f 2  , ,  , f 3  , ,     sin  cos  ,  sin  sin  ,  cos   .

Calculaţi determinantul funcţional (jacobianul) al funcţiilor f1 , f 2 , f 3 , adică

D f1 , f 2 , f 3 
.
D , ,  
>> syms rho th phi
>> F=[rho*sin(th)*cos(phi) rho*sin(th)*sin(phi) rho*cos(th)];
>> v=[rho th phi];
>> J=jacobian(F,v);
>> simplify(det(J))
ans =
sin(th)*rho^2
Deci
D f1 , f 2 , f 3 
  2 sin  .
Dr , ,  

13) Fie F : D  3 , D  0,    2 ,


F  ,  , z    f1  ,  , z , f 2  ,  , z , f 3  ,  , z    cos  ,  sin  , z  .

9
Calculaţi determinantul funcţional (jacobianul) al funcţiilor f1 , f 2 , f 3 , adică

D f1 , f 2 , f 3 
.
D ,  , z 
>> syms rho phi z
>> x=rho*cos(phi);
>> y=rho*sin(phi);
>> F=[x y z];
>> v=[rho phi z];
>> J=simplify(det(jacobian(F,v)))
J=
rho
Aşadar,
D f1 , f 2 , f 3 
 .
D ,  , z 

14) Să se determine matricea Jacobiană


J f  1, 0,  1

ataşată funcţiei vectoriale

 
f : 3  3 , f x, y, z   x  y  z 2 , 2 x  y  2 z, 3x 2  2 xy  12 xz  18zy .

Observație. Pentru o functie vectoriala f : 3  3


f x, y, z    f1 x, y, z , f 2 x, y, z , f 3 x, y, z  ,

unde f i : 3  ,  i  1, 3 , matricea Jacobiană ataşată funcţiei vectoriale f în

punctul a  3 este matricea


 f1 
 a  f1 a  f1 a   (6)
 x y z 
 f 2 f 2 f 2 
J f a    a  a  a 
 x y z 
 f 3 a  f 3 a  f 3 a  
 x y z 
 
>> syms x y z

10
>> u=[x y z];
>> J=jacobian(f,u)
J=
[ 2*x+2*y+2*z, 2*x+2*y+2*z, 2*x+2*y+2*z]
[ 2, 1, -2]
[ 6*x+2*y-12*z, 2*x-18*z, -12*x-18*y]
>> v=[-1 0 -1];
>> subs(J,u,v)
ans =
-4 -4 -4
2 1 -2
6 16 12
Aşadar,
  4  4  4
 
J f  1, 0,  1   2 1  2 .
 6 16 12 
 

15) Calculati

 
3

 x 1 x
4 2
a) 2 dx

>> syms x
>> a=simplify(int(x^(-4)*(1-x^2)^(3/2)));
1
1 1
b)  2  sin   e x d x
x  x
>> int((1/x^2)*sin(1/x)*exp(1/x))
ans =
1/2*exp(1/x)*cos(1/x)-1/2*sin(1/x)*exp(1/x)
x2
c)  ( x cos x  sin x) 2 d x
>> int(x^2/(x*cos(x)-sin(x))^2)
ans =
(-1-2*x*tan(1/2*x)+tan(1/2*x)^2)/(-x+x*tan(1/2*x)^2+2*tan(1/2*x))

11
x2  x 1  1
d)  1  2  d x
x  x 1 x 
2

>>simple( int(sqrt((x^2-x+1)/(x^2+x+1))*(1-1/x^2)))
ans =
-1/4*(3*log(2*x^2+1+2*(1+x^4+x^2)^(1/2))*x-
asinh(1/3*3^(1/2)*(2*x^2+1))*x+2*atanh(1/2*(2+x^2)/(1+x^4+x^2)^(1/2))*x-
4*(1+x^4+x^2)^(1/2))/x
3
1 4 x
e)  dx
x
>> int(((1+x^(1/4))^(1/3))/sqrt(x))
ans =
12/7*(1+x^(1/4))^(7/3)-3*(1+x^(1/4))^(4/3)

Tema
1. Calculaţi:
x
a) lim
x 0 , x  0 x

x
b) lim
x 0 , x  0 x
1

xe x
c) lim 2
x  0, x  0 tg x

d) lim  n  1! 
n 
n 1 n
n! 
sin x 3 cos x  cos x 3 sin x
e) lim .
 ln tg x  cos 2 x 
x
4

2. Calculaţi suma seriei:

a) 

n 2 3n  2 n 
n
n 1 6

12
2n  3
b) 
n 1 nn  1n  2

 2 
c)  ln 1 
n 1  nn  3

3. Să se determine raza de convergenţă pentru următoarele serii de puteri:

xn
a)  n n
n 1 2  3

n2 n
 1
b)  1   xn
n 1  n

4. Dezvoltaţi în serie Taylor funcţia f x   1  x 2 în jurul lui x  2 , pentru


n  4.

5. Scrieţi primii opt termeni din dezvoltarea în serie de puteri a funcţiei

f x   cos 3 x , x   .

6. Să se calculeze următoarea derivată:

f x  dacă f x   arcsin


2x
a) ,
1 x2

b) g x  dacă g x  
arccos x
.
2
1 x

7. Să se calculeze derivatele parţiale de ordinul întâi şi al doilea pentru funcţia


x y
a) f x, y   arctg
1  xy

b) f x, y   x 2 sin 2 y

c) f x, y, z   e xy sin z .

8. Să se calculeze gradientul următoarelor câmpuri scalare:


2 2 2
a) f x, y, z   xyz e x  y  z

b) g x, y, z   ln  x 2  y 2  z 2 
 

13
x  y  z  xyz
c) hx, y, z   arctg .
1  xy  yz  xz

   
9. Se dă câmpul vectorial vx, y, z   3x 2  2 x  i  z  3 y 2  j   y  2 z   k . Să se

determine divergenţa şi rotorul lui v .

10. Fie

F : D   2 , D  0,    , F  ,    f1  , , f 2  , ,   cos  ,  sin   .


Calculaţi determinantul funcţional (jacobianul) al funcţiilor f1 , f 2 , adică

D f1 , f 2 
.
D  ,  

11. Fie

F : D   2 , D  0,    ,

F  ,    f1  , , f 2  , ,  a   cos  , b   sin   .


Calculaţi determinantul funcţional (jacobianul) al funcţiilor f1 , f 2 , adică
D f1 , f 2 
.
D  ,  

12. Calculaţi:
dx
a) 
4
1  x 4 3
1  sin x x
b)  e dx
1  cos x
c)  ln 1  tg x  d x

4 x 2  7 x  25
d)  dx
x 3  6 x 2  3x  10

x  4 x 1
e)  dx.
x 1

14
Laborator 5. Calcul numeric în Matlab 7.0 cu aplicaţii în Algebră

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

Matlab 7.0 permite realizarea calculelor numerice, ce au aplicaţii în Algebră.


Funcţiile utilizate în vederea efectuării acestor calcule numerice în Matlab 7.0 sunt:
Funcţia Semnificaţie
chol(A) Determină descompunerea Cholesky a matricei simetrică şi
pozitiv definită A
eig(A) Returnează un vector, ce conţine valorile proprii ale matricei A
[V,D]=eig(A) Returnează matricea diagonală D, ce conţine valorile proprii ale
matricei A şi matricea V, ale cărei coloane sunt vectorii proprii
corespunzători valorilor proprii
eigs(A) Returnează un vector, ce conţine cele mai mari şase valori
proprii ale matricei A
[V,D]=eigs(A) Returnează matricea diagonală D, ce conţine cele mai mari şase
valori proprii ale matricei A şi matricea V, ale cărei coloane
sunt vectorii proprii corespunzători acestor valori proprii
eigs(A,k) Returnează un vector, ce conţine cele mai mari k valori proprii
ale matricei A
[V,D]=eigs(A,k) Returnează matricea diagonală D, ce conţine cele mai mari k
valori proprii ale matricei A şi matricea V, ale cărei coloane
sunt vectorii proprii corespunzători acestor valori proprii
fsolve(F,I)  Rezolvă sisteme de ecuaţii neliniare conţinute în funcţia
vectorială F , considerând I ca punct iniţial (vector de start).
 Găseşte toate rădăcinile unei ecuaţiei neliniare conţinută în
funcţia F , ce se află în intervalul I
fzero(f,I) Găseşte o rădăcină a unei ecuaţiei neliniare conţinută în funcţia

1
f , ce se află în intervalul I
gcd(A,B) Calculează cel mai mare divizor comun corespunzător lui A şi
B , care pot fi vectori sau scalari
lcm(A,B) Calculează cel mai mic multiplu comun corespunzător lui A şi
B , care pot fi vectori sau scalari
linsolve(A,b) Rezolvă sistemul de ecuaţii liniare AX  b , A   n n ,

b   n1 , X   n1
lu(A) Determină descompunerea LU a matricei pozitiv definită A
norm(X) Calculează norma vectorului (matricei ) X
roots(p) Determină rădăcinile polinomului ai cărui coeficienţi sunt
conţinuţi (în ordinea descrescătoare a puterilor variabilei) în
vectorul linie p
[ v1,..,vn]=solve(„eq1‟,..,‟eqn‟) Rezolvă sistemul format din ecuaţiile eq1  0,, eqn  0

Aplicaţii
1) Verificaţi dacă numerele 87 şi 41 sunt prime între ele.
>> gcd(87,41)
ans =
1
Deoarece c . m . m . d . c87,41  1 rezultă că numerele 87 şi 41 sunt prime între ele.
2) Aflaţi cel mai mic multiplu comun al numerelor : 40, 36, 126.
>> lcm(lcm(40,36),126)
ans =
2520
REZOLVAREA ECUATIILOR ALGEBRICE
Forma canonică a unei ecuaţii algebrice, cu o singură necunoscută este
P X   0 , (1)
unde:

 P X   an X n  an 1 X n 1    a1 X  a0 , an  0 ,

 n este gradul polinomului, adică gradul ecuaţiei algebrice,

2
 a k coeficienţii polinomului, care pot fi numere reale sau complexe.
Numărul real sau complex  constituie soluţie sau rădăcină a ecuaţiei (1) dacă şi
numai dacă  este rădăcină a polinomului P , adică dacă are loc egalitatea P   0 .
3) Determinaţi rădăcinile polinomului

a) P X   X 4  X 3  10 X 2  34 X  26
>> p=[1 1 -10 -34 -26];
>> x=roots(p)
x=
4.0105
-1.9342 + 1.3911i
-1.9342 - 1.3911i
-1.1422

b) P X   X 5  5 X  1
>> p=[1 0 0 0 5 1];
>> x=roots(p)
x=
1.1045 + 1.0598i
1.1045 - 1.0598i
-1.0045 + 1.0609i
-1.0045 - 1.0609i
-0.1999
REZOLVAREA ECUATIILOR NELINARE
Toate ecuaţiile care nu sunt algebrice se numesc transcendente (neliniare), deci acele
ecuaţii care nu pot fi reduse la ecuaţii algebrice folosind operaţiile: adunare, scădere,
înmulţire, împărţire, ridicare la putere. Ecuaţiile transcendente importante sunt: ecuaţiile
exponenţiale, ecuaţiile logaritmice şi ecuaţiile trigonometrice.
Orice ecuaţie transcendentă se poate scrie sub forma
f x   g x 
sau sub forma canonică:
f x   g x   0 . (2)

3
Spre deosebire de ecuatiile algebrice pentru care se pot obtine forme generale ale
solutiilor, pentru ecuatiile transcendente nu mai este posibil acest lucru. Desi nu exista
metode matematice generale de rezolvare pentru aceste ecuatii, ele pot fi rezolvate grafic
sau prin metode de aproximare. Funcţia care trebuie reprezentată grafic într-un interval
a, b (în care există cel puţin o rădăcină a ecuaţiei (2), adică avem cel puţin o schimbare
de semn) este
hx   f x   g x  . (3)
4) Rezolvaţi ecuaţiile neliniare:
a) 1  x  arctgx
>> f=@ (x) 1+x-atan(x);
>> x=fzero(f,[-3 3])
x=
-2.1323
>> f(x)
ans =
2.2204e-016

b) x 2  cos x  0
>> f=@ (x) x.^2-cos(pi*x);
>> s=fsolve(f,[-0.5,0.5])
s=
-0.4384 0.4384
>> f(s)
ans =
1.0e-011 *
0.0962 0.1001
Observatie. Operatia de ridicare la putere element cu element într-un tablou este
simbolizata cu operatorul .^

4
REZOLVAREA SISTEMELOR DE ECUATII LINARE
Un sistem liniar de n ecuaţii cu n necunoscute de forma:
a11 x1  a12 x 2    a1n x n  b1
a x  a x    a x  b
 21 1 22 2 2n n 2

 
a n1 x1  a n 2 x 2    a nn x n  bn

poate fi exprimat matriceal astfel:


AX  B , (4)
unde:
 a11 a12  a1n 
 
 a 21 a 22  a 2n 
 A este matricea sistemului (de ordinul n ),
   
 
a a n 2  a nn 
 n1

 x1 
 
 x2 
 X    este matricea necunoscutelor (matrice coloană),

 
x 
 n

 b1 
 
 b2 
 B    este matricea termenilor liberi (matrice coloană).

 
b 
 n
5) Un rezervor poate fi umplut cu apă de la un robinet de apă caldă şi de la un
robinet cu apă rece. Dacă robinetul de apă caldă este deschis 3 min şi de apă rece
1 min, atunci în rezervor sunt 50l . Dacă apa caldă curge 1 min şi apa rece 3 min,
atunci în rezervor vor fi 40l . Câţi litri de apă curg într-un minut din fiecare
robinet?
Notând cu x l min debitul robinetului de apă caldă şi cu y l min debitul
robinetului de apă rece rezultă sistemul
3x  y  50

 x  2 y  40.
Rezolvarea în Matlab 7.0 a sistemului cu secvenţa de instrucţiuni

5
>> A=[3 1;1 2];
>> b=[50 40]';
>> s=linsolve(A,b);
s=
12
14
conduce la concluzia că robinetul de apă caldă furnizează 12 l min şi robinetul de apă
rece 14l min .
6) Găsiţi curenţii din circuitul următor.

10
A
I3
10V 20V
20 5V

I2 5
B
I1 I6 C I4 D
5

10V

I5

Aplicând legile lui Kirchhoff şi legea lui Ohm obţinem sistemul


 I1  I 2  I 3
I  I  I
 6 1 5
I 2  I 4  I 6

I 3  I 5  I 4
10  5  20 I
 1
 5  20  10 I 3  5 I 4

 10  5 I 5  5 I 4
ale cărui necunoscute sunt I1 ,, I 6 .
>>[i1 i2 i3 i4 i5 i6]=solve('i1=i2+i3','i6=i1+i5','i2+i4=i6','i3+i5=i4','10+5=20*i1','-
5+20=10*i3+5*i4','-10=-5*i5-5*i4')

6
REZOLVAREA SISTEMELOR DE ECUATII NELINARE
Un sistem de ecuaţii de forma
 f1 x1 , x2 ,, xn   0


 f  x , x , , x   0
 n 1 2 n

în care cel puţin una din funcţiile f i , i  1, n nu este liniară se numeşte sistem de ecuaţii
neliniare.
Din punct de vedere matematic, acest sistem poate fi rezolvat folosind metode
numerice precum metoda lui Newton sau metoda gradientului.
7) Rezolvaţi sistemele neliniare:
 3 3
x  y  6x  3  0
a.  (considerând ca punct iniţial 0.5, 0.5 )
 3 3
x  y  6 y  2  0
Pasul 1. Definim funcţia vectorială f .
>>f=@(x) [x(1)^3+x(2)^3-6*x(1)+3;
x(1)^3-x(2)^3-6*x(2)+2];
Pasul 2. Rezolvăm sistemul neliniar.
>> s = fsolve(f,[0.5 0.5])
s=
0.53237037226762 0.35125744755245
Pasul 3. Efectuăm verificarea soluţiei pe care am obţinut-o.
>> f(s)
ans =
1.0e-009 *
0.29623858921468
0.19358559200100
x 2  y 2  z 2  9

b.  xyz  1 (considerând ca punct iniţial 2.5, 0.2,1.6 ).

 x  y  z 2  0

>> f=@(x) [x(1)^2+x(2)^2+x(3)^2-9;x(1)*x(2)*x(3)-1;x(1)+x(2)-x(3)^2]


f=

7
@(x) [x(1)^2+x(2)^2+x(3)^2-9;x(1)*x(2)*x(3)-1;x(1)+x(2)-x(3)^2]
>> s = fsolve(f,[2.5 0.2 1.6])
s=
2.49137569683072 0.24274587875742 1.65351793930053
>> f(s)
ans =
1.0e-011 *
0.11226575225010
0.13493650641294
-0.05244693568329
DETERMINAREA VALORILOR SI VECTORILOR PROPRII

Fie V un spaţiu vectorial peste corpul K şi T  End V  . Spunem că scalarul


  K este o valoare proprie pentru T dacă există x  V \ 0 astfel încât


T x  x .

 
Vectorul x  V \ 0 pentru care există   K astfel încât T x   x se numeşte
vector propriu pentru T corespunzător valorii proprii  .
8) Determinati vectorii si valorile proprii ai matricei
1 0 0 
 
A  1 2  3  .
1  1 0 
 
>> A=[1 0 0; 1 2 -3; 1 -1 0];
>> [V,D]=eig(A);
REZOLVAREA SISTEMELOR DE ECUATII LINARE FOLOSIND FACTORIZAREA LU
O descompunere a unei matrice A de forma
A  L U ,
unde L este o matrice inferior triunghiulară iar U este o matrice superior triunghiulară
se numeşte factorizare LU a matricei A .
După ce am determinat descompunerea LU a matricei A :
L,U   lu A ,

8
astfel încât L  U  A , pentru a rezolva sistemul de ecuaţii liniare, scris sub forma
matriceală AX  B se procedează astfel:
- rezolvăm sistemul inferior triunghiular

L  Y  B  Y  L1  B ;
- rezolvăm sistemul superior triunghiular

U  X  Y  X  U 1  Y .
9) Folosind factorizarea LU să se rezolve sistemul de ecuaţii liniare următor:
8 x1  x2  2 x3  2.3

10 x2  x3  2 x4  0.5

 x1  6 x3  2 x4  1.2
3x1  x2  2 x3  12 x4  3.7

>> A=[8 -1 -2 0;0 10 1 2;-1 0 6 2;3 -1 2 12];


>> B=[2.3 -0.5 -1.2 3.7]';
>> [L,U]=lu(A);
>> L*U
ans =
8 -1 -2 0
0 10 1 2
-1 0 6 2
3 -1 2 12
>> Y=inv(L)*B;
>> X=inv(U)*Y
X=
0.21168679392287
-0.08223607323724
-0.26213478768991
0.29224776003116
>> A*X
ans =
2.30000000000000
-0.50000000000000

9
-1.20000000000000
3.70000000000000
REZOLVAREA SISTEMELOR DE ECUATII LINARE FOLOSIND METODA CHOLESKY
În cazul unui sistem cu matrice simetrică şi pozitiv definită, factorizarea LU are
forma particulară

A  U t U (5),
în care U este o matrice superior triunghiulară.
Descompunerea din (5) se numeşte factorizare Cholesky.
După ce am determinat descompunerea Cholesky a matricei A :
U  chol A ,
astfel încât U 'U  A , pentru a rezolva sistemul de ecuaţii liniare, scris sub forma
matriceală AX  B se procedează astfel:
- rezolvăm sistemul inferior triunghiular

U 'Y  B  Y  U '1  B ;
- rezolvăm sistemul superior triunghiular

U  X  Y  X  U 1  Y .
10) Rezolvaţi sistemul de ecuaţii liniare următor folosind metoda Cholesky:
10 x1  x2  x3  x4  9

 x1  9 x2  x3  x4  8

 x1  x 2  11x3  x 4  12
 x1  x 2  x3  8 x4  7.

Pasul 1. Scriem matricea A , asociată sistemului de ecuaţii liniare.


>> A=[10 1 -1 -1;1 9 1 1;-1 1 11 1;-1 1 1 8];
Pasul 2. Scriem vectorul coloană B , al termenilor liberi.
>> B=[9 8 12 -7]';
Pasul 3. Determinăm descompunerea Cholesky a matricei A .
>> R=chol(A);
Pasul 4. Verificăm că R  R  A .
>> R'*R
ans =

10
10.00000000000000 1.00000000000000 -1.00000000000000 -1.00000000000000
1.00000000000000 9.00000000000000 1.00000000000000 1.00000000000000
-1.00000000000000 1.00000000000000 11.00000000000000 1.00000000000000
-1.00000000000000 1.00000000000000 1.00000000000000 8.00000000000000
Pasul 5. Rezolvăm sistemul inferior triunghiular R  Y  B .
>> Y=inv(R')*B;
Pasul 6. Rezolvăm sistemul superior triunghiular R  X  Y .
>> X=inv(R)*Y;
Pasul 7. Verificăm că vectorul X este soluţie a sistemului.
>> A*X
ans =
9.00000000000000
8.00000000000000
12.00000000000000
-7.00000000000000

Tema
1. Determinaţi rădăcinile polinomului

a) P X   X 4  2 X 3  X  2

b) P X   X 7  2 X 6  3 X 5  4 X 4  5 X 3  6 X 2  7 X  8
2. Rezolvaţi ecuaţiile neliniare

a) xe x  1  0 (căutaţi soluţia în intervalul  0.7, 0.7 )


b) x  0.2  ln 1  x  (căutaţi soluţiile în intervalul  0.6, 0.6 ).
3. Să se afle matricea necunoscută X din ecuaţia matriceală
 1 1  1  1  1 3 
   
X   2 1 0    4 3 2 .
1 1 1  1  2 5
   
4. Rezolvaţi sistemele neliniare:
 x  sin( x  y )  0
a)  (considerând ca punct iniţial 0,1 )
 y  cosx  y   0

11
 3
 y  20 x  1  0
b)  (considerând ca punct iniţial 0.5, 0.3 )

 x 3
 xy  10 y  10  0

 2
 x1  3 lg x1  x2  0
c)  (considerând ca punct iniţial 3, 2 )

 1
2 x 2
 x x
1 2  5 x1  1  0

x 2  y 2  z 2  0


d) 2 x 2  y 2  4 z  0 (considerând ca punct iniţial 0.5, 0.5, 0.5 )
 2 2
3x  4 y  z  0

5. Folosind factorizarea LU să se rezolve sistemul de ecuaţii liniare următor:


5 x1  x2  x3  5

 x1  6 x2  x3  4
 x  x  7 x  9.
 1 2 3

6. Determinaţi vectorii şi valorile proprii corespunzători matricei


1 0 0 0
 
0 0 1 0
A .
0 1 0 0
 
0 0 0 1 

7. Determinaţi cele mai mari trei valori proprii (in modul) şi vectorii proprii
coresponzători acestora, ai matricei
 3 4  1.6 0 1 
 
 0  1 0.5 6 0
A   0 0  7.6 5 8  .
 
6 4 3 20  1
 8 0  0.6 3 0 
 
8. Determinati vectorii si valorile proprii ai matricei
 3 2 2 
 
A 2 2 1 .
  6  5  4
 

12
Laborator 7. Calcul numeric în Matlab 7.0 cu aplicaţii în Analiză
matematică

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

Matlab 7.0 permite realizarea calculelor simbolice, ce au aplicaţii în Analiză


matematică.
Funcţiile utilizate în vederea efectuării acestor calcule simbolice în Matlab 7.0 sunt:
Funcţia Semnificaţie
dblquad(f,a,b,c,d) bd
Calculează valoarea aproximativă a integralei   f x, y d x d y
ac

int(f(x),a,b) b
Calculează  f x  d x
a

quad(f,a,b) b
Calculează valoarea aproximativă a integralei  f x  d x
a

triplequad(f,a,b,c,d,e,f) Calculează valoarea aproximativă a integralei


bd f
   f  x, y , z  d x d y d z
ac e

Observaţie. Funcţia triplequad din Matlab 7.0 nu poate fi regăsită în versiunile


precedente de Matlab.

Aplicaţii
1) Calculaţi derivatele de mai jos, în punctele indicate:

f x   arcsin , f 5.7  ?
2 x
a)
1 x
>> syms x
>> f=diff(asin(2*sqrt(x)/(1+x)),2)
f=

1
(-1/2/x^(3/2)/(x+1)-2/x^(1/2)/(x+1)^2+4*x^(1/2)/(x+1)^3)/(1-4*x/(x+1)^2)^(1/2)-
1/2*(1/x^(1/2)/(x+1)-2*x^(1/2)/(x+1)^2)/(1-4*x/(x+1)^2)^(3/2)*(-
4/(x+1)^2+8*x/(x+1)^3)
>> subs(f,x,5.7)
ans =
0.0148

f x   2 x  2 x , f 3  0.2  ?
2
b)
>>syms x
>> f=diff(2^(x^2-2*x),3)
f=
2^(x^2-2*x)*(2*x-2)^3*log(2)^3+6*2^(x^2-2*x)*(2*x-2)*log(2)^2
>> subs(f,x,-0.2)
ans =
-15.6311

2) Calculaţi derivatele parţiale de ordinul al doilea ale funcţiei următoare în punctul


indicat:
2
f x, y   2 x 3 y  e x ,  1,1 .
syms x y
>> s=diff(2*x^3*y-exp(x^2),x)
s=
6*x^2*y-2*x*exp(x^2)
>> ss=subs(subs(s,x,-1),y,1)
ss =
11.4366
>> t=diff(2*x^3*y-exp(x^2),y)
t=
2*x^3
>> tt=subs(subs(t,x,-1),y,1)
tt =
-2

2
>> k=diff(s,x)
k=
12*x*y-2*exp(x^2)-4*x^2*exp(x^2)
>> k1=subs(subs(k,x,-1),y,1)
k1 =
-28.3097
>> p=diff(t,y)
p=
0
>> p1=subs(subs(p,x,-1),y,1)
p1 =
0
>> j=diff(s,y)
j=
6*x^2
>> j1=subs(subs(j,x,-1),y,1)
j1 =
6

3) Fie câmpul scalar

 x, y, z   arcsin
z
.
2 2
x y

Să se calculeze derivata lui  în punctul M 1,1,1 după direcţia MN ştiind că


N 2, 3,  2 .

Derivata unui câmpul scalar într-un punct M x0 , y0 , z0  după o direcţie s este

d
M    x0 , y0 , z0 cos    x0 , y0 , z0 cos    x0 , y0 , z0 cos  ,
ds x y z

unde cos  , cos  şi cos  semnifică cosinusurile directoare ale direcţiei s .

Pasul 1. Determinăm expresia analitică a direcţiei s  MN :

MN  x N  xM   i   y N  y M   j  z N  z M   k .

3
>> M=[1 1 1];
>> N=[2 3 -2];
>> s=N-M
s=
1 2 -3
Deci,

MN  i  2 j  3  k .

Pasul 2. Determinăm cosinusurile directoare ale direcţiei s .


>> w=norm(s);
>>u=s/w
u=
0.2673 0.5345 -0.8018
Aşadar, cos   0.2673 , cos   0.5345 şi cos   0.8018 .

Pasul 3. Determinăm derivata lui  în punctul M după direcţia s .


>> syms x y z
>> phi=asin(z/sqrt(x^2+y^2));
>> d1=diff(phi,x);
>> g=subs(subs(subs(d1,x,1),y,1),z,1);
>> d2=diff(phi,y);
>> h=subs(subs(subs(d2,x,1),y,1),z,1);
>> d3=diff(phi,z);
>> k=subs(subs(subs(d3,x,1),y,1),z,1)
>> d=dot(u,[g h k])
d=
-1.2027
Rezultă
d
1,1,1  1.2027 .
ds

4) Calculaţi următoarele integrale simple:

4

2 sin 2 x
a)  2
dx
0 1  sin x
>> syms x
>> f=@(x) sin(2*x)/(1+sin(x)^2);
>> int(f(x),0,pi/2)
ans =
log(2)
>> log(2)
ans =
0.6931
sau
>> syms x
>> f=@(x) sin(2*x)./(1+sin(x).^2);
>> quad(f,0,pi/2)
ans =
0.6931
1
b)  x 2 x 2  1 d x
0

>> syms x
>> f=@(x) x^2*sqrt(x^2+1);
>> int(f(x),0,1)
ans =
3/8*2^(1/2)+1/8*log(2^(1/2)-1)
>> 3/8*2^(1/2)+1/8*log(2^(1/2)-1)
ans =
0.4202
5) Calculaţi valoarea următoarelor integrale improprii
1 dx
a) 
1  x  1
23

>>syms x

5
>> int(1/((x+1)^(2/3)),-1,1)
ans =
3*2^(1/3)
1 dx
b) 
0 x1  x 

>>syms x
>> int(1/((x*(1-x))^(1/2)),0,1)
ans =
pi
 dx
c) 
2
 1  x
>>syms x
>> int(1/(1+x^2),-inf,inf)
ans =
pi
6) Calculaţi lungimea arcului de curbă:
  
a) y  ln sin x , x   , 
3 2
Utilizând formula
b
L   1  f  2 x  d x , f : a, b  
a

rezultă că
 2 2
 
L   1   ln sin x  d x
 3  x 

ce poate fi calculată în Matlab astfel:


>> simplify(int(sqrt(1+diff(log(sin(x)))^2),pi/3,pi/2))
ans =
1/2*log(3)

6
 x  3 cos t
  
b)  y  3 sin t , t  0, 
 z  4t  2

Pentru o curbă în spaţiu dată parametric
 x  xt 

 y  y t , t  a, b
 z  z t 

lungimea arcului de curbă este
b
L   x  2 t   y  2 t   z  2 t  d t .
a

Secvenţa de comenzi Matlab 7.0 necesare calculului lungimii arcului de curbă este
următoarea:
>> syms t
>> x=diff(3*cos(t));
>> y=diff(3*sin(t));
>> z=diff(4*t);
>> L=int(sqrt(x^2+y^2+z^2),0,pi/2);
  
c)   sin 3 ,   0, 
3  2
Pentru o curbă plană dată în coordonate polare:      ,   a, b , lungimea
arcului de curbă este
b
L    2      2   d  .
a

Secvenţa de comenzi Matlab 7.0, ce ne permite să calculăm lungimea acestui arc de


curbă plană este:
>> syms t
>> ro=sin(t/3)^3;
>> L=eval(int(sqrt(ro^2+diff(ro)^2),0,pi/2))
L=
0.1359

7
7) Calculaţi aria marginită de curbele y  ln x , y  ln 2 x .
Aria mărginită de două curbe care se intersectează în punctele x1 , y1  şi x2 , y 2 
x2
se calculează folosind formula    f x   g x  d x .
x1

Fig. 6.8
>>syms x
>> f=@(x) log(x);
>> g=@(x) log(x)^2;
>> syms y
>> u=solve(log(y)-log(y)^2,y)
u=
1
exp(1)
>> A=eval(int(f(y)-g(y),y,u(1),u(2)))
A=
0.2817

8
8) Se consideră domeniul plan F  x, y  | 0  x   , 0  y  sin x. Să se
determine coordonatele centrului de greutate al unei plăci omogene ce are forma lui
F.
Coordonatele centrului de greutate GxG , yG  al unei plăci omogene de forma unui

domeniu plan F  x, y  | a  x  b, 0  y  f x  se determină conform formulelor:

 b
  xf  x  d x
x  a
 G b
  f x  d x
 a

 1b 2
  f x  d x
2a
 yG  .
 b
  f x d x
 a

>> syms x
>> I1=int(x*sin(x),0,pi);
>> I2=int(sin(x),0,pi);
>> I3=int(sin(x)^2,0,pi)/2;
>> xg=I1/I2
xg =
1/2*pi
>> yg=I3/I2
yg =
1/8*pi
9) Calculaţi următoarele integrale duble:

22 cos y
a)  d xd y
0 0 1  sin x sin y

>> syms x y
>> f=@(x,y) cos(y)./(1+sin(x)*sin(y))
f=
@(x,y) cos(y)./(1+sin(x)*sin(y))

9
>> dblquad(f,0,pi/2,0,pi/2)
ans =
1.2337
22 x
b)   d xd y
11 y3
>> syms x y
>> f=@(x,y) sqrt(x./(y.^3));
>> dblquad(f,1,2,1,2)
ans =
0.7140
sau
>> syms x y

>> eval(int(int(1/sqrt(y^3),1,2)*sqrt(x),1,2))
ans =
0.7140

Tema
1. Calculaţi derivatele de mai jos, în punctele indicate:
x 1
a. f x   arctg , f 3  ?
x 1

f x   x , f 4 2  ?
x
b.
x 1

2. Calculaţi derivatele parţiale de ordinul al doilea ale funcţiilor următoare în


punctele indicate:

a. f x, y   3 x 2 y ,  2, 2

 
b. f x, y   x sinx  y  ,  , 0 
4 

c. f x, y, z   x e yz , 1,1,1

3. Fie câmpul scalar

10
 x, y   x 2  y 2  xy .

Să se calculeze derivata lui  în punctul M 2, 2 după direcţia s care face în

direcţa pozitivă a axei O x un unghi de 30  .

4. Se dă câmpul vectorial

vx, y, z   xz 3  i  2 x 2 yz  j  2 yz 4  k .

Să se determine:divergenţa şi rotorul lui v în punctul M 1,  1,1 .

5. Calculaţi următoarele integrale simple:


1
x 2
a.  e cos x d x
0

5 x2  2
b.  dx.
1 x  1

6. Calculaţi valoarea următoarelor integrale improprii


1 dx
a.  ;
0 1 x2

 dx
b. 
3 x x  1

7. Calculaţi următoarele integrale duble:



2
a.   y sin x d x d y
00

31 xy
b.   d xd y
10
1  x 2
y 
2 3

11
Laborator 8. Rezolvarea ecuatiilor diferentiale în Matlab 7.0

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

ECUATII CU VARIABILE SEPARABILE


O ecuaţie diferenţială cu variabile separabile este de forma
y   px q y  ,
(8.1)
unde p, q : a, b   continue, q  0 .
Formal dacă scriem
dy
y 
dx
atunci ecuaţia (8.1) devine

 px  d x
dy
q y 
şi admite soluţia unică definită implicit prin egalitatea

  p x  d x  C .
dy

q y 
(8.2)

1) Rezolvaţi ecuaţia diferenţială cu variabile separabile:

ex
a) 2 yy  
ex 1
>> y=dsolve('Dy=exp(x)/(2*y*(exp(x)+1))','x')
y=
(log(1+exp(x))+C1)^(1/2)
-(log(1+exp(x))+C1)^(1/2)

b) y  

y x3  1 
 1 y2 
x
>> y=dsolve('Dy=y*(x^3+1)/x*(1-y^2)','x')

1
y=
1/(x^2+exp(-2/3*x^3)*C1)^(1/2)*x
-1/(x^2+exp(-2/3*x^3)*C1)^(1/2)*x

ECUATII OMOGENE
Numim ecuaţie diferenţială omogenă o ecuaţie de forma
y   f x, y  ,
(8.3)
f fiind o funcţie continuă şi omogenă (de grad zero).
Ecuaţiile omogene se reduc la ecuaţii cu variabile separabile folosind schimbarea
de variabile

u x  
y
. (8.4)
x

2) Să se rezolve ecuaţia diferenţială omogenă:


y
y
a) y    e x
x
>> y=dsolve('Dy=y/x+exp(y/x)','x')
y=
log(-1/(log(x)+C1))*x
b)  y  xd y   y  x d x  0
>> y=dsolve('Dy=-(y-x)/(y+x)','x')
y=
(-x*C1-(2*x^2*C1^2+1)^(1/2))/C1
(-x*C1+(2*x^2*C1^2+1)^(1/2))/C1

ECUATII NEOMOGENE
O ecuaţie diferenţială neomogenă este de forma
y   p x  y  q x  ,
(8.5)
unde p, q sunt două funcţii continue.
Soluţia generală a ecuaţiei neomogene (8.5) are expresia analitică:
p x  d x   px  d x
yx   e   C1   qx  e  d x  , C1   . (8.6)
 

2
3) Să se rezolve ecuaţia diferenţială neomogenă:

a) y   2 xy  2 xe x
2

>> y=dsolve('Dy=2*x*y+2*x*exp(x^2)','x')
y=
(x^2+C1)*exp(x^2)

b) xy   y  x 2 cos x , x  0
>> y=dsolve('x*Dy-y=x^2*cos(x)','x')
y=
x*sin(x)+x*C1

ECUATII DIFERENTIALE TOTALE


O ecuaţie diferenţială totală este de forma

f x, y d x  g x, y d y  0 , f , g : D   2   . (8.7)


Dacă membrul stâng al ecuaţiei (8.7) este diferenţiala totală a unei funcţii
 : D   , adică
d   f x, y d x  g x, y d y ,
(8.8)
atunci ecuaţia diferenţială se numeşte ecuaţie diferenţială totală exactă.
Condiţia necesară şi suficientă ca ecuaţia (8.7) să fie diferenţială totală exactă este
ca
f g
 (8.9)
y x
Soluţia generală a ecuaţiei diferenţială totală exactă este
x, y   C ,
(8.10)
unde
x y
x, y    f t , y0  d t   g x, t  d t , x0 , y0   D . (8.11)
x0 y0

Dacă nu este îndeplinită condiţia (8.9) atunci ecuaţia diferenţială (8.7) trebuie
înmulţită cu un factor integrant  x, y  astfel încât ecuaţia să devină o ecuaţie
diferenţială totală exactă.

3
Se disting două cazuri:
Cazul 1. Dacă    x  atunci condiţia (8.9) devine
f g

  f g   y x
 f     g         g      x 
y x y x  g
iar
 x  d x
 x   e  . (8.12)
Cazul 2. Dacă     y  atunci raţionând precum în cazul 1, condiţia (8.9) devine:
f g

  y x
  y
 f
iar
yd y
y  e . (8.13)

4) Să se integreze ecuaţiile diferenţiale totale:

a) y e xy  4xy d x  x e xy  2x 2 d y  0
Rezolvând în Matlab 7.0 ecuaţia diferenţială propusă, distingem următorii paşi.
Pasul 1. Verificăm dacă ecuaţia dacă este o ecuaţie diferenţială totală exactă.
>> syms x y t y0 x0 C
>>f=y*exp(x*y)-4*x*y;
>> g=x*exp(x*y)-2*x^2;
>> d1=diff(f,y);
>> d2=diff(g,x);
>> d1==d2
ans =
1
Pasul 2. Deoarece ecuaţia este o ecuaţie diferenţială totală exactă, putem aplica
formula (8.11) pentru a determina soluţia sa.
>> phi=int(subs(subs(f,x,t),y,y0),t,x0,x)+int(subs(g,y,t),t,y0,y)-C
phi =
-exp(y0*x0)+2*y0*x0^2+exp(y*x)-2*x^2*y-C

4
b) y1  xy d x  x d y  0
Pasul 1. Verificăm dacă ecuaţia dacă este o ecuaţie diferenţială totală exactă.
>> syms x y t y0 x0
>> f=y*(1+x*y);
>> g=-x;
>> d1=diff(f,y);
>> d2=diff(g,x);
>> d1==d2
ans =
0
Pasul 2. Deoarece ecuaţia nu este o ecuaţie diferenţială totală exactă trebuie să
determinăm factorul integrant cu (8.13),
>> phi=simple((diff(f,y)-diff(g,x))/(-f))
phi =
-2/y
>> miu=exp(int(phi,y))
miu =
1/y^2
Pasul 3. Putem aplica formula (8.11) pentru a determina soluţia ecuaţiei.
>> Phi=int(subs(subs(f*miu,x,t),y,y0),t,x0,x)+int(subs(g*miu,y,t),t,y0,y)-C
Phi =
1/2*x^2-1/2*x0^2+1/y0*(x-x0)+x*(-y+y0)/y/y0-C
>> Phi=simple(Phi);
>> Phi
Phi =
1/2*x^2-1/2*x0^2-1/y0*x0+x/y-C

ECUATII BERNOULLI
Ecuaţia diferenţială de forma

y   p x  y  q x  y  (8.14)
constituie ecuaţia lui Bernoulli, p, q fiind funcţii continue.

5
Dacă
   0 ecuaţia (8.14) devine o ecuaţie diferenţială liniară neomogenă;
   1 ecuaţia (8.14) devine o ecuaţie diferenţială cu variabile separabile.
Altfel, adică pentru    \ 0,1, folosind schimbarea de funcţie
1
(8.15)
y z 1  ,
ecuaţia (8.14) se reduce la o ecuaţie diferenţială liniară neomogenă.

5) Să se rezolve ecuaţia diferenţială de tip Bernoulli:


y
a) y   4  x y  0 , x  0, y  0
x
>> y=dsolve('Dy-4*y/x-x*sqrt(y)','x')
y=
y^(1/2)-(1/2*log(x)+C1)*x^2 = 0
y
b) y    2xy 2
x
>> y=dsolve('Dy=y/x-2*x*y^2','x')
y=
3*x/(2*x^3+3*C1)

2 x 2 y   4 xy  y 2
c) 
 y 1  1

>> y=dsolve('2*x^2*Dy-4*x*y=y^2','y(1)=1',’x’)
y=
2*x^2/(-x+3)
Observaţie. Nu pot fi rezolvate probleme Cauchy decât în Matlab 7.0 nu şi în
versiunile precedente.

ECUATII RICCATI
O ecuaţie diferenţială, care este de forma

y   p x  y 2  q  x  y  r  x  (8.16)
reprezintă ecuaţia lui Riccati, p, q, r fiind funcţii continue.

6
Dacă se cunoaşte o soluţie particulară y p x  a sa, atunci folosind substituţia

1
y  yp  (8.17)
z
ecuaţia (8.17) devine o ecuaţie diferenţială liniară neomogenă.

6) Să se integreze ecuaţia de tip Riccati:

a) xy   y 2  2 x  1y  x 2  2 x , x  0
>> y=dsolve('x*Dy=y^2-(2*x+1)*y+x^2+2*x','x')
y=
(-x-1+x^2*C1)/(-1+x*C1)
1
b) 2 y   y 2  0
x2
>> y=dsolve('2*Dy+y^2+1/(x^2)=0','x')
y=
(-2-log(x)+C1)/x/(-log(x)+C1)

 
c) 2 x  x 2 x y   2 x y 2  y  x  0 , x  0
>> y=dsolve('2*(x-x^2*sqrt(x))*Dy+2*sqrt(x)*y^2-y-x=0','x')
y=
-(x+C1*x^(1/2))*(x-x^(5/2))/(x^(1/2)-1)/(x+x^(1/2)+1)/x/(C1*x+1)

ECUATII OMOGENE CU COEFICIENTI CONSTANTI


O ecuaţie diferenţială de forma

a0 y n   a1 y n 1    an 1 y   an y  0 . (8.18)
unde a0 , a1 ,  , an sunt constante reale, a0  0 se numeşte ecuaţie diferenţială liniară

omogenă de ordinul n , cu coeficienţi constanţi.


Soluţiile ecuaţiei diferenţiale (8.18) depind de tipul rădăcinilor ecuaţiei
caracteristice.
P   0 ,
unde
P   a0 n  a1n 1    an 1  an

7
reprezintă polinomul caracteristic ataşat ecuaţiei diferenţiale liniară omogenă de ordinul
n , cu coeficienţi constanţi din (8.18).
Cazul 1. Considerăm mai întâi cazul când rădăcinile ecuaţiei caracteristice sunt
reale şi analizăm pe rând subcazul când rădăcinile sunt distincte şi apoi cazul când
ecuaţia caracteristică are şi rădăcini multiple.
a) Presupunem că ecuaţia caracteristică are toate rădăcinile reale distincte 1 ,  ,  n .
Solutia generala a ecuatiei (8.18) este de forma

yx   C1e1x  C2e 2 x    Cn e n x . (8.19)


b) Dacă ecuaţia caracteristică are rădăcina   1 reală, multiplă, de ordinul p ,
p  n atunci solutia generala a ecuatiei (8.18) este de forma

yx   C1e 1x  C2 xe 1 x    C p x p 1e 1x ; (8.20)


această expresie a lui xt  se mai numeşte contribuţia rădăcinii reale, multiple de ordinul

p ,   1 , a ecuaţiei caracteristice la soluţia generală a ecuaţiei omogene.


c) Ecuaţia caracteristică are k rădăcini reale 1 ,  ,  k cu ordinele de multiplicitate

p1 ,  , pk , p1    pk  n . Solutia generala a ecuatiei (8.18) este de forma

yx   Q p1 1 x e 1x  Q p 2 1 x e 2 x    Q p k 1 x e k x , (8.21)


unde

Q pi 1x   C1  C2 x    C p x pi 1 (8.22)
i
este un polinom de grad cel mult pi  1 .

Cazul 2. Presupunem că rădăcinile ecuaţiei caracteristice sunt complexe şi


analizăm pe rând subcazul când rădăcinile sunt distincte şi apoi cazul când ecuaţia
caracteristică are şi rădăcini multiple.
a) Presupunem că ecuaţia caracteristică are toate rădăcinile complexe distincte; rezultă
că ele sunt două câte două complex-conjugate. Solutia generala a ecuatiei (8.18) va
fi:

yx   C1e1 x cos 1 x  C 2 e 2 x cos  2 x    C k e k x cos  k x  (8.23)


 C1e1 x sin 1 x  C 2e 2 x sin  2 x    C ke k x sin  k x,

8
unde Ci , Ci , i  1, k sunt constante arbitrare.

b) Dacă ecuaţia caracteristică are rădăcina complexă 1  1  i1 multiplă, de


ordinul p1 rezulta ca solutia generala a ecuatiei diferentiale va fi:

yx   C1e 1x cos 1x  C2 xe 1x cos 1x    C p1 x p1 1e 1x cos 1x  (8.24)
 C1e 1x sin 1x  C2 xe 1x sin 1x    C p1 x p1 1e 1x sin 1x.

c) Ecuaţia caracteristică are rădăcinile complexe


1  1  i1


    i
 j j j


cu multiplicitatile p1,, p j , unde 2 p1   p j  n . 
Solutia generala a ecuatiei diferentiale (8.18) va fi:
 x
yx   R1 x  cos 1x  S1 x sin 1xe 1x     R p j 1 x  cos  j x  S p j 1 x sin  j xe j , (8.25)
 
unde
p 1
 R p j 1 x   C1  C2 x    C p j x j este un polinom de grad cel mult p j  1 ,

p 1
 S p j 1 x   C1  C2 x    C p j x j este un polinom de grad cel mult p j  1 .

Cazul 3. Presupunem că ecuaţia caracteristică are:


o radacinile reale 1 ,  ,  j , cu multiplicitatile p1 ,  , p j

si
o radacinile complexe
 j 1  1  i1



 j  l   l  i l
cu multiplicitatile p j 1 ,  , p j  l , unde


p1    p j  2 p j 1    p j  l  n .
Solutia generala a ecuatiei (8.18) va fi:

9
j l
 
yx    Q pi 1 x e i x   e k x R p j  k 1 x  cos  k x  S p j  k 1 x sin  k x ,
i 1 k 1
(8.26)

unde
 Q pi 1 x  este un polinom de grad cel mult pi  1 si are expresia (8.22),

 R p j  k 1 x   c1  c2 x    c pk x pk 1 este un polinom de grad cel mult pk  1 ,

 S p j  k 1 x   c1  c2 x    c pk x p k 1 este un polinom de grad cel mult pk  1 .

7) Să se determine soluţia generală a următoarelor ecuaţii diferenţiale omogene cu


coeficienţi constanţi:
a) y   y  0
>> y=dsolve('D2y=y','x')
y=
C1*exp(x)+C2*exp(-x)
b) y 4   5 y   4 y  0
>> y=dsolve('D4y+5*D2y+4*y=0','x')
y=
C1*sin(x)+C2*cos(x)+C3*sin(2*x)+C4*cos(2*x)

ECUATII NEOMOGENE CU COEFICIENTI CONSTANTI


O ecuaţie diferenţială de forma

a0 y n   a1 y n 1    an 1 y   an y  f x  , (8.27)
unde a0 , a1 ,  , an sunt constante reale, a0  0 iar f : C 0 I    este o funcţie

continuă pe un interval I   se numeşte ecuaţie diferenţială liniară neomogenă de


ordinul n cu coeficienţi constanţi.
Soluţia generală a acestei ecuaţii este suma dintre soluţia generală a ecuaţiei
omogene asociate şi o soluţie particulară (oarecare) a ecuaţiei neomogene; deci
yx   yo x   y p x  .

În cazul când f este o funcţie oarecare, pentru determinarea unei soluţii particulare
a ecuaţiei neomogene se utilizează metoda variaţiei constantelor (sau metoda

10
constantelor variabile) a lui Lagrange; soluţia particulară a ecuaţiei neomogene poate fi
găsită sub forma
y p x   C1 x y1 x   C2 x y2 x     Cn x yn x  ,

unde C1 x , C2 x , Cn x  reprezintă soluţia sistemului algebric, liniar, de n ecuaţii,

cu n necunoscute, neomogen:


C1 x  y1 x   C 2 x  y 2 x     C n x  y n x   0
C  x  y  x   C  x  y  x     C  x  y  x   0
 1 1 2 2 n n

 n  2  x   C  x  y n  2  x     C  x  y n  2  x   0
C1 x  y1 2 2 n n
 
C1 x  y n 1 x   C 2 x  y n 1 x     C n x  y nn 1 x   f x .
 1 2 a0

Observaţie. Dacă ordinul ecuaţiei diferenţiale neomogene este mare, atunci


calculele pentru determinarea soluţiei particulare devin laborioase, deoarece sistemul care
rezultă prin aplicarea metodei variaţiei constantelor are n ecuaţii, şi n funcţii
necunoscute.
În cazul când f x  are o formă particulară se utilizează metoda coeficienţilor
nedeterminaţi (sau a identificării).
Distingem următoarele situaţii:
Situatia 1. Membrul drept al ecuaţiei diferenţiale (8.27) este de forma
f x   C  const .
a) Daca   0 nu este rădăcină a ecuaţiei caracteristice, atunci ecuaţia diferenţială
 0

(8.27) are o soluţie particulară de forma

y p x  
C
. (8.28)
an
b) Daca   0 este rădăcină multiplă de ordinul m a ecuaţiei caracteristice atunci
m

ecuaţia diferenţială (8.27) are o soluţie particulară de forma

C  xm
y p x   . (8.29)
m!an  m
Situatia 2. Membrul drept al ecuaţiei diferenţiale (8.27) are forma

11
f x   Cex ,
unde  este o constanta.

a) Daca    nu este rădăcină a ecuaţiei caracteristice, atunci ecuaţia diferenţială


 0

(8.27) are o soluţie particulară de forma

C  ex
y p x   . (8.30)
P 
b) Daca    este rădăcină multiplă de ordinul m a ecuaţiei caracteristice atunci
ecuaţia diferenţială (8.27) are o soluţie particulară de forma

C  x m  ex
y p x   . (8.31)
P m   
Situatia 3. Membrul drept al ecuaţiei diferenţiale (8.27) este de forma
f x   Pm x  ,

unde Pm x  este un polinom de gadul m .

a) Daca   0 nu este rădăcină a ecuaţiei caracteristice, atunci ecuaţia diferenţială


(8.27) are o soluţie particulară de forma
y p x   Qm x  ,
(8.32)
unde Qm x  este un polinom de acelaşi grad ca şi Pm x  , ai cărui coeficienţi se
Q m t  Pm t 

determină prin identificare, punând condiţia ca y p x  să verifice ecuaţia neomogenă.

b) Daca   0 te rădăcină multiplă de ordinul r a ecuaţiei caracteristice atunci ecuaţia


r

diferenţială (8.27) are o soluţie particulară de forma

y p x   x r Qm x  , (8.33)
unde Qm x  este un polinom de acelaşi grad ca şi Pm x  .
Situatia 4. Membrul drept al ecuaţiei diferenţiale (8.27) este de forma

f x   ex Pm x  .

a) Daca    is nu este rădăcină a ecuaţiei caracteristice, atunci ecuaţia


 

diferenţială (8.27) are o soluţie particulară de forma

y p x   ex Qm x  , (8.34)

12
unde Qm x  este un polinom de acelaşi grad ca şi Pm x  ,
Q m t  Pm t  Pm t 
ai cărui coeficienţi se

determină prin identificare, punând condiţia ca y p x  din (8.34) să verifice ecuaţia


x p t 

neomogenă.
b) Daca    este rădăcină multiplă de ordinul r a ecuaţiei caracteristice, atunci
 
r

ecuaţia diferenţială (8.27) are o soluţie particulară de forma

y p x   ex x r Pm x  . (8.35)
Situatia 5. Membrul drept al ecuaţiei diferenţiale (8.27) este de forma
f x   M cos  x  N sin  x .
a) Daca    i   i
nu este rădăcină a ecuaţiei caracteristice, atunci ecuaţia
diferenţială (8.27) are o soluţie particulară de forma
y p x   A cos  x  B sin  x .
(8.36)
b) Daca    i este rădăcină multiplă de ordinul m a ecuaţiei caracteristice, m

atunci ecuaţia diferenţială (8.27) are o soluţie particulară de forma

y p x   x m  A cos  x  B sin  x  . (8.37)


Situatia 6. Membrul drept al ecuaţiei diferenţiale (8.27) este de forma

f x   ex Pm x cos  x  Qm x sin  x  .

a) Daca      i nu este rădăcină a ecuaţiei caracteristice, atunci ecuaţia


diferenţială (8.27) are o soluţie particulară de forma

y p x   ex Rm x cos  x  S m x sin  x  . (8.38)


b) Daca     i este rădăcină multiplă de ordinul r a ecuaţiei caracteristice, r

atunci ecuaţia diferenţială (8.27) are o soluţie particulară de forma

y p x   x r ex Rm x cos  x  S m x sin  x  . (8.39)


Situatia 7. Membrul drept al ecuaţiei diferenţiale (8.27) este de forma
f x   f1 x     f k x  ,

cu f i x  de forma din situaţiile 1- 6.


f i t 

În acest caz, ecuaţia diferenţială (8.27) are o soluţie particulară de forma

13
y p x   y p1 x     y pk x  ,
(8.40)
cu y pi x  corespunzător lui f i x  . f i t 

x pi t 

8) Să se determine soluţia generală a următoarelor ecuaţii diferenţiale neomogene cu


coeficienţi constanţi:
a) y   5 y   6 y  6 x 2  10 x  2
>> y=dsolve('D2y-5*Dy+6*y=6*x^2-10*x+2','x')
y=
exp(3*x)*C2+exp(2*x)*C1+x^2
b) y  y  6 y  2 cos 2 x  10 sin 2 x
>> y=dsolve('D2y+Dy-6*y=2*cos(2*x)-10*sin(2*x)','x')
y=
exp(-3*x)*C2+exp(2*x)*C1+sin(2*x)

c) y   3 y   3 y   y  e x x, x0
>> y=dsolve('D3y-3*D2y+3*Dy-y=exp(x)*sqrt(x)','x')
y=
8/105*x^(7/2)*exp(x)+C1*exp(x)+C2*exp(x)*x+C3*exp(x)*x^2
d) y   x  sin x
>> y=dsolve('D2y=x+sin(x)','x')
y=
1/6*x^3-sin(x)+C1*x+C2
e) y   ln x , x  0
>> y=dsolve('D3y=ln(x)','x')
y=
1/6*x^3*log(x)-11/36*x^3+1/2*x^2*C1+C2*x+C3

ECUATII EULER
O ecuaţie diferenţială liniară neomogenă de ordin superior cu coeficienţi variabili
se poate reduce la o ecuaţie cu coeficienţi constanţi, numită ecuaţia lui Euler:

an x n y n   an 1 x n 1 y n 1    a1 xy   a0 y  f x  , (4.1)

14
cu ai  , i  0, n , iar f o funcţie continuă.
Ecuaţia lui Euler se reduce la o ecuaţie cu coeficienţi constanţi prin schimbarea

variabilei independente x  e t .

9) Să se integereze ecuaţiile diferenţiale Euler următoare

a) x 2 y   xy   x  6 x ln x
>> y=dsolve('x^2*D2y-x*Dy+y=6*x*ln(x)','x')
>> y=dsolve('x^2*D2y-x*Dy+y=6*x*ln(x)','x')
y=
x*C2+log(x)*x*C1+log(x)^3*x
b) xy   y   1  x
>> y=dsolve('x*D3y+D2y=1+x','x')
y=
1/12*x^3+x*log(x)*C1-C1*x+1/2*x^2+C2*x+C3

c) 3x  22 y  73x  2y  63x  18


>> y=dsolve('(3*x+2)^2*D2y+7*(3*x+2)*Dy=-63*x+18','x')
y=
-1/4*C1/(3*x+2)^(4/3)+15*log((3*x+2)^(1/3))-3*x+C2
 y  x  1  y   0
 y 2  2

d) 
 y 2  1
 y 2  1

>> y=dsolve('D3y*(x-1)-D2y=0','y(2)=2','Dy(2)=1','D2y(2)=1','x')
y=
5/6+1/6*(x-1)^3+1/2*x
Tema
1. Rezolvaţi ecuaţia diferenţială cu variabile separabile:

a) 1  y 2  xyy   0

 y2  y 1
b) y  
 x2  x 1

15
2. Să se integreze ecuaţia diferenţială totală:

x 2  3y 2 d x  2xy d y  0 .
3. Să se rezolve ecuaţiile diferenţiale omogene şi reductibile la omogene:
 2 xy
a) y  
x2  y2

2x  y  12  3x2 x  y  1


b) y  
x  y  12  3x2 x  y  1
c) xy   y  x 2  y 2 .

4. Să se rezolve ecuaţia diferenţială neomogenă:


2
a) y   4 xy  x e  x
b) y   y tg x  cos x .

5. Să se rezolve ecuaţia diferenţială de tip Bernoulli:

a) y   3xy  xy 2
y 1
b) y    , x  0, y  0.
x x2 y2

6. Să se integreze ecuaţia diferenţială de tip Riccati:

a) y   y 2  x 2  1
x 2 2 1
b) y   y  y .
2 x 2x3

7. Să se determine soluţia generală a următoarelor ecuaţii diferenţiale omogene cu


coeficienţi constanţi:
a) y   y   y  0
b) y   5 y   17 y   13 y  0

c) y 4  3 y   5 y   3 y   4 y  0

d) y 5  11y 4  50 y   94 y   13 y   169 y  0 .

16
8. Să se determine soluţia generală a următoarelor ecuaţii diferenţiale neomogene cu
coeficienţi constanţi:
1
a) y   3 y   2 y 
1 ex

9 x 2  6 x  2 3x
b) y   6 y   6 y  e
x3

c) y 3  4 y   cos 3x

d) y 5  4 y   x 2 e x

e) y 7   y   12 x .

9. Să se integereze ecuaţiile diferenţiale Euler următoare:

a) x 2 y   xy   x  2 sinln x 

b) x 3 y   3x 2 y   xy   y  x .

17
Laborator 9. Rezolvarea sistemelor de ecuatii diferentiale în Matlab 7.0

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

SISTEME OMOGENE
Un sistem de ecuaţii diferenţiale de forma
 y1  a11 y1  a12 y 2    a1n y n  f1 x 
  (9.1)
 y 2  a 21 y1  a 22 y 2    a 2n y n  f 2 x 


 y n  a n1 y1  a n 2 y 2    a nn y n  f n x ,

unde
d yk
 y k  , k  1, n ,
dx
 aij i, j  1, n sunt constante reale,
a ij

 fi  C 0 I  , i, j  1, n , I   ,

 y1 ,, y n  C1 I  sunt funcţii necunoscute,


se numeşte sistem de ecuaţii diferenţiale liniare de ordinul I şi neomogen cu coeficienţi
constanţi.
Functiile aij se numesc coeficientii sistemului.
a ij

If f1    f n  0 pe I, sistemul se numeste omogen, este numit neomogen.


Problema Cauchy asociată sistemului (9.1) constă din acest sistem căruia îi ataşăm
condiţiile iniţiale
 y1 x0   y 0
 1


 y n  x0   y n .
0

Sistemul (9.1) poate fi rezolvat prin următoarele două metode:


 Metoda ecuaţiei caracteristice

1
 Metoda eliminării constă în reducerea sistemului de ecuaţii diferenţiale la o
singură ecuaţie diferenţială liniară de ordinul n , pentru una din funcţiile
n

necunoscute ale sistemului şi rezolvarea apoi a acestei ecuaţii.


1) Să se rezolve următorul sistem de ecuaţii diferenţiale liniare omogen:
 y  y2
a)  1
 y 2   y1
>> [y1,y2]=dsolve('Dy1=y2','Dy2=-y1','x')
y1 =
-C1*cos(x)+C2*sin(x)
y2 =
C1*sin(x)+C2*cos(x)
 y1  3 y 2  4 y3

b)  y 2   y3
 y   2 y  y
 3 1 2
>> [y1,y2,y3]=dsolve('Dy1=3*y2-4*y3','Dy2=-y3','Dy3=-2*y1+y2','x')
y1 =
exp(-x)*C1+5/2*C2*exp(-2*x)+5*C3*exp(3*x)
y2 =
exp(-x)*C1+C2*exp(-2*x)+C3*exp(3*x)
y3 =
exp(-x)*C1+2*C2*exp(-2*x)-3*C3*exp(3*x)
 y1  y1  y 2  3 y3
 
 y 2  4 y1  y 2  2 y3
 y   2 y1  y 2  6 y3
c)  3
 y1 0   2
 y 2 0   1

 y3 0   1

>>[y1,y2,y3]=dsolve('Dy1=y1+y2-3*y3','Dy2=4*y1+y2-2*y3','Dy3=2*y1+y2-
6*y3','y1(0)=2','y2(0)=1','y3(0)=-1','x')
y1 =
-13/14*exp(-5*x)+3/2*exp(-x)+10/7*exp(2*x)

2
y2 =
-3*exp(-x)+4*exp(2*x)
y3 =
-13/7*exp(-5*x)+6/7*exp(2*x)

SISTEME NEOMOGENE
Soluţia generală a sistemului neomogen (9.1) este suma dintre soluţia generală a
sistemului omogen şi o soluţie particulară a sistemului neomogen.
O soluţie particulară a sistemului neomogen se poate determina cu ajutorul metodei
variaţiei constantelor.

2) Să se rezolve următorul sistem de ecuaţii diferenţiale liniare neomogen:


 y1  y 2
a) 
 y 2  y1  e  e
x x

>> [y1,y2]=dsolve('Dy1=y2','Dy2=y1+exp(x)+exp(-x)','x')
y1 =
exp(x)*C2+exp(-x)*C1+1/2*x*exp(x)-1/4*exp(-x)-1/4*exp(x)-1/2*exp(-x)*x
y2 =
exp(x)*C2-exp(-x)*C1+1/2*x*exp(x)-1/4*exp(-x)+1/4*exp(x)+1/2*exp(-x)*x
 y  y  y  x  x 2
 1 2 3

b)  y 2  3 y1  y3  2  x 2
 y  3 y  y  x  3
 3 1 2

>> [y1,y2,y3]=dsolve('Dy1=y2+y3-x-x^2','Dy2=3*y1+y3-2-x^2','Dy3=3*y1+y2+x-
3','x')
y1 =
1+2/3*C2*exp(3*x)-C3*exp(-2*x)
y2 =
x+exp(-x)*C1+C2*exp(3*x)+C3*exp(-2*x)
y3 =
-exp(-x)*C1+C2*exp(3*x)+C3*exp(-2*x)+x^2

3
3) Să se determine soluţia sistemului de ecuaţii diferenţiale de ordinul întâi
d x d y
 d t  d t  y  4x  1

d x  2 d y  4 y  2x  t

 dt dt
 x0  1
 y 0  2.

>> [x,y]=dsolve('Dx-Dy=y-4*x+1','Dx+2*Dy=4*y+2*x+t','x(0)=-1','y(0)=2','t')
x=
17/108-244/135*exp(-3*t)+13/20*exp(2*t)-1/18*t
y=
122/135*exp(-3*t)+13/10*exp(2*t)-11/54-2/9*t
4)
Tema
1) Să se rezolve următorul sistem de ecuaţii diferenţiale liniare omogen:
 y1  y 2  y3

a)  y 2  y3  y1
 y  y  y
 3 1 2

 y1  2 y1  2 y 2  2 y3

b)  y 2  10 y1  6 y 2  8 y3
 y  3 y  y  2 y
 3 1 2 3

d y
 d x  3 y  8 z  4u  0

d z
c)   y  5 z  2u  0
d x
d u
 d x  3 y  14 z  6u  0.

2) Să se rezolve următorul sistem de ecuaţii diferenţiale liniare neomogen:


 y1  2 y1  y 2  2 y3  x  2

a)  y 2   y1  1
 y  y  y  y  1  x
 3 1 2 3

4
 dx 1
t d t  y  t
b)  ,t 0
t d y   x  t
 d t

 y  y  y  e x
 1 2 3

c)  y 2  y1  y3  e x

 y3  y1  y 2  e
x

d x
 d t  z  y  4x  1

d y
d)   2y  x  z 1
 dt
d z
 d t  y  z  2 x  1.

3) Rezolvaţi problema Cauchy:


d x
 d t  x  y  3z

d y  4x  y  2z
 dt

a)  d z  2 x  y  6 z
dt
 x0   2

 y 0   1

 z 0   1
 y1  3 y1  8 y 2  4 y3  1
 
 y 2  y1  5 y 2  2 y3  1
 y   3 y1  14 y 2  6 y3  2
b)  3
 y1 0   2
 y 2 0   3

 y3 0   4

5
 dx
3 d t  x  2 y  t  1

 d y  4 x  y  2t  3
c) 3
 dt
 x0  2
 y 0  3

6
Laborator 10. Reprezentări grafice în plan în Matlab 7.0

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

Matlab 7.0 dispune de funcţii speciale care permit realizarea reprezentărilor grafice 2D.
Reprezentarea datelor în coordonate carteziene este realizată utilizând funcţia plot.
plot(f) Reprezintă grafic funcţia f
plot(f,linie,marker,culoare) Reprezintă grafic funcţia f utilizând un anumit stil de linie, un
anumit simbol de marker şi o anumită culoare
plot(f,g) Reprezintă grafic simultan două funcţii f şi g în acelaşi sistem de
coordonate
plot(f,g,linie,marker,culoare) Reprezintă grafic simultan două funcţii f şi g în acelaşi sistem de
coordonate, utilizând un anumit stil de linie, un anumit simbol de
marker şi o anumită culoare
ezpolar(f) Reprezintă grafic în coordonate polare curba   f   în domeniul
0    2 (nu apare la versiunile precedente de Matlab)
comet(x,y) Repezentarea dinamică a vectorului y în funcţie de vectorul x
Observaţie. Vom lista codurile corespunzătoare fiecărui stil de linie, fiecărui simbol
de marker şi fiecărei culori folosite într-o reprezentare grafică 2D:
Specificatori ai stilurilor de linie
Specificator Stilul de linie
- Linie continuă
-- Linie întreruptă
: Puncte
-. Linie- punct
Simboluri de markere
Specificator Tipul de marker

1
+ Semnul plus
o Cerc
* Steluţă
. Punct
x x
„square‟ sau s Pătrat
„diamond‟ sau d Romb
„pentagram‟ sau p Pentagon
„hexagram‟ sau h Hexagon
^ Triunghi cu vârful în sus
v Triunghi cu vârful în jos
< Triunghi cu vârful spre stânga
> Triunghi cu vârful spre dreapta
Specificatori de culori
Specificator Culoarea
r Roşu
g Verde
b Albastru
c Albastru deschis
m Mov
y Galben
k Negru
w Alb

Aplicaţii

REPREZENTAREA CARTEZIANA

1) Reprezentaţi grafic următoarele funcţii în plan:

f x   arcsin , x   5, 5
2x
a)
1 x2
Pasul 1. Se fixează intervalul pe care va fi reprezentată funcţia şi un anumit pas.
>>x=-5:0.1:5;

2
Pasul 2. Definim funcţia ce urmează să fie reprezentată.
>> f=@(x) asin(2*x./(1+x.^2));
Pasul 3. Realizăm reprezentarea grafică.
>> plot(f(x),'m','LineWidth',4)
2

1.5

0.5

-0.5

-1

-1.5

-2
0 20 40 60 80 100 120

, x   10,10
 x 1
b) f x   x  1  e

>> x=-10:0.01:10;
>> f=@(x) abs(x+1).*exp(-abs(x-1))
f=
@(x) abs(x+1).*exp(-abs(x-1))
>> plot(f(x),'k','LineWidth',5)
2

1.8

1.6

1.4

1.2

0.8

0.6

0.4

0.2

0
0 500 1000 1500 2000 2500

c) f x   arcsin x , g x   arccos x , x   1,1


>>x=-1:0.01:1;
>> f=@(x) asin(x);
>> g=@(x) acos(x);

3
>> plot(x,f(x),'k',x,g(x),'b','LineWidth',3)
4

-1

-2
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

REPREZENTAREA GRAFICĂ A UNOR CURBE REMARCABILE DIN GEOMETRIE

2) Reprezentaţi grafic următoarele curbe remarcabile din geometrie:


a) Elipsa:

x2 y2
- are ecuaţia carteziană implicită:   1;
a2 b2
- este caracterizată de ecuaţiile parametrice:
 x  a c ost
 , t  0, 2 .
 y  b s in t
>> a=2;b=1; x=-a:0.001:a;
>> y=(b/a)*sqrt(a^2-x.^2);
>> y1=-(b/a)*sqrt(a^2-x.^2);
>> plot(x,y,'b',x,y1,'b','LineWidth',4)

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

4
b) Hiperbola:
x2 y2
- are ecuaţia carteziană implicită:   1;
a 2 b2
- este caracterizată de ecuaţiile parametrice:
 x  a ch t
 , t   daca x  a,  ,
 y  b sh t
 x  a ch t
 , t   daca x   ,  a .
 y  b sh t
>> a=2;b=1;
>> t=-2:0.02:2;
>> x=a*cosh(t); y=b*sinh(t);
>> plot(x,y,'r',-x,-y,'r','LineWidth',4)
>>grid
4

-1

-2

-3

-4
-8 -6 -4 -2 0 2 4 6 8

c) Parabola:
- are ecuaţia carteziană implicită:
2 px, x  0
y2  
 2 px, x  0
- are ecuaţiile parametrice
 t2
 x 
 2 p, t   .
y  t

>> p=2;
>> t=-2:0.001:2;

5
>> x=t.^2/(2*p); y=t;
>> plot(x,y,'m','LineWidth',4)

1.5

0.5

-0.5

-1

-1.5

-2
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

d) Astroida:
- are ecuaţia carteziană implicită:
2 2 2
x  y  a3 ;
3 3

- are ecuaţiile parametrice


 3
 x  a cos t
 , t  0, 2 
 3
 y  a sin t
>> a=1;
>>t=0:0.01*pi:2*pi;
>> x=@(t) a*cos(t).^3;
>> y=@(t) a*sin(t).^3;
>> plot(x(t),y(t),'r','LineWidth',4)
1

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

6
e) Cardioida:
- are ecuaţiile parametrice:
 x  a cos t 1  cos t 
 , t  0, 2  .
 y  a sin t 1  cos t 
>> a=5;
>> t=0:0.01*pi:2*pi;
>>x=@(t) a*cos(t).*(1-cos(t));
>>y=@(t) a*sin(t).*(1-cos(t));
>> plot(x(t),y(t),'b', 'LineWidth',4)
8

-2

-4

-6

-8
-10 -8 -6 -4 -2 0 2

f) Lemniscata lui Bernoulli:


- are ecuaţiile parametrice:
 a cos t
 x  1  sin 2 t
 , t  0, 2  .
 y  a sin t cos t
 1  sin 2 t
>> a=5;
>> t=0:0.001*pi:2*pi;
>> x=@(t) a*cos(t)./(1+sin(t).^2);
>> y=@(t) a*sin(t).*cos(t)./(1+sin(t).^2);
>> plot(x(t),y(t),'b', 'LineWidth',4)

7
2

1.5

0.5

-0.5

-1

-1.5

-2
-5 -4 -3 -2 -1 0 1 2 3 4 5

g) Curba Butterfly
- are ecuaţiile parametrice:
  cos t t 
 x  sin t  e  2 cos 4t  sin 5 
  12 
 , t  0, 2  .

 y  cos t  e cos t  2 cos 4t  sin 5 t 
  12 
>> t=0:0.001*pi:2*pi;
>> x=@(t) sin(t).*(exp(cos(t))-2*cos(4*t)+sin(t/12).^5);
>> y=@(t) cos(t).*(exp(cos(t))-2*cos(4*t)+sin(t/12).^5);
>> plot(x(t),y(t), 'k','LineWidth',4)

-1

-2
-3 -2 -1 0 1 2 3

REPREZENTAREA GRAFICA A SOLUTIILOR UNEI ECUATII DIFERENTIALE

O ecuatie diferentiala de forma


y  xA y   B y  ,
(10.1)

in care A, B sunt functii continue reprezinta o ecuatie Lagrange.

8
Notand
dy
y  p   p  d y  pd x (10.2)
dx
ecuatia (10.1) devine
y  xA p   B p  ;
(10.3)
prin diferentiere obtinem:
p d x  A p d x  xA p   B p d p ,
adica
 p  A pd x  xA p  B pd p .
Daca
1. p  A p   0
atunci rezulta
dx A p  B  p 
 x ,
d p p  A p  p  A p 
o ecuatie diferentiala neomogena, avand solutia generala:
A p  A p 
d p   
 dp
x  e p  A p   C   e p  A p  
B  p  
d p .
(10.4)
 p  A p  
 
Din (10.3) si (10.4) deducem ca solutia generala a ecuatiei Lagrange este:
A p  A p 
d p   
 B p  
dp (10.5)
y  A p e p  A p  C   e p  A p   d p   B p  .
 p  A p  
 
2. p  A p  se anuleaza pe intervalul comun de definitie al functiilor A si B ,
atunci vom nota cu p1 solutia ecuatiei:
p  A p   0
(10.6)
careia îi corespunde o solutie a ecuatiei Lagrange, adica
y  xA p1   B p1  . (10.7)

Ecuatia Lagrange admite ca solutii singulare, drepte de forma (10.7), ce constituie


solutiile ecuatiei (10.6).

9
Solutia singulara este solutia care are proprietatea ca prin fiecare punct al sau, trece
cel putin o solutie a ecuatiei diferentiale. Solutia singulara nu poate fi obtinuta din solutia
generala a ecuatiei diferentiale, pentru nici o valoare a constantei C .
Din punct de vedere geometric, solutia singulara este infasuratoarea familiei de
curbe, care definesc solutia generala a ecuatiei diferentiale.
Infasuratoarea unei familii de curbe este curba, care este tangenta in fiecare punct
al sau, unei curbe din familia respectiva (vezi fig. de mai jos).

3) Reprezentati grafic in Matlab 7.0 solutiile ecuatiei diferentiale Lagrange:

4 2 8 3
x y  y  y .
9 27
>> y=dsolve('x-y=(4/9)*Dy^2-(8/27)*Dy^3','x')
y=
-4/27+x
C1+(x-C1)^(3/2)
C1-(x-C1)^(3/2)

>> t=-12:0.1:12;
>>C1=12 ;
>> x=(t.^2).^(1/3)+C1;
>> y=t+C1;
>>C2=11;
>> x1=(t.^2).^(1/3)+C2 ;
>> y1=t+C2;
>>C3=8;
>> x2=(t.^2).^(1/3)+C3 ;
>> y2=t+C3;
>>C4=2 ;

10
>>x4=(t.^2).^(1/3)+C4 ;
>> y4=t+C4;
>>C5=10;
>>x5=(t.^2).^(1/3)+C5 ;
>> y5=t+C5 ;
>> x3=-15:15;
>> y3=-4/27+x3;
>> plot(x,y,'b',x1,y1,'b',x2,y2,'b',x4,y4,'b',x5,y5,'b',x3,y3,'m','LineWidth',2)

O ecuatie diferentiala de forma


y  xy   B y  ,
(10.8)
B fiind o functie continua reprezinta o ecuatie Clairaut.
Notand
y  p
ecuatia (10.8) devine
y  x  p  B p  ;
(10.9)
prin diferentiere, obtinem:
p d x  p d x  x d p  B p d p ,

11
adica
x  B pd p  0 .
Daca
1. d p  0  p  C ;
atunci din (10.9) obtinem
y  Cx  BC  ,
(10.10)
ecuatie care reprezinta a familie drepte din plan, ce constituie solutia generala a ecuatiei
Clairaut.
2. x  B p   0  x  B p  ;
se obtine solutia singulara a ecuatiei Clairaut:
y   pB p   B p  .
(10.11)

4) Reprezentati grafic solutiile ecuatiei diferentiale Clairaut:

y  xy   4y  2 .

Vom determina solutiile ecuatiei diferentiale in Matalb 7.9:


>> y=dsolve('y=x*Dy-4*Dy^2','x')
y=
x^2/16
C*x - 4*C^2
>> t=-2:0.1:2;
>> x=t;
>> y=t.^2/16;
>>C=0.01;
>>y1=C*x-4*C^2
>>C1=0.04;
>>y2=C1*x-4*C1^2 ;
>> C2=0.09;
>> y3=C2*x-4*C2^2;
>> plot(x,y,'b',x,y1,x,y2,x,y3,'LineWidth',2)

12
0.25

0.2

0.15

0.1

0.05

-0.05

-0.1

-0.15

-0.2

-0.25
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

REPREZENTAREA POLARA

5) Reprezentaţi grafic în coordonate polare trifoiul cu patru foi:


f t   a sin 2t , t  0, 2  .
>> a=2; t=0:pi/30:2*pi;
>> f=@(t) a*sin(2*t);
>> ezpolar(f)

90 2
120 60
1.5

150 1 30

0.5

180 0

210 330

240 300
270
r = a sin(2 t)

REPREZENTAREA DINAMICA

6) Reprezentaţi grafic dinamic funcţia:


f t   tg sin t  sin tg t , t    ,  
>> t = -pi:pi/200:pi;

13
>> comet(t,tan(sin(t))-sin(tan(t)))

Tema
1. Reprezentaţi grafic în plan următoarele funcţii:
1
 x5 2
a) f x     , x   3, 5
 ln x  5 

b) f x   e  sin x  sin x , x  0, 2 

1 x2
c) f x   arcos , x   10,10
1 x2
 x2  2  x2  3
 f x  
 1
 x2 
 4

d)  g x   f 2  x   3 cos 3x  2 , x   5, 5 .
h  x   f x   g x 





2. Reprezentaţi grafic următoarele curbe remarcabile din geometrie:


a) Cercul
- are ecuaţia carteziană implicită:

x  x0 2   y  y0 2  r 2 ;
 x  x0  r cos t
- are ecuaţiile parametrice:  , t  0, 2 .
 y  y 0  r s int

14
b) Cicloida
- are ecuaţiile parametrice:
 xt   r t  sin t 
 , t .
 yt   r 1  cos t 

3. Reprezentaţi grafic dinamic funcţia:


f t   t , t  2, 20 .
4. Reprezentaţi grapfic în coordonate polare următoarele funcţii:

a) Cardioida:
f    a1  cos  ,   0, 2  .
b) Scarabaeus:

f t   b cos 2t  a cos t , t  0, 2 .

15
Laborator 11. Reprezentări grafice în spatiu în Matlab 7.0

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

Matlab 7.0 dispune de funcţii speciale care permit realizarea reprezentărilor grafice 3D,
funcţii ilustrate mai jos.
Funcţia Semnificaţie
ellipsoid(xc,zc,yc,a,b,c) reprezintă grafic elipsoidul de ecuaţie

x  xc  2   y  yc  2  z  zc 2  1
a2 b2 c2
X=linspace(x1,x2,n) Generează un vector X cu n componente, cuprinse în
intervalul x1, x2. Pasul dintre doua componente este
pas  x2  x1 n  1 . Daca valoarea lui n este omisa,
atunci aceasta este considerata implicit egala cu 100.
[X,Y]=meshgrid(x,y) Returnează în matricele X şi Y , perechile de coordonate ale
tuturor punctelor din domeniul definit de vectorii x şi y ;
matricele sunt utile pentru reprezentări grafice 3D.
mesh(X,Y,Z) Reprezintă grafic suprafaţa Z  X , Y  sub forma unei retele
plot3(X,Y,Z) Reprezintă grafic câte o linie în spaţiu prin punctele ale căror
coordonate sunt elementele matricelor X , Y , Z
plot3(X1,Y1,Z1,’linie Realizează reprezentări grafice 3D multiple, tipurile şi
tip1’,X2,Y2,Z2,’linie tip2…) culorile liniilor precizându-se precum în cazul funcţiei plot

Aplicaţii rezolvate

GENERAREA VECTORILOR CU PAS LINIAR

1. Sa se genereze un vector X cu 5 componente, cuprinse în intervalul  2, 3 .

>> X=linspace(-2,3,5)

1
X=

-2.0000 -0.7500 0.5000 1.7500 3.0000


GENERAREA UNEI RETELE (MESH)

2. Sa se genereze matricele X şi Y pentru domeniul:


 2  x  2, 3  y  3
cu pasul 1 pe axa Ox si pasul 3 pe axa Oy .
Apeland in Matlab7.0 instructiunea
>> [X,Y]=meshgrid(-2:2,-3:3:3)
rezulta

X=

-2 -1 0 1 2
-2 -1 0 1 2
-2 -1 0 1 2

Y=

-3 -3 -3 -3 -3
0 0 0 0 0
3 3 3 3 3
REPREZENTAREA 3D A SUPRAFETELOR

3. Reprezentaţi grafic în 3D următoarele suprafeţe:

a) f x, y   sin x 2  y 2  cosx  y  , x   3, 9 , y   3, 6


>> [x,y]=meshgrid(-3:.1:9,-3:.1:6);
>>z=sin(sqrt(x.^2+y.^2))+cos(x+y);
>> mesh(x,y,z);

-1

-2
10
10
5
5
0
2 -5
-5
0
b) f x, y   x 4  y 4 , x, y   3, 3
>> [x,y]=meshgrid(-3:.1:3,-3:.1:3);
>> z=x.^4-y.^4;
>> mesh(x,y,z);

100

50

-50

-100
4
2 4
0 2
0
-2 -2
-4 -4

3. Reprezentaţi grafic următoarele cuadrice:


a) Elipsoidul
>> ellipsoid(3,-2,1,9,4,1)

1.5

0.5

0
2
0 15
10
-2 5
-4 0
-5
-6 -10

b) Hiperboloidul cu o pânză:
- are ecuaţia în coordonate carteziene

x2 y2 z2
   1  0, a  b  0, c  0;
a2 b2 c2
- are reprezentarea parametrică:

3
 x  a 1  u 2 cos v


 y  b 1  u sin v , u   , v  0, 2 .
2
 z  cu


>> a=7;c=2;b=3;
>>u=linspace(-1,1,300);v=linspace(0,2*pi,300);
>> x=a*cos(v)'*sqrt(1+u.^2);y=b*sin(v)'*sqrt(1+u.^2);z=c*ones(size(v))'*u;
>> mesh(x,y,z)

c) Paraboloidul hiperbolic:
- are ecuaţia în coordonate carteziene
2 2
x y
2
 2  2 z , a  0, b  0 ;
a b
- are reprezentarea parametrică:
 x  a 2v cos u

 y  b 2v sin u , u  0, 2, v  0 .
 z  v cos 2u


>>a=3;b=2;
>> [x,y]=meshgrid(-60:15/6:90,-50:5/2:50);
>> z=x.^2/(2*a^2)-y.^2/(2*b^2);
>> mesh(x,y,z);

4
600

400

200

-200

-400
50
100
0 50
0
-50
-50 -100

d) Cilindrul:
- are ecuaţia în coordonate carteziene
x2  y2  R2 ;
- are reprezentarea parametrică:
 x  R cos u

 y  R sin u , u  0, 2  , v  0, h .
z  v

>> R=0.5;
>> u=linspace(0,2*pi,200);
>> v=linspace(0,50,200);
>> x=R*cos(u)'*ones(size(v));
>> y=R*sin(u)'*ones(size(v));
>> z=ones(size(u))'*v;
>> mesh(x,y,z)

50

40

30

20

10

0
0.5
0.5
0
0

-0.5 -0.5

5
e) Conul de rotaţie:
- are ecuaţia în coordonate carteziene
2
x2  y
2
z
2
 2  0 , a, c  0 ;
a c
- are reprezentarea parametrică:
 x  av cos u

 y  av sin u , v   .
 z  cv

>> a=1; c=2;
>> u=linspace(0,2*pi,200);
>>v=linspace(0,50,200);
>> x=a*cos(u)'*v;
>> y=a*sin(u)'*v;
>> z=c*ones(size(u))'*v;
>>mesh(x,y,z)

100

80

60

40

20

0
50
50
0
0

-50 -50

f) Hiperboloidul cu două pânze:


- are ecuaţia în coordonate carteziene

x2 y2 z2
   1  0, a  b  0, c  0 ;
a2 b2 c2
- are reprezentarea parametrică:
 x  a sinh u cos v

 y  b sinh u sin v , u   , v  0, 2 .
 z  c cosh u

6
>> a=3;c=3;b=2;
>> u=linspace(-3,3,200);v=linspace(0,2*pi,200);
>> x=a*cos(v)'*sinh(u);y=b*sin(v)'*sinh(u);
>>z=c*ones(size(v))'*cosh(u);z1=-c*ones(size(v))'*cosh(u);
>> plot3(x,y,z,x,y,z1,'LineWidth',8);

50

-50
40
20 40
0 20
0
-20 -20
-40 -40

g) Conul de ordin doi:


- are ecuaţia în coordonate carteziene

x2 y2 z2
   0, a  b  0, c  0;
a2 b2 c2
- reprezentarea parametrică:
 x  av cos u

 y  bv sin u , v   , u  0, 2  .
 z  cv

>> a=4;b=3;c=2;
>> u=linspace(0,2*pi,200);
>>v=linspace(0,50,200);
>> x=a*cos(u)'*v;
>> y=b*sin(u)'*v;
>> z=c*ones(size(u))'*v;
>> z1=-c*ones(size(u))'*v;
>> plot3(x,y,z,x,y,z1,’LineWidth’,8)

7
100

50

-50

-100
200
100 200
0 100
0
-100 -100
-200 -200


 x  R cos u

4. Reprezentaţi grafic arcul de elice:  y  R sin u , u  0, 2  .
 a
z  u
 2
>> R=4;a=1;
>> u=linspace(0,2*pi,200);
>> x=R*cos(u)'*ones(size(u)); y=R*sin(u)'*ones(size(u)); z=(a/(2*pi))*u'*ones(size(u));
>> mesh(x,y,z, 'LineWidth',8)

0.8

0.6

0.4

0.2

0
4
2 4
0 2
0
-2 -2
-4 -4

5. Reprezentaţi grafic urmatoarele suprafeţe algebrice remarcabile:


a) Bohemian Dome:
 x  a cos u

 y  b cos v  a sin u , u, v  0, 2 , a  0.5 , b  1.5 , c  1
 z  c sin v

8
>> a=0.5;c=1;b=1.5;
>> u=linspace(0,2*pi,100);v=linspace(0,2*pi,100);
>> x=a*ones(size(v))'*cos(u);
>> y=b*cos(v)'*ones(size(u))+a*ones(size(v))'*sin(u);
>> z=c*sin(v)'*ones(size(u));
>> mesh(x,y,z)

0.5

-0.5

-1
-0.5

1 1.5 2
0.5 -0.5 0 0.5
-2 -1.5 -1

b) Astroidal Ellipsoid:
 x  a cos 3 u cos 3 v
   
 y  b sin u cos v , u   ,  , v   ,  , a  1 , b  0.05 , c  0.7 .
3 3
  2 2
 z  c sin 3v

>> a=1;b=0.05;c=0.7; u=linspace(-pi/2,pi/2,500);v=linspace(-pi,pi,500);


>> x=a*(cos(v).^3)'*cos(u).^3; y=b*(cos(v).^3)'*sin(u).^3;
>> z=b*(sin(v).^3)'*ones(size(u));
>> mesh(x,y,z)

0.05

-0.05
0.05
1
0 0.5
0
-0.5
-0.05 -1

9
Aplicaţii propuse

1. Reprezentaţi grafic în 3D următoarele suprafeţe:

f  x, y   , x  1, 3 , y   6, 6 ;
20
x 
a.
2 2 3
y

f  x, y   , x   10,10 , y   6, 6 ;
xy
b.
1  x 2
y 
2 3

c. f x, y   y sin 3 x , x, y  0,   ;

d. f x, y   1  x y 2 , x, y  1, 4 .
2. Reprezentaţi grafic:
a) Sfera
- are ecuaţia în coordonate carteziene

x2  y 2  z 2  R2
- are reprezentarea parametrică:
 x   sin  cos 

 y   sin  sin  ,   0 ,   0,  ,   0, 2 .
 z   cos 

b) Paraboloidul eliptic
- are ecuaţia în coordonate carteziene

x 2 y 2
  2z , a  b  0 ;
a2 b2
- are reprezentarea parametrică:
 x  a 2v cos u

 y  b 2v sin u , u  0, 2, v  0 .
z  v


10
Laborator 12. Funcții definite de utilizator în Matlab 7.0 – Partea I

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

Un program Matlab 7.0 poate fi scris sub forma fişierelor script sau a fişierelor function.
Fişierele ce conţin instrucţiuni Matlab 7.0 poartă denumirea de fişiere- M datorită
faptului că au extensia “m” .
Un fişier script este un fişier- M, ce conţine o secvenţă de comenzi Matlab. Pentru
execuţia acestei secvenţe de comenzi, se scrie în linia de comandă numele fişierului script.
Fişierele funcţie sunt fişiere- M, care conţine în prima linie cuvântul cheie function.
Spre deosebire de un script, o funcţie poate lucra cu argumente.
Sintaxa primei linii a unui fişier funcţie este
function [y1,…,yn]=nume_funcţie(x1,…,xn)
unde
 y1,…,yn constituie parametrii de ieşire (în lipsa acestora se elimină parantezele
drepte şi semnul egal);
 x1,…,xn reprezintă parametrii de intrare (în cazul lipsei acestora se elimină
parantezele rotunde).
După terminarea execuţiei unei funcţii, numai variabilele de ieşire ale acesteia vor
rămâne în memoria calculatorului, în timp ce în cazul unui script rămân în memorie toate
variabilele cu care acesta a operat.
Dintre instrucţiunile de control logic din Matlab 7.0 menţionăm: if, else, elseif, end,
while, for, break.
Instrucţiunea condiţională if are forma generală
if expresie1
grup1_instrucţiuni;
elseif expresie2
grup2_instrucţiuni;
else

1
grup3_instrucţiuni;
end
Cele două instrucţiuni elseif şi else, asociate cu if sunt opţionale.
Expresia este de forma
expr1 op expr2
unde op este un operator relaţional din tabelul următor.
Operator relaţional Semnificaţia
== egal
~= diferit
< mai mic
> mai mare
<= mai mic sau egal
>= mai mare sau egal
Se testează expresia 1; dacă aceasta este adevărată atunci se execută grup1_instrucţiuni.
Altfel se testează expresia 2. Dacă aceasta este adevărată atunci se execută grup2_instrucţiuni
iar în caz contrar se execută grup3_instrucţiuni.
Instrucţiunea repetitivă for este utilizată pentru repetarea unui grup de instrucţiuni, de
un anumit număr de ori şi are sintaxa
for index=expr
grup_instrucţiuni;
end
unde
 index este numele contorului,
 expr este o expresie de forma
iniţial:pas:final,
în care:
- iniţial este prima valoare a contorului,
- pas constituie pasul (implicit se consideră 1),
- final reprezintă cea mai mare valoare pe care o poate lua index.
Instrucţiunea repetitivă while se foloseşte în scopul repetării unui grup de instrucţiuni de
un număr de ori, determinat de expresia specificată; are formatul
while expr
2
grup_instrucţiuni;
end
Expresia este de forma
expr1 op expr2
unde op este un operator relaţional.
Grupul de instrucţiuni se execută cât timp expresia este adevărată.
Instrucţiunea break termină execuţia buclelor for şi while; în afara acestor bucle,
instrucţiunea break nu este definită.
Instrucţiunea end încheie ciclurile for, while şi if.

Aplicaţii rezolvate

1. Scrieţi un fişier “function” în Matlab pentru a reprezenta grafic funcţia:


 1
 x cos , x  0
a) f x    x , x   0.5, 0.5, h  0.01

0, x  0




1  cos x 3  y 3 
, x2  y2  0
b) f  x, y    x2  y2

 2
0 x  y  0
2

a) Se selectează succesiv File->New->M-file şi se scriu următoarele instructiuni


function r=f(x)
if x~=0
r=x*cos(1/x);
elseif x==0
r=0;
end
end
Se salvează fişierul cu f.m apoi în linia de comanda se scrie:
>> x=-0.5:0.01:0.5;
>> for k=1:length(x)
y(k)=f(x(k));
end
>> plot(x,y)

3
0.4

0.3

0.2

0.1

-0.1

-0.2

-0.3

-0.4
-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5

b) function r=f(x,y)
[m,n]=size(x);
for k=1:m
for t=1:n
if x(k,t)^2+y(k,t)^2~=0
r=(1-cos(x(k,t)^3+y(k,t)^3))/(x(k,t)^2+y(k,t)^2);
else
r=0;
end
end
end
end
Se salvează fişierul cu f.m apoi în linia de comanda se scrie:
>>[x,y]=meshgrid(-1:.01:1,-2:.1:2);
>> [m,n]=size(x);
>> for k=1:m
for t=1:n
z(k,t)=f(x(k,t),y(k,t));
end
end
>> mesh(x,y,z)

4
1

0.8

0.6

0.4

0.2

0
2
1 1
0 0.5
0
-1 -0.5
-2 -1

2. Scrieţi un fişier “function” în Matlab pentru a calcula C nk .


function r=comb(n,k)
if (k<0) | (k>n)
r=-1;
elseif (k==0)|(n==k)
r=1;
else
r=comb(n,k-1)*(n-k+1)/k;
end
end
Se salvează fişierul cu comb.m apoi in linia de comanda se scrie:
>> comb(16,13)
ans =
560

EXTREMELE UNEI FUNCTII DE MAI MULTE VARIABILE


Definitia 12.1. A functie f x, y  are o valoare de maxim (minim) f a, b  in punctul
Pa, b  , daca pentru orice punct P'(x, y) din vecinatatea lui P are loc inegalitate
f a, b  f x, y  (respectiv, f a, b  f x, y  ). Termenul de maxim si minim al unei functii
este denumit extrem.
In mod similar se pot defini extremele unei functii de trei sau mai multe variable.

5
Propozitia 12.1 (conditii necesare pentru un extrem). Punctele in care o functie
diferentiabila f x, y  are un extrem, numite puncte stationare se determina rezolvand
sistemul de ecuatii:
 f x x, y   0
  (12.1)
 f y  x, y   0

Propozitia 12.2 (conditii suficiente pentru un extrem). Fie Pa, b  un punct stationar
al functiei f x, y  , adica f x a, b  f y a, b . Se construieste discriminantul:

 a, b2  f 2 a, b   f 2 a, b  .


E  f xy (12.2)
x y

Atunci:
A) daca E  0 , functia are un extrem in punctul Pa, b  , adica:
1) un minim local daca f 2 a, b  0 (sau f 2 a, b  0 ),
x y

2) un maxim local daca f 2 a, b  0 (sau f 2 a, b   0 );


x y

B) daca E  0 atunci functia nu are un extrem in punctul Pa, b  ,


C) daca E  0 nu se poate decide daca functia are sau nu un extrem in punctul Pa, b  .
Observatie. Pentru o functie de trei variaible, pentru fiecare punct stationar Pa, b, c 
al functiei f x, y, z  se construieste matricea

 2 f 2 f  2 f 
 (12.3)
 x 2 xy xz 
 2 
 f 2 f 2 f 
 .
 xy y 2 yz 
 
 2 f 2 f 2 f 
 
 xz yz z 2 
Daca
  este o matrice pozitiv definita, atunci punctul Pa, b, c  este un punct de minim
local al lui f ,
  este o matrice negativ definita, atunci punctul Pa, b, c  este un punct de maxim
local al lui f ,

6
  nu este nici pozitiv nici negativ definita, atunci punctul Pa, b, c  nu este un
punct de extem;
   O3 nu putem lua nici o decizie asupra punctului Pa, b, c  .

Definitia 12.2. O matrice simetrica A  aij  1i, j  n este pozitiv (negativ) definita daca
forma sa patratica asociata este pozitiv (negativ) definita.
Definitia 12.3. Fie V un spatiu vectorial real.
a) Forma patratica f : V   este pozitiv definita (negativ definita) daca

 
f x  0 ( respectiv, f x  0 ),  x  V , x  0 ;

b) Forma patratica f : V   este nedefinita daca exista a, b  V astfel incat

 
f a  0 si f b  0 .

3. Să se determine extremele locale ale funcţiei

 
f x, y   x 2  y 2 e 2 x  3 y , x  0, y  0 .
Pasul 1. Determinăm punctele staţionare, adică soluţiile sistemului (12.1):
>>syms x y
>>f=(x^2+y^2)*exp(2*x+3*y);
>> u=diff(f,x);
>>v=diff(f,y);
>> [x,y]=solve(u,v,x,y)
x=
0
-4/13
y=
0
-6/13
>>a=x(1); b=y(1);
>>aa=x(2); bb=y(2);
Pasul 2. Pentru fiecare punct staţionar a, b  calculăm discriminantul din (12.2)
function [E,q]=local(a,b,u,v);
syms x y

7
uv=diff(u,y)^2;
uu=diff(u,x);
vv=diff(v,y);
p=subs(subs(uv,x,a),y,b);
q=subs(subs(uu,x,a),y,b);
r=subs(subs(vv,x,a),y,b);
E=p-q*r;
end
Se salvează fişierul cu local.m apoi în linia de commandă se scrie:
>> [E,q]=local(a,b,u,v)
E=
-4
q=
2
Aşadar, 0, 0 este punct de minim local, iar valoarea minimă a funcţiei este 0 şi se
obţine din comanda Matlab 7.0
>>subs(subs(f,x,0),y,0)
ans=
0

EXTREMELE CONDITIONATE ALE UNEI FUNCTII DE MAI MULTE VARIABILE


Definition 12.3. Un extrem conditionat al unei functii f x, y  este maxim sau minim
al acestei functii si indeplineste conditia  x, y   0 .
Propozitia 12.3 Pentru a determina extremul conditionat al functiei f x, y  , dandu-se
relatia  x, y   0 , construim functia Lagrange
F x, y,    f x, y      x, y  ,
(12.4)

unde  este multiplicator Lagrange si determinam extremul pe baza acestei functii auxiliare.
Observatie.Conditiile necesare pentru un punct de extrem se reduc la sistemul de
ecuatii:

8
 F f 
 x  x   x  0, (12.5)

 F f 
    0,
 y  y y
  x, y   0


cu trei necunoscute x, y,  .
Problema existenţei extremului conditionat se rezolva studiind semnul
discriminantului

 a, b,  2  F 2 a, b,    F 2 a, b,  


E  Fxy (12.6)
x y

al functiei Lagrange F x, y,   intr-un punct stationar a, b  .


Daca discriminantul E al functiei F x, y,   intr-un punct stationar este pozitiv,
atunci exista:
- un maxim conditionat al functiei f x, y  daca F 2 a, b,    0 (sau F  2 a, b,    0 )
x y

- un minim conditionat daca F 2 a, b,    0 (sau F  2 a, b,    0 ).


x y

Observatie. In mod similar se pot defini extremele conditionate ale unei functii de trei sau
mai multe variable.

4. Să se determine în Matlab extremele funcţiei următoare, dată cu condiţia specificată,


aplicând metoda multiplicatorilor lui Lagrange

f x, y, z   x  2 y  2 z , x 2  y 2  z 2  1 .
Pasul 1. Determinăm punctele staţionare, adică soluţiile sistemului
 Fx  x, y, z ,    0
 
 F y x, y , z ,    0

 Fz  x, y, z ,    0
 F   x, y , z ,    0
 


F x, y, z,    x  2 y  2 z   x 2  y 2  z 2  1 . 
function r=F(x,y,z,la)
r=x-2*y+2*z+la*(x^2+y^2+z^2-1);
end

9
>> syms x y z la
>> u=diff(F(x,y,z,la),x);
>> v=diff(F(x,y,z,la),y);
>> w=diff(F(x,y,z,la),z);
>> q=diff(F(x,y,z,la),la);
>> [xx,yy,zz]=solve(u,v,w,x,y,z);
g=subs(subs(subs(q,x,xx(1)),y,yy(1)),z,zz(1));
>> p=solve(g,la)
p=
-3/2
3/2
>> for i=1:2
xs(i)=subs(xx,la,p(i));
end
>> xs
xs =
[ 1/3, -1/3]
>> for i=1:2
ys(i)=subs(yy,la,p(i));
end
>> ys
ys =
[ -2/3, 2/3]
>> for i=1:2
zs(i)=subs(zz,la,p(i));
end
zs =
[ 2/3, -2/3]
1 2 2  1 2 2
Deci, există două puncte staţionare:  ,  ,  şi   , ,  .
3 3 3  3 3 3
Pasul 2. Pentru fiecare punct staţionar a, b, c  determinam elementele matricei A de
forma (12.3).
10
function [A]=local(x1,y1,z1,la1,u,v,w)
syms x y z
t11=subs(subs(subs(subs(diff(u,x),x,x1),y,y1),z,z1),la1);
t12=subs(subs(subs(subs(diff(u,y),x,x1),y,y1),z,z1),la1);
t13=subs(subs(subs(subs(diff(u,z),x,x1),y,y1),z,z1),la1);
t22=subs(subs(subs(subs(diff(v,y),x,x1),y,y1),z,z1),la1);
t23=subs(subs(subs(subs(diff(v,z),x,x1),y,y1),z,z1),la1);
t33=subs(subs(subs(subs(diff(w,z),x,x1),y,y1),z,z1),la1);
A=[t11 t12 t13 ;t12 t22 t23; t13 t23 t33];
end
>> [A]=local(xs(1),ys(1),zs(1),p(1),u,v,w)
A=
[-3, 0, 0]
[0, -3, 0]
[0, 0, -3]
1 2 2
Aşadar,  ,  ,  este punct de maxim local, iar valoarea maximă a funcţiei
3 3 3
F x, y, z,   este 3 şi se obţine din comanda Matlab 7.0
>> F(xs(1),ys(1),zs(1),p(1))
ans =
3
>> [A]=local(xs(2),ys(2),zs(2),p(2),u,v,w)
A=
[3, 0, 0]
[0, 3, 0]
[0, 0, 3]
 1 2 2
Rezultă că   , ,  este punct de minim local, iar valoarea minimă a funcţiei
 3 3 3
F x, y, z,   este -3 şi se obţine din comanda Matlab 7.0:

11
>> F(xs(2),ys(2),zs(2),p(2))
ans =
-3

Aplicaţii propuse

1. Se consideră vectorul x=[3.24 2 5 3 4.5 7 6.67 8.95 4.34 2.12] ce conţine rezultatele
obţinute prin N=10 determinări experimentale. Să se realizeze un fisier script în Matlab
pentru a calcula abaterea medie pătratică a acestor rezultate, folosind formula
2
N N 
N  xi2    xi 
sigma 
i 1  i 1  .
N N  1
2. Scrieţi un fisier “function” în Matlab pentru a reprezenta grafic funcţia
2 x  3, daca x   10, 2,
f x    2
2 x  1, daca x  2, 20.
3. Să se determine cu ajutorul Matlab-ului extremele locale ale funcţiei

f x, y   2 x 2  2 xy  5 y 2  6 x  6 y .
4. Să se determine în Matlab extremele funcţiei următoare, dată cu condiţia specificată,
aplicând metoda multiplicatorilor lui Lagrange

f x, y   6  4 x  3 y , x 2  y 2  1 .

12
Laborator 13. Funcții definite de utilizator în Matlab 7.0 – Partea a-II-a

Bibliografie
I. Iatan - “Îndrumător de laborator în Matlab 7.0”, Ed. Conspress, Bucureşti, 2009.

Aplicaţii rezolvate

APLICATII ALE INTEGRALELOR CURBILINII


Din punct de vedere mecanic, integrala curbilinie de speta a II-a poate fi interpretata ca
lucrul mecanic efectuat de o forta de-a lungul curbei de integrare.
Lucrul mecanic efectuat cand un corp in miscare, care se deplaseaza de-a lungul
arcului AB sub actiunea unei forte variabile

F x, y, z   Px, y, z i  Qx, y, z  j  Rx, y, z k


este
L   Px, y, z d x  Qx, y, z d y  Rx, y, z d z .
AB (13.1)
Cand arcul AB este de forma
 x  xt 
 AB  :  y  yt , t  a, b
 z  z t 

atunci
b
L   Pxt , yt , z t   xt   Qxt , yt , z t   y t   Rxt , yt , z t   z t d t . (13.2)
a
1. Realizati un fisier script in Matlab 7.0 care sa calculeze lucrul mecanic efectuat de forta

  
F x, y   x 2  2 xy i  2 xy  y 2 j 
de-a lungul arcului de parabola AB : y  x 2 , care uneste punctele A1,1 si B2, 4 .
Etapa I. Secventa Matlab urmatoare permite reprezentarea arcului AB .
>> x=-4:.1:4;
>> y=x.^2;
>> plot(x,y,1,1,'or',2,4,'or')
1
16

14

12

10

B(2,4)
4

2 A(1,1)

0
-4 -3 -2 -1 0 1 2 3 4

Etapa II. Se construiesc in Matlab 7.0 functiile P.m si respectiv Q.m, care reprezinta
componentele fortei.
function r=P(x,y)
r=x^2-2*x*y;
end

function r=Q(x,y)
r=2*x*y+y^2;
end
Etapa III. Se selectează succesiv File->New->M-file şi se scriu următoarele instructiuni:
syms x y t
x=t;
y=t^2;
xt=diff(x,t);
yt=diff(y,t);
int(P(x,y)*xt+Q(x,y)*yt,1,2)
Etapa IV. Se salvează fişierul cu lm.m apoi în linia de comanda se scrie:
>> lm
ans =
1219/30

2
Aria unei suprafete plane marginita de o curba C poate fi calculata folosind una din
urmatoarele formule:
   xd y ,
C (13.3)

    yd x,
C (13.4)

1
  xd y  yd x, (13.5)
2C

(sensul de parcurgere al conturului este sensul arcelor de ceas).


2. Scrieţi un fişier script în Matlab 7.0 care sa calculeze aria cardiodei
x  2a cos t  a cos 2t
C  :  , t  0, 2  .
 y  2a sin t  a sin 2t
Etapa I. Se selectează succesiv File->New->M-file şi se scriu următoarele instructiuni:
syms a t
x=2*a*cos(t)-a*cos(2*t);
y=2*a*sin(t)-a*sin(2*t);
xt=diff(x,t);
yt=diff(y,t);
int(x*yt,0,2*pi)
Etapa II. Se salvează fişierul cu aria.m apoi în linia de comanda se scrie:
>>aria
ans =
6*a^2*pi

APLICATII ALE INTEGRALEI DUBLE

Masa unei placi plane, de forma unui domeniu D si densitatea x, y  :


MD     x, y  d x d y .
D (13.6)

3. Construiti o functie in Matlab, cu ajutorul careia sa se calculeze masa corespunzatoare


unei placi plane, avand forma domeniului


D  x, y   2 | x 2  y 2  4, 3 y  x 2 
si densitatea

3
 x, y   y .
Etapa I. Secventa Matlab urmatoare permite reprezentarea domeniului D .
>> x=-2:.1:2;
>> y=sqrt(4-x.^2);
>> y1=-sqrt(4-x.^2);
>> y2=x.^2/3;
>> plot(x,y,'b',x,y1,'b',x,y2,'r')

2
D

1.5

A B
1

0.5

0
y

-0.5

-1

-1.5

-2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
x

>> [x,y]=solve('x^2+y^2=4','3*y=x^2')
x=
3^(1/2)
-3^(1/2)
2*i*3^(1/2)
-2*i*3^(1/2)
y=
1
1
-4
-4
Se poate observa ca

4

 x2 

D  x, y    2 |  3  x  3,  y  4  x2  .

 3 

Etapa II. Se defineste functia densitate in fisierul ro.m:
function r=ro(x,y)
r=y;
end
Etapa III. Se selectează succesiv File->New->M-file şi se scriu următoarele instructiuni:
function r=masa(x,y)
r=int(int(ro(x,y),y,x^2/3,sqrt(4-x^2)),x,-sqrt(3),sqrt(3))
end
Etapa IV. Se salvează fişierul cu masa.m apoi în linia de comanda se scrie:
>>syms x y
>> M=masa(x,y)
M=
14/5*3^(1/2)
Momentele de inertie in raport cu axele de coordonate O x si O y pentru o placa

plana, de forma domeniului D si avand densitatea x, y  sunt respectiv:

 x    y 2  x, y d x d y
D
(13.7)

 y    x 2  x, y d x d y .
D
(13.8)

4. Calculati cu ajutorul unui fisier de tip function realizat in Matlab 7.0, momentele de
inertie in raport cu axele de coordonate pentru o placa de forma domeniului:
 
D  x, y  2 | x  y  1, x  0, y  0
daca densitatea sa este:
x, y   xy .
Etapa I. Secventa Matlab urmatoare permite reprezentarea domeniului D .
>> x=0:.2:1;
>> y=1-x;
>> plot(x,y,1,0,'or',0,1,'or')

5
B(0,1)
1

0.9

0.8

0.7

0.6

0.5
y

D
0.4

0.3

0.2

0.1
A(1,0)
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
x

Etapa II. Se defineste functia densitate in fisierul ro.m:


function r=ro(x,y)
r=x*y;
end
Etapa III. Se selectează succesiv File->New->M-file şi se scriu următoarele instructiuni:
function [u,v]=momente(x,y)
u=int(int(y^2*ro(x,y),x,0,1-y),y,0,1);
v=int(int(x^2*ro(x,y),y,0,1-x),x,0,1);
end
Etapa IV. Se salvează fişierul cu momente.m apoi în linia de comanda se scrie:
>>syms x y
>> [Ix,Iy]=momente(x,y)
Ix =
1/120
Iy =
1/120

SCHIMBAREA DE VARIABILE IN COORDONATE POLARE GENERALIZATE IN INTEGRALA DUBLA

Utilizand schimbarea de variabile in coordonate polare generalizate:


 x  a cos 
 ,   0,   0, 2 , (8.1)
 y  b sin 

6
rezulta

D f x, y d x d y  D f a cos , b sin   J d  d  ,


(8.2)
unde
Dx, y 
J  ab
D, 
este determinantul functional (Jacobian-ul) functiilor x si y .

5. Folosind schimbarea de variabile in coordonate polare generalizate, calculati in Matlab


integrala dubla:

x2 y2
D 2   d xd y ,
a2 b2
unde

x2 y2
  1, x  0, y  0 .
a2 b2
Etapa I. Se defineste in Matlab functia integrant; se salveaza cu numele f.m.
function r=f(x,y,a,b)
r=sqrt(2-x^2/a^2-y^2/b^2);
end
Etapa II. Se defineste in Matlab functia ce realizeaza schimbarea de variabile in coordonate
polare generalizate; se salveaza cu numele polarg.m.
function [x,y]=polarg(a,b,rho,th)
x=a*rho*cos(th);
y=b*rho*sin(th);
end
Etapa III. Se calculeaza valoarea integralei in lina de comanda.
>> syms a b rho th
>> [x,y]=polarg(a,b,rho,th);
>>I=simple(int(int(a*b*rho*f(x,y,a,b),rho,0,1),th,0,pi/2))
I=
1/6*a*b*pi*(-1+2*2^(1/2))

7
APLICATII ALE INTEGRALE TRIPLE

Masa unui solid ce ocupa o regiune V , avand densitatea x, y, z  in punctul x, y, z 
este
M  V x, y, z d x d y d z .
(13.9)
Observatie. In cazul cand domeniul V este de forma:
V  x, y, z  | x, y  D, 1x, y   z  2 x, y ,
x, y  D semnifica ca punctul x, y  apartine regiunii D din planul O xy , adica
D  prV xoy .
In acest caz, integrala tripla se calculeaza astfel:
  2  x, y  
 
V f x, y, z d x d y d z  D   f x, y, z d z  d x d y .
(13.10)
 1 x, y  
6. Calculati in Matlab masa unui corp solid, de forma tetraedrului din primul octant, marginit
de planele x  y  z  1 , x  0 , y  0 , z  0 , stiind ca densitatea sa este  x, y, z   xy .
Etapa I. Secventa Matlab urmatoare permite reprezentarea corpului.
>> x=[1 0 0 0 1 0]; y=[0 0 1 0 0 1]; z=[0 0 0 1 0 0];
>> plot3(x,y,z,1,0,0,'ob',0,1,0,'ob',0,0,1,'ob',0,0,0,'ob')

0.8

0.6
C(0,0,1)
z

0.4

0.2

0 B(0,1,0)
1
0.8 A(1,0,0)
0.6
1
0.4 0.8
O(0,0,0) 0.6
0.2 0.4
0.2
y 0 0
x

8
Se poate observa

 
V  x, y, z  3 | 0  z  1  x  y, x, y  D ,

(deoarece z este marginit de planele xOy : z  0 si respectiv  ABC : z 1  x  y ),


unde

 
D  prV xOy  x, y   2 | 0  x  1, 0  y  1  x  AOB
De aceea,

1 x  y  1 1 x 1 x  y  


M   D   xy d z  d x d y       xy d z  d y  d x , (13.11)
     
 0  0 0  0  

Etapa II.Se construieste script-ul mass.m avand urmatorul continut:

syms x y z

m=int(int(int(x*y,z,0,1-x-y),y,0,1-x),x,0,1)

Etapa III. Se executa script-ul in linia de comanda, scriind:

>>mass

m=

1/120

Coordonatele centrului de greutate ale unui corp solid, de forma unui domeniu
V este punctul GxG , yG , zG  , unde:

 V x x, y, z d x d y d z
 xG  (13.12)
 V x, y, z d x d y d z

 V y x, y, z d x d y d z
 yG 
 V  x, y, z d x d y d z
 z x , y , z  d x d y d z
 zG  V .
 V  x, y, z d x d y d z

Daca solidul este omogen, atunci in relatia (13.12) se seteaza x, y, z   1 .


7. Determinati cu ajutorul unui fisier Matlab coordonatele centrului de greutate ale unui corp
omogen, limitat de suprafetele:

9
y 2  2z 2  4x
si
x  2.
Etapa I. Secventa Matlab urmatoare permite reprezentarea corpului omogen.
>> [y,z]=meshgrid(-3:.03:3,-2.5:.03:2.5);
>> x=y.^2/4+z.^2/2;
>> [m,n]=size(x);
>> x1=2*ones(m,n);
>> plot3(x,y,z,x1,y,z)

0
z

-1

-2

-3
5

0 6
5
4
3
2
y -5 1
0
x

Se observa ca:

 y 2  2z 2 

V  x, y, z   3 |  x  2,  y, z   D ,

 4 

unde

  

D   y, z    2 | y 2  2 z 2  8  D   y, z    2 |

y2 z2
8

4


 1 .

 
Etapa II. Se calculeaza integrala

10
 
   y 2  2 z 2 
2 (13.13)
I1  V d x d y d z  D   d x  d y d z  D  2  
d yd z ,
 2    4 
  y  2z  4 
2
  

folosind schimbarea de variabile in coordonate polare generalizate:


 y  2 2 cos 
 ,   0,1,   0, 2 .
 z  2 sin 
a) Se defineste in Matlab functia integrant; se salveaza cu numele f.m.
function r=f(x,y,a,b)
r=2-(x^2+2*y^2)/4;
end
b) Se defineste in Matlab functia ce realizeaza schimbarea de variabile in coordonate polare
generalizate (vezi functia polarg.m din ex 5).
c) Se calculeaza valoarea integralei in lina de comanda.
>> a=2*sqrt(2);b=2;
>> syms rho th
>> [y,z]=polarg(a,b,rho,th);
>> I1=int(int(a*b*rho*f(y,z,a,b),rho,0,1),th,0,2*pi)
I1=
4*pi*2^(1/2)
Etapa III. Se calculeaza integrala
 
    2 (13.14)
 2   2 2 
1  y 2 z  d yd z
I 2  V x d x d y d z  D   x d x  d y d z  D 4    
 y 2  2z 2  2
 
4
 
 
 4 
Se proceadeaza similar precum la Etapa II; se modifica doar functia f.
function r=f(x,y,a,b)
r=4-((x^2+2*y^2)/4)^2;
end
>> I2=int(int(a*b*rho*f(y,z,a,b),rho,0,1),th,0,2*pi)/2
I2 =
16/3*pi*2^(1/2)
11
Etapa IV. Se calculeaza integrala
 
 2   y 2  2 z 2 
(13.15)
I 3  V y d x d y d z  D   d x  y d y d z  
D  2  yd yd z
 2  4 
  y  2 z 2  4   
  

Se proceadeaza similar precum la Etapa II; se modifica doar functia f.


function r=f(x,y,a,b)
r=(2-(x^2+2*y^2)/4)*x;
end
>> I3=int(int(a*b*rho*f(y,z,a,b),rho,0,1),th,0,2*pi)
I3 =
0
Etapa V. Se calculeaza integrala
 
 2   y 2  2 z 2 
(13.16)
I 4  V z d x d y d z  D   d x  z d y d z  
D  2  zd yd z .
 2  4 
  y  2 z 2  4   
  

Se proceadeaza similar precum la Etapa II; se modifica doar functia f.


function r=f(x,y,a,b)
r=(2-(x^2+2*y^2)/4)*y;
end
>> I4=int(int(a*b*rho*f(y,z,a,b),rho,0,1),th,0,2*pi)
I4 =
0
Etapa VI. Se calculeaza xG .
>> xg=I2/I1
xg =
4/3
Etapa VII. Se calculeaza yG .
>> yg=I3/I1
yg =

12
0
Etapa VIII. Se calculeaza zG .
>> zg=I4/I1
zg =
0

Aplicaţii propuse

1. Realizati un script in Matlab prin intermediul caruia sa calculati aria si coordonatele


centrului de greutate corespunzatoare unei placi plane omogene, de forma domeniului
limitat de curba y  sin x si dreapta OA , care trece prin origine si prin punctul

 
A , 1 din primul cadran.
2 
2. Folosind schimbarea de variabile in coordonate polare, calculati prin intermediul unui
functii Matlab construite de dvs. integrala dubla urmatoare:

ln x 2  y 2
D x 2  y 2 d x d y ,
 
unde D : 1  x 2  y 2  e 2 ;
3. Construiti un script Matlab pentru a calcula valoarea integralei triple:
11 1 1
I  d xd yd z .
00 0 x  y  z  1

4. Determinati cu ajutorul unui fisier realizat in Matlab, masa unui corp de forma
cubului:
0  x  1

0  y  1
0  z  1

daca densitatea sa in punctul M x, y, z  este
x, y, z   xyz.

13
14

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