Sunteți pe pagina 1din 9

Operaiile aritmetice cu tablouri

Operaiile cu tablouri sunt operaii aritmetice (nmulire, mprire, ridicare la putere,


etc.) ntre elementele situate n aceeai poziie a tablourilor, cunoscute sub numele de
operaii element cu element.
Pentru efectuarea operaiilor cu tablouri se folosesc aceiai operatori ca n operaiile cu
scalari, precedai de semnul punct ., semn ce indic efectuarea operaiilor n ordinea
element cu element. Pentru a putea fi efectuate operaii element cu element, trebuie ca
dimensiunile tablourilor cu care se opereaz s fie identice. Dac unul dintre operanzi
este un scalar, acesta opereaz cu fiecare element al tabloului.

1.1 Adunarea i scderea


n cazul operaiilor de adunare i scdere, operatorul nu va mai fi precedat de punct.
Exemplu:
Fie: A = [2 2 5;1 4 7], B = [3 4 1;2 5 3], p = 2
S se calculeze: C = A + B, D = B - A, E = p - A, F = B - p, G =p + A

Secvena MATLAB va fi:


A = [2 2 5;1 4 7];
B=[3 4 1;2 5 3]; p=2;
C=A+B
D=B-AE=p-AF=B-pG=p+A

Rezultatul returnat va fi:


C=5 6 6 3 9 10
D=1 2 -4 1 1 -4
E=0 0 -3 1 -2 -5
F=1 2 -1 0 3 1
G=4 4 7 3 6 9

1.2 nmulirea tablourilor


Pentru a preciza c nmulirea se efectueaz element cu element, ntre componentele a
dou matrici de aceleai dimensiuni, se utilizeaz operatorul de nmulire precedat de
punct (.*)

Instruciunea este de forma: C = A .* B


Exemplu: Fie A = [1 3 2], B = [3 4 6] , p = 3.
S se calculeze, folosind calculul element cu element, nmulirea matricelor A i B,
nmulirea scalarului p cu matricea A i nmulirea matricei B cu scalarul p.
Secvena MATLAB va fi: A = [1 3 2] ; B = [3 4 6] ; p = 3;
Rezultatul returnat va fi:
C = [3 12 12]
D = [3 9 6]
E = [9 12 18]
1.3 mprirea la dreapta
Operaia de mprire la dreapta, element cu element, ntre dou tablouri este
simbolizat cu operatorul punctslash (./). Instruciunea este de forma: C = A ./ B
i reprezint mprirea la dreapta, element cu element, a tablourilor A i B, cu aceleai
dimensiuni, rezultnd elementele: C (i,j) = A(i,j) / B(i,j)

1.4 mprirea la stnga


Operaia de mprire la stnga, element cu element, ntre dou tablouri este
simbolizat cu operatorul punctbackslash (.\).
Instruciunea este de forma: C = A.\B
i reprezint mprirea la stnga, element cu element, a tablourilor A i B, cu aceleai
dimensiuni, rezultnd un tablou cu elementele: C(i,j)=A(i,j)\B(i,j)=B(i,j)/A(i,j)
Prin urmare: C = A .\ B = B ./ A

1.5 Ridicarea la putere


Operaia de ridicare la putere, element cu element, ntr-un tablou este simbolizat cu
operatorul punct-^ (.^).
Instruciune este de forma: C = A.^B i reprezint ridicarea fiecrui element din tabloul
A la puterea indicat de valoarea elementului din aceeai poziie a tabloului B, adic:
C(i,j)=A(i,j)^B(i,j) Dac A e un scalar, se las un blanc ntre scalar i operatorul de
ridicare la putere.

1.6 Transpunerea tablourilor


Operaia de transpunere a unui tablou este simbolizat de operatorul punct-apostrof.
Instruciunea este de forma: B=A.' i liniile tabloului A vor deveni coloanele tabloului
transpus B. Acest lucru face ca un tablou A , cu dimensiunea m n , s devin un tablou
B cu dimensiunea n m .
2. Operaii aritmetice cu matrici
Operaiile uzuale de algebr liniar cu matrici sunt simbolizate cu semnele grafice:
*,/,\,^,, i se efectueaz dup regulile cunoscute din calculul matricial.
2.1 Adunarea i scderea
Operaia de adunare a dou matrici este simbolizat cu operatorul plus (+).
Instruciunea este de forma: C = A + B i reprezint adunarea matricilor A i B, rezultnd
elementele: C(i,j) = A(i,j) + B(i,j)
Matricile A i B trebuie s aib aceleai dimensiuni, n afara cazului cnd A sau B este un
scalar ( care va fi notat cu a sau b). Un scalar poate fi adunat cu orice matrice,
rezultnd elementele:
C(i,j) = a+ B(i,j) Sau C(i,j) = A(i,j) + b
Operaia de scdere a dou matrici este simbolizat cu operatorul minus (-).
Instruciunea este de forma: C = A B i reprezint scderea matricei B din matricea A,
rezultnd elementele: C(i,j) = A(i,j) - B(i,j)

Matricile A i B trebuie s aib aceleai dimensiuni, n afara cazului cnd A sau B este un
scalar. Un scalar poate opera cu orice matrice, rezultnd elementele:
C(i,j) = a - B(i,j) sau C(i,j) = A(i,j) - b
2.2 nmulirea matricilor
Operaia de nmulire a dou matrici este simbolizat cu operatorul stelu (*).
Instruciunea este de forma: C = A * B i reprezint matricea produs a celor dou matrici
avnd elementele:
C (i , j ) = A(i , k )B (k , j )
Produsul matricial este posibil dac numrul coloanelor matricei A este egal cu numrul
liniilor matricei B, elementul C(i,j) fiind suma produselor dintre elementele liniei i (din
matricea A) cu elementele corespondente din coloana j (a matricei B).
Produsul matrice-vector este un caz special al cazului general al produsului matricematrice. De asemenea, un scalar poate fi nmulit cu orice matrice, realizndu-se
nmulirea cu fiecare element al matricei: C(i,j) = a*B(i,j)
2.3 mprirea la dreapta
Operaia de mprire la dreapta a dou matrici este simbolizat cu operatorul slash (/).

Instruciunea este de forma: C = A / B i reprezint mprirea la dreapta a matricilor A i


B i este identic cu A*B-1 (B-1 este inversa matricei B).

2.4 mprirea la stnga


Operaia de mprire la stnga a dou matrici este simbolizat cu operatorul backslash
(\).
Instruciunea este de forma: C = A \ B i reprezint mprirea la stnga a matricelor A i
B i este identic cu A-1*B (A-1 este inversa matricei A).
2.5 Ridicarea la putere
Operaia de ridicare la putere a unei matrici este simbolizat cu operatorul (^).
Instruciunea este de forma: C = A^b i reprezint ridicarea la puterea b a matricei A.
Expresia A^b are sens doar pentru A matrice ptrat i b scalar.
Dac b este un numr ntreg pozitiv , ridicarea la puterea b este obinut prin nmulirea
repetat (de b ori) a matricei A.
C=A^b=A*A*A*A.....*A

, pentru orice b ntreg i pozitiv.

Dac b este un numr ntreg negativ, atunci matricea A va fi mai nti inversat i apoi
inversele se nmulesc de b ori: C=A^b=inv(A)*inv(A)*inv(A)*...*inv(A) , pentru orice b
ntreg i negativ.
2.6 Transpunerea matricilor
Operaia de transpunere a unei matrici este simbolizat cu operatorul apostrof.
Instruciunea este de forma: B=A' i astfel liniile matricei A devin coloanele matricei
transpuse B. Acest lucru face ca pentru o matrice A cu dimensiunea m n s se obin o
matrice B cu dimensiunea n m . Dac elementele matricei A sunt numere reale,
operaia de transpunere face ca: B(i,j)=A(j,i)
Dac elementele matricei A sunt numere complexe, operaia de transpunere returneaz
conjugata transpusei, adic B(i,j)=conj(A(j,i) )=real(A(j,i))-i imag(A(j,i)

Reprezentri grafice
Reprezentarea curbelor n plan se face cu funciile din Tabelul 1:

Funcia

Tipul graficului

plot

scar liniar pe ambele axe

loglog

scar logaritmic pe ambele axe

semilogx

scar logaritmic pe axa x

semilogy

scar logaritmic pe axa y

polar

coordinate polare

stem

grafic cu linii terminate cu cercuri

stairs

grafic n scar

bar

grafic cu bare

Tabelul 1. Funcii pentru reprezentarea curbelor plane.


Funciile au ca parametri perechi de vectori x1, y1, , xn, yn. Vectorii x1, x2, ..., xn
conin abscisele curbelor, iar vectorii y1, y2, ..., yn conin ordonatele curbelor. Forma
funciei plot este
plot(x1, y1, , xn, yn)
Proprietile liniilor cu care se traseaz graficele sunt : culoarea (graficele pot fi trasate
cu diverse culori), stilul (continu, etc.) i simbolurile de marcaj (punctele de pe grafic
pot fi marcate cu diverse simboluri). Aceste trei proprieti (culoare, simbol de marcaj i
stilul liniei) se specific utiliznd simbolurile din Tabelul 2 printr-un ir de caractere, cte
unul pentru fiecare proprietate.

Culoare

Simbol

Marker

Simbol

Stil linie

Simbol

albastru

punct

continu

verde

cerc

punctat

rou

ntrerupt

--

mov

plus

roz

asterisc

galben

ptrat

negru

Tabelul 2. Culori, tipuri de linii i de puncte pentru grafice.


Pentru a utiliza o anumit culoare, tip de linie sau simbol la curba (xi, yi), perechea de
vectori xi, yi este urmat de un ir de caractere din tabelul de mai sus de forma cml ce
precizeaz culoarea, markerul i simbolul cu care se traseaz curba. De exemplu, funcia
plot(x, y, 'b')
traseaz curba (x, y) cu culoarea albastru.
Reprezentarea curbelor n mai multe ferestre se face cu instruciunea
subplot(m, n, p)
Aceast instruciune mparte ecranul ntr-o matrice de m*n ferestre i traseaz axele n
fereastra p, unde p = 1, ..., m * n. Instruciunea plot urmtoare reprezint curba n
fereastra p.
Funcia xlabel(sir) scrie eticheta axei x (un text sub axa x).
Funcia ylabel(sir) scrie eticheta axei y (un text dealungul axei y). Funcia title(sir)
scrie un text ca titlu al figurii.

Instruciunile precedente pot avea i ali parametrii, care s modifice tipul, dimensiunea,
stilul sau culoarea fontului. Un parametru util este FontSize ce d dimensiunea fontului.
De exemplu, funcia xlabel('sir', 'FontSize', 14) scrie eticheta axei x cu dimensiunea
fontului 14.
Afiarea unei legende pentru cele n curbe dintr-o figur se face cu instruciunile
legend(sir1, sir2, ..., sirn)
sau
legend(sir1, sir2, ..., sirn, pos)
Prima instruciune scrie legenda n colul dreapta sus. A doua instruciune scrie
legendele n poziia specificat de argumentul pos, ce are valorile din .
pos

Poziia

cea mai bun poziie

colul dreapta-sus

colul stnga-sus

colul stnga-jos

colul dreatpa-jos

-1

n afara graficului

Tabelul 3. Specificarea poziiei legendei.


Legenda arat tipul, markerul i culoarea folosite pentru a reprezenta curba, plus textul
specificat.
Menionm c, figura, aria de desenare, curba, etichetele axelor, etc., sunt obiecte
grafice cu proprieti, create de funciile plot, xlabel, ylabel, etc. Toate funciile grafice
au ca rezultat un handle al obiectului grafic creat, curb, eticheta axei, legenda, titlul,
etc. Acest handle poate fi memorat ntr-o variabil i poate fi utilizat pentru a obine sau
prescrie proprieti ale obiectului grafic.
De exemplu, pentru a afia legenda la figuri unde s-a utilizat instruciunea subplot, se
utilizeaz variabila handle a instruciunii plot ca mai jos
h = plot(t, x)
legend(h, sir)
Funcia grid traseaz o gril pe figur.
Limitele axelor se pot specifica cu instruciunea axis(xmin, xmax, ymin, ymax)
Selectarea automat a axelor se face cu instruciunea axis auto

Grafice de functii:

1.Cercul
t=0:2*pi;
x0=0;
y0=0;
x=x0+r*cos(t);
y=y0+r*sin(t);
plot(x,y,'b', 'LineWidth',4)
2.Elipsa
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)
3. Reprezentari 3D -plot3- conul
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)
4.Surf
z=(x.^2-y.^2).*exp(-x.^2-y.^2);
surf(z)

5. Elipsoidul
>> ellipsoid(3,-2,1,9,4,1)
6.Sfera
p=0:100;
teta=0:pi;

fi=0:2*pi;
x=p*sin(teta)*cos(fi);

y=p*sin(teta)*sin(fi);
z=p*cos(teta);
surf(x,y,z)

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