capitolul 3. reprezentări grafice 2d în matlabiulianaiatan.synthasite.com/resources/cap3.pdf ·...

91
REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB 1 Capitolul 3. Reprezentări grafice 2D în Matlab Una dintre facilitățile importante ale MATLAB-ului consîn abilitatea sa de a fi utilizat într-o manieră simplă la vizualizarea datelor experimentele. MATLAB oferă numeroase facilităţi pentru prezentarea vizuală a datelor atât în mod interactiv, apelând la instrumente de editare dedicate, cu interfaţă grafică pentru utilizator, cât şi cu ajutorul funcţiilor specializate, apelate direct în fereastra de comenzi sau introduse în fişiere script (M-file). Întregul sistem MATLAB se bazează pe operarea cu uşurinţă a datelor în format vectorial, la fel de simplu ca şi în cazul scalarilor. În din linia de comandă din Matlab 7.9 se pot tasta: help graphics: pentru instrucțiuni grafice generale; help graph2d: pentru instrucțiuni asociate graficelor 2D; help graph3d: pentru instrucțiuni asociate graficelor 3D; demo matlab graphics: pentru mai multe exemple. În general, pentru a realiza o reprezentare grafică, trebuie parcurse etapele următoare: Etapa Instrucțiuni 1.Pregătirea datelor x = 0:0.2:12; y1 = bessel(1,x); y2 = bessel(2,x); y3 = bessel(3,x); 2. Selectarea ferestrei grafice și poziționarea graficului în fereastră figure(1) subplot(2,2,1) 3. Apelarea unei funcții elementare de plotare h = plot(x,y1,x,y2,x,y3); 4. Selectarea caracteristicilor liniei set(h,'LineWidth',2,,) set(h,,)

Upload: dothu

Post on 09-Dec-2018

254 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

1

Capitolul 3. Reprezentări grafice 2D în Matlab

Una dintre facilitățile importante ale MATLAB-ului constă în abilitatea sa de a fi

utilizat într-o manieră simplă la vizualizarea datelor experimentele.

MATLAB oferă numeroase facilităţi pentru prezentarea vizuală a datelor atât în mod

interactiv, apelând la instrumente de editare dedicate, cu interfaţă grafică pentru utilizator, cât

şi cu ajutorul funcţiilor specializate, apelate direct în fereastra de comenzi sau introduse în

fişiere script (M-file).

Întregul sistem MATLAB se bazează pe operarea cu uşurinţă a datelor în format

vectorial, la fel de simplu ca şi în cazul scalarilor.

În din linia de comandă din Matlab 7.9 se pot tasta:

help graphics: pentru instrucțiuni grafice generale;

help graph2d: pentru instrucțiuni asociate graficelor 2D;

help graph3d: pentru instrucțiuni asociate graficelor 3D;

demo matlab graphics: pentru mai multe exemple.

În general, pentru a realiza o reprezentare grafică, trebuie parcurse etapele următoare:

Etapa Instrucțiuni

1.Pregătirea datelor x = 0:0.2:12;

y1 = bessel(1,x);

y2 = bessel(2,x);

y3 = bessel(3,x);

2. Selectarea ferestrei

grafice și poziționarea

graficului în fereastră

figure(1)

subplot(2,2,1)

3. Apelarea unei

funcții elementare de

plotare

h = plot(x,y1,x,y2,x,y3);

4. Selectarea

caracteristicilor liniei

set(h,'LineWidth',2,,)

set(h,,)

Page 2: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

2

și markerului.

5. Setarea limitelor

axelor, gridare

(caroiere)

axis([0 12 -0.5 1])

grid on

6. Completarea

graficului cu etichete

pe axe, legenda, text

xlabel('Time')

ylabel('Amplitude')

legend(h,'First','Second','Third')

title('Bessel Functions')

[y,ix] = min(y1);

text(x(ix),y,'First Min rightarrow',

'HorizontalAlignment','right')

7. Export grafice print -depsc -tiff -r200 myplot

Reprezentarea curbelor în plan se face cu funcţiile din Error! Reference source not

found. 3.1:

Tabelul 3. 1. Funcţii pentru reprezentarea curbelor plane.

Funcţia Tipul graficului

plot scară liniară pe ambele axe

loglog scară logaritmică pe ambele axe

semilogx scară logaritmică pe axa Ox

semilogy scară logaritmică pe axa Oy

plotyy

reprezintă două grafice în aceeași fereastră figură: unul cu

axa Oy afișată în stânga, iar celălalt cu axa Oy afișată în

dreapta. Este o funcție disponibilă începând cu versiunea

Matlab 5

fill reprezintă grafic poligoane

polar reprezentare grafică în coordonate polare

stem grafic cu linii terminate cu cercuri

stairs grafic în scară

bar grafic cu bare

barh reprezentare cu bare orizontale

area reprezentare cu arii

Funcţiile au în general ca parametri, perechile de vectori .,,,, 11 nn yxyx

Page 3: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

3

Vectorii nxx ,,1 conţin abscisele curbelor, iar vectorii nyy ,,1 conţin ordonatele

curbelor.

3.1. Reprezentarea grafică în coordonate carteziene

Cel mai simplu obiect geometric din plan este punctul. Poziția unui punct în plan poate fi

specificată atât într-un sistem de coordonate cartezian cât și în sistemul de coordonate polare.

Sistemul de coordonate carteziene este definit de reperul xOy din plan, constituit din

punctul O numit origine si perechea de axe ortogonale OyOx, , cu originea O comună.

Reperul este folosit pentru a determina în mod unic un punct M în plan prin perechea de

numere 00 , yx , 0x fiind abscisa iar 0y ordonata punctului M .

Pentru a defini aceste coordonate, se specifică două drepte perpendiculare și unitatea

de lungime, care este marcată pe cele două axe.

00 , yxM

y

x

0x

0y

Figura 3. 1. Sistemul de coordonate carteziene

Reprezentarea datelor în coordonate carteziene este realizată utilizând funcţia plot.

Această funcție permite reprezentarea grafică a datelor în coordonate liniare și are

diferite forme de utilizare în funcție de argumentele de intrare. După apelul funcției, sunt

create unul saumai multe obiecte grafice de tip line care sunt copii ai unui obiect grafic de tip

axes. Dacă acesta din urmă nu există, este creat în mod automat.

Funcţia plot are diverse forme, în funcţie de argumentele care se furnizează:

plot(y): rezultă un grafic, liniar pe porţiuni, al elementelor lui

y, în funcţie de index-ul elementelor lui y. Se

consideră pe abscisă indicii elementelor vectorului y și

pe ordonată valorile elementelor;

Page 4: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

4

Observația 3. 1.

(i) dacă argumentul y este complex, atunci plot(y) este echivalent cu:

plot(real(y), imag(y));

Exemplul 3. 1. Să se reprezinte grafic numărul complex:

y=[1+i 2+1.4142i 3+1.7321i 4+2i 5+2.2361i 6+2.4495i 7+2.6458i 8+2.8284i 9+3i

10+3.1623i];

Figura 3. 2. Reprezentarea grafică a numărului complex y

(ii) dacă y este vector (linie sau coloană), funcția plot trasează graficul:

y = y(i),

unde indexul ni ,1 este numărul de ordine al elementului y;

(iii) dacă y este o matrice de m x n, funcția plot trasează graficele:

yj = yj(i)

unde ni ,1 este numărul de ordine al elementului yj de pe coloana j, cu ;,1 mj

plot(x,y): reprezintă grafic datele experimentale conținute în

vectorii x și y, adică se reprezintă grafic elementele

vectorului y în raport cu cele ale vectorului x;

Observația 3. 2.

(i) dacă x este un scalar și y un vector, de lungime n=length(y), se trasează un

număr n de puncte discontinui pe axa y, în dreptul valorii x;

Exemplul 3. 2. Reprezentaţi grafic scalarul x=1 şi vectorul y, ce are drept componente

numerele de la 1 la 10.

Page 5: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

5

Figura 3. 3. Graficul corespunzător cazului când y vector şi x scalar

(ii) dacă x este un vector și y un alt vector, atunci lungimea celor doi vectori trebuie

să fie aceeași, n=length(x)=length(y) și se trasează graficul variației continue a

lui y funcție de x;

Exemplul 3. 3. Reprezentaţi grafic funcţia

.10,1,25.1 xxxy

Figura 3. 4. Variaţia lui y vector functie de x vector

Page 6: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

6

Exemplul 3. 4. Reprezentaţi grafic funcţia

.05.0,5,0,sin 2 hxxxy

Figura 3. 5. Variatia lui y vector functie de x vector

Exemplul 3. 5. Să se traseze în coordonate x-y evoluţia:

t 0 1 2 3 4 5 6 7 8 9 10 11 12

y 0 0.55 1 2 4 7.2 11 14 15.1 16 16 16 16

Figura 3. 6. Evoluţia semnalului

Page 7: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

7

(iii)dacă x este un vector și y o matrice, atunci nl=length(x) trebuie să fie egal cu m

din [n,m]=size(y), și se trasează graficul variației continue a fiecărei coloane a lui

y funcție de x, ca în Fig. 3.5;

Exemplul 3. 6. Reprezentaţi grafic funcţia vectorială

.10,1,25.1 xxxxy

Figura 3. 7. Variația lui y matrice funcție de x vector

(iv) dacă x și y sunt matrice, de aceeași dimensiune (size(x)=size(y)), se reprezintă

coloanele lui y funcție de coloanele lui x.

Exemplul 3. 7. Să se reprezinte grafic datele conţinute în matricele:

.

17.4767

2.37845.6569

3.94823.9482

5.65692.3784

7.47671

,

55

44

33

22

11

yx

Page 8: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

8

Figura 3. 8. Variaţia lui y matrice funcție de x matrice

plot(x,y,s):

reprezintă grafic tablourile de numere x şi y, în funcţie

de specificaţiile din şirul de caractere s, ce poate avea

lungimea 1, 2 sau 3 şi este folosit special pentru

facilităţile de formatare a graficului: selectarea culorii

(roşu, galben, albastru, negru etc.), selectarea tipului

marcajului (punct, cerc, stea, pătrat etc.), selectarea

tipului de linie (solidă, punctată etc.);

Observația 3. 3. Proprietăţile 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 proprietăţi (culoare,

simbol de marcaj şi stilul liniei) se specifică utilizând simbolurile din Error! Reference

source not found.ele 3.2-3.4 printr-un şir de caractere, câte unul pentru fiecare proprietate.

Vom lista codurile corespunzătoare fiecărui simbol de marker, fiecărei culori şi

fiecărui stil de linie folosite într-o reprezentarea grafică 2D:

Tabelul 3. 2. Simboluri de markere.

Specificator Tipul de marker

+ Semnul plus

o Cerc

* Asterisc (steluţă)

. Punct

x x

Page 9: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

9

„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

Tabelul 3. 3. Specificatori de culori.

Specificator Culoarea

r roşu (red)

g verde (green)

b albastru (blue)

c albastru deschis (cyan)

m mov (magenta)

y galben (yellow)

k negru (black)

w alb (white)

Tabelul 3. 4. Specificatorii stilurilor de linie.

Specificator Stilul de linie

- Linie continuă

-- Linie întreruptă

: Puncte

-. Linie- punct

Observația 3. 4. 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 tabelele de mai sus de

forma ‘cml’ ce precizează culoarea, markerul şi simbolul cu care se trasează curba.

Page 10: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

10

Exemplul 3. 8. Reprezentarea în Matlab 7.9 a punctului 6,5.0P se poate realiza

folosind comanda:

Exemplul 3. 9. Realizaţi reprezentarea grafică din Exemplul 3.7 folosind:

a) culoarea albastră;

Figura 3. 9. Variaţia lui y matrice funcție de x matrice, de culoare albastră

b) cu markere de tip ”pătrate negre” în fiecare punct de grafic, însă fără a conectecta

marker-ele cu linie;

Page 11: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

11

Figura 3. 10.Variaţia lui y matrice funcție de x matrice, de culoare albastră cu markere

c) cu marker de tip”+” şi linie “:”, ambele de culoare roşie.

Figura 3. 11.Variaţia lui y matrice funcție de x matrice, cu markere şi linie de culoare roşie

Exemplul 3. 10. Reprezentaţi grafic funcţia:

.1,

1.1,sign1.1

xx

xxxf

Page 12: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

12

Figura 3. 12. Reprezentarea grafică a unei funcții definită pe ramuri

Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a

punctului, ci și a altor obiecte geometrice elementare, precum: dreapa, segmentul, linia

poligonală, triunghiul sau vectorul, pe baza funcțiilor:

plot([x0,x1],[y0,y1]): reprezintă grafic dreapta ,CBYAX

,022 BA CBA ,, fiind coeficienții acesteia,

determinată de punctele ,, 00 yx 11, yx ;

plot([x0, x0+1,v1],[y0, y0+1,v2]): trasează dreapta determinată de punctul 00 , yxP

și vectorul director v=[v1,v2];

plot(x,y): reprezintă grafic segmentul ale cărui extremități

,, 00 yxP ,, 11 yxQ au coordonatele precizate în

vectorii x și y, adică x=[x0,x1] și y=[y0,y1];

reprezintă linia poligonală ale cărei vârfuri au

coordonatele incluse vectorii x și y;

reprezintă triunghiul cu vârfurile ,, 11 yxA

,, 22 yxB

,, 33 yxC astfel încât x=[x1,x2,x3,x1]

și y=[y1,y2,y3,y1];

arrowline(x,y): desenează vectorul ale cărui extremități ,, 00 yxP

,, 11 yxQ au coordonatele precizate în vectorii x

și y, adică x=[x0,x1] și y= [y0,y1].

Page 13: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

13

Obiectul grafic creat poate fi personalizat (pentru adnotarea și editarea graficelor) în

următoarele trei moduri:

A) completând instrucțiunea care realizează reprezentarea grafică a funcției respective

cu atribute precum:

'LineWidth' (grosimea liniei);

'MarkerEdgeColor' (specificatorul de culoare al contrurului corespunzător

marker-ului utilizat);

'MarkerFaceColor' (specificatorul de culoare al feței marker-ului utilizat);

'MarkerSize' (dimensiunea marker-ului);

și cu ajutorul unor comenzi precum:

title(‘titlul dorit‟)- adaugă un titlu în partea superioară a figurii, unde ‘titlul

dorit‟ este un șir de caractere care reprezintă titlul graficului.

xlabel(‘text dorit’)- stabilește eticheta axei Ox (un text sub axa Ox), unde

'text dorit' este un șir de caractere, care reprezintă, în general, numele axei,

unitatea de masură sau alte elemente utile ale axei graficului curent.

ylabel(‘text dorit‟)- scrie eticheta axei Oy (un text de-aa lungul axei Oy);

text(x,y,‘text dorit‟)- permite introducerea unui „text dorit’ pe grafic la o

poziție indicată de coordonatele grafice (x,y);

Exemplul 3. 11. Să se reprezinte grafic funcţiile

,cossin,cos,sin,2sin xxxxx

plasându-se pe grafic pe poziţia (0.2, -0.5) şi un text cu numele autorului care a realizat

graficul.

Page 14: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

14

Figura 3. 13. Graficul a patru funcţii, pe care este plasat numele autorului

gtext(‘text dorit‟)- permite introducerea unui „text dorit’ pe grafic la o

poziție specificată prin click stânga mose; funcția afișează șirul de caractere

'text dorit' în fereastra grafică și așteaptă deplasarea acestuia pe grafic cu

mouse-ul. Apasând un buton al mouse-ului sau orice tastă, textul se scrie pe

grafic la poziția selectată.

Exemplul 3. 12. Adăugaţi pe graficul creat în Exemplul 3.11 şi un text cu numele

coauturului.

Figura 3. 14. Graficul a patru funcţii, pe care este plasat numele autorului și coautorului

Page 15: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

15

legend- plasează legenda pe grafic; legenda arată tipul, markerul şi culoarea

folosită pentru a reprezenta curba, plus textul specificat; are una cele două

sintaxe:

legend(‘sir1’, ‘sir2’, ..., ‘sirn’)- scrie legenda în colţul dreapta sus;

legend(‘sir1’, ‘sir2’, ..., ‘sirn’, pos)- scrie legendele în poziţia

specificată de argumentul „pos‟, ce are valorile din Error!

Reference source not found. 3.5.

Tabelul 3. 5. Specificarea poziţiei legendei.

pos Poziţia

0 cea mai bună poziţie

1 colţul dreapta-sus

2 colţul stânga-sus

3 colţul stânga-jos

4 colţul dreatpa-jos

-1 în afara graficului

Eliminarea legendei din figura curentă se realizează cu sintaxa: legend off;

Exemplul 3. 13. Rerprentaţi grafic funcţiile Bessel de speţa întâi, de ordinele 1-3.

bessel(n,x): calculează funcţiile Bessel de speţa întâi, de ordinul n,

în punctul x;

Page 16: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

16

Figura 3. 15. Plasarea legendei pe grafic

axis- admite un număr de opţiuni pentru setarea scalării, orientării, și

aspectului graficelor. De asemenea, aceste opţiuni se pot seta interactiv.

1) axis([xmin xmax ymin ymax])- setează intervalele de valori

corespunzătore axelor Ox și Oy, unde:

- xmin- valoarea minimă pe axa x,

- xmax- valoarea maximă pe axa x;

- ymin- valoarea minimă pe axa y;

- ymax- valoarea maximă pe axa y;

2) axis auto- selectarea automată a axelor;

3) axis auto normal- modul de scalare revine la cel iniţial, automatic;

4) axis square- determină ca limitele axelor x și y să fie de aceeaşi lungime;

5) axis equal- determină incrementul pe axele x și y de aceeaşi lungime;

6) axis on- face axele vizibile, această comandă fiind cea implicită; axele

devin invizibile utilizând comanda axis off;

Exemplul 3. 14. Reprezentaţi grafic funcţia [ ]

Page 17: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

17

Figura 3. 16. Oval

Apelarea comenzii

axis square

sau

axis equal

face ca ovalul să devină cerc.

Figura 3. 17. Cerc

Dacă dorim ca axele să devină invizibile utilizăm axis off.

Page 18: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

18

Figura 3. 18. Reprezentarea grafică a cercului cu axe invizibile

Exemplul 3. 15. Să se reprezinte grafic funcţia .,,sin ttty

grid on (sau grid)- inserează pe grafic o reţea de linii de grilă; liniile de grid

dispar utilizând sintaxa:grid off;

Exemplul 3. 16. Să se reprezinte grafic funcţiile 2sin,sin xx şi .2,0,2sin xx

Page 19: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

19

Figura 3. 19. Reprezentare grafică cu afișarea gridului

Apelarea comenzii grid off determină dispariţia liniilor de grid

Figura 3. 20. Reprezentarea grafică fără fișarea gridului

Exemplul 3. 17. Reprezentarea grafică a funcţiilor tsin şi tcos pe intervalul .2,0

Page 20: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

20

Figura 3. 21. Reprezentarea grafică a funcţiilor sin şi cos pe intervalul [0, 2 π].

B) accesând butonul Show Plot Tools and Dock Figure din fereastra Figure, ce

conține graficul respectiv. După realizarea setărilor dorite se accesează butonul

Hide Plot Tools în vederea salvării acestora și revenirii la fereastra Figure;

Exemplul 3. 18. Reprezentaţi arcul de parabolă:

2: xyAB ,

care uneşte punctele 1,1A si 4,2B .

Secvenţa Matlab următoare permite reprezentarea arcului AB .

Page 21: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

21

Figura 3. 22. Fereastra Figure, ce conține graficul respectiv

C) folosind comanda plotedit on sau plotedit pentru a deschide fereastra de plotare

cu meniul corespunzător, care permite să se insereze etichete pentru axe, titlul

graficului, legenda, bara de culoare, linii, text, axe și să se regleze luminozitatea;

ieșirea din modul de editare se face prin comanda: plotedit off.

Observația 3. 5.

(i) Orice deschidere a unei figuri Matlab, având extensia fig, permite editarea acesteia.

(ii) Repetarea instrucțiunii xlabel, ylabel, title, etc. cu un alt șir de caractere, conduce la

înlocuirea textului anterior, fară a fi necesară refacerea reprezentării grafice.

(iii)Legenda se poate muta pe grafic în poziția dorită prin apăsare mouse stânga și apoi

mutarea în poziția dorită. Scanarea graficului, pentru poziționarea legendei, se

execută cu funcția lscan, care găsește cel mai bun plasament al legendei, care să nu

se suprapună peste grafic și să fie vizibilă. Mutarea legendei se face automat, cu

funcția moveaxis, apelată de legend și instalată automat în ButtonDownFcn.

Page 22: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

22

(iv) Comanda axis([-10 40 -60 60]) va produce o reprezentare cuprinsă între -10 şi 40 pe

axa x şi respectiv -60 şi 60 pe axa y.

(v) Instrucţiunile precedente pot avea şi alţi parametrii, care să modifice tipul,

dimensiunea, stilul sau culoarea fontului. Un parametru util este FontSize ce dă

dimensiunea fontului. De exemplu, funcţia:

xlabel('sir', 'FontSize', 14)

scrie eticheta axei x cu dimensiunea fontului 14.

(vi) Este posibil de a utiliza litere greceşti, alte caractere speciale sau expresii simple în

instrucţiunile care afişază şiruri: title, xlabel, ylabel, text.

Acestea se scriu după regulile din Latex:

A) Caracterele se definesc în text sub forma:

\nume caracter

Exemple de caractere sunt prezentate în Error! Reference source not found. 3.6.

Tabelul 3. 6. Exemple de caractere.

Caracter Definiţie Caracter Definiţie Caracter Definiţie

\theta \leq \leftarrow

\Theta \geq \rightarrow

Π \Pi ≠ \neq \uparrow

\alpha ' \prime \downarrow

± \pm ∂ \partial \leftrightarrow

\infty \equiv ∫ \int

× \times ÷ \div √ \surd

└ \lfloor ┘ \rfloor

\subseteq \supseteq

Definiţia literelor greceşti mari începe cu literă mare, a celor mici cu literă mică, de

exemplu \Omega pentru şi respectiv \omega pentru .

B) Expresiile se definesc după următoarele reguli:

expresii cu exponenţi: expresia ba se defineşte ca a^b,

expresii cu indici: expresia xi se defineşte ca x_i,

dacă este cazul, expresiile se grupează între acolade { }; expresia xi+j se

defineşte ca x_{i+j}.

C) Pentru a transforma o expresie în:

a) echivalent TeX, se utilizează funcția

Page 23: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

23

texlabel('expresie')

Exemplul 3. 19. Transformați expresia 22

22sin

yx

yx

în echivalent TeX, pentru

aplicaţii Matlab 7.9.

b) forma literală, este necesară funcția

texlabel('expresie','literal').

Exemplul 3. 20. Scrieți sub formă literală expresia .3223

12

D) Pentru a afişa un „text‟ înclinat, (stilul italic), se definește acel text ca:

\it’text’

iar pentru afişare cu litere groase (bold), se definește textul ca:

\bf’text’.

Exemplul 3. 21. Să se reprezente grafic funcţia sin(θ) pe intervalul [0, 2 π]. Se

editează următoarele texte:

pe axa y, textul “sin(θ)”,

pe axa x, textul “0 ≤ θ ≤ 2 π”,

titlul graficului va fi “Functia sin(θ)”.

Page 24: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

24

Figura 3. 23. Reprezentarea grafică a funcţiei sin(θ) pe intervalul [0, 2 π].

Pentru a utiliza interpreterul Latex generăm un şir de caractere cu expresia ce dorim să

fie afişată şi apelăm funcţia text.

Șirurile de caractere se afişază pe grafic într-o anumită poziţie cu funcţia text cu

forma :

text(‘NumeProprietate’, ValoareProprietate, …)

Proprietăţile des utilizate ale obiectului text sunt:

„String‟ – şirul care va fi afişat;

„FontSize‟ – dă dimensiunea fontului în unităţi de font;

„FontUnits‟ – unităţile de font, „points‟, „normalized‟, „pixels‟, „centimeters‟;

„HorizontalAlignment‟ – aliniamentul orizontal, „left‟, „center‟, right;

„VerticalAlignment‟ – aliniamentul vertical, „top‟, „middle‟, „bottom‟;

„Interpreter‟ – interpreterul utilizat, „latex‟, „tex‟, „none‟;

„Units‟ – unităţile de măsură, „points‟, „normalized‟, „pixels‟, „centimeters‟;

„Position‟ – poziţia şirului, [x, y].

Opţiunea „normalized‟ a proprietăţii „Units‟ transformă colţul din stânga jos al

dreptunghiului figurii în (0, 0) şi cel din dreapta sus în (1, 1).

Exemplul 3. 22. Să reprezinte grafic funcţia ].4,0[,sin ttt Eticheta axei Ox, t[s],

va fi scrisă cu litere groase (bold). Se afişează pe figură formula ,sin tt în centrul figurii.

Scrierea cu stilul bold a etichetei axei Ox necesită utilizarea instrucţiunii:

xlabel('\bft[s]')

Page 25: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

25

Pentru afişarea în centrul figurii a formulei ttsin se realizează un şir de caractere cu

formula scrisă în Latex :

texstr = '$\frac{sin(t)}{t}$';

Figura 3. 24. Reprezentarea grafică a funcţiei sin(t) / t

Implicit, fiecare instrucţiune plot crează o nouă figură. Deşi o instrucţiune plot poate

reprezenta grafic mai multe curbe, uneori este necesar să reprezentăm mai multe curbe pe

aceeaşi figură cu mai multe instrucţiuni plot.

Exemplul 3. 23. Să se reprezinte grafic funcţiile xsin şi .2,0, xe x

Page 26: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

26

Figura 3. 25. Reprezentarea grafică 2D

plot(x,y,u,v): reprezintă grafic datele experimentale conținute în

vectorii x, y, u și v;

Exemplul 3. 24. Să se calculeze masa corespunzătoare unei plăci plane, având forma

domeniului

2222 3,4|, xyyxyxD

si densitatea yyx , .

Page 27: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

27

Masa unei plăci plane, de forma unui domeniu D și densitatea yx, :

.dd,M yxyxDD

(3. 1)

Secvența Matlab 7.9 permite reprezentarea grafică domeniului D .

Figura 3. 26. Reprezentarea plăcii plane, având forma domeniului

Coordonatele punctelor A și B, reprezentate în figura anterioară se determină folosind

funcția solve:

Page 28: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

28

Se poate observa că:

.43

,33|, 22

2

xyx

xyxD

Apoi, se calculează masa plăcii plane:

Exemplul 3. 25. Realizând câteva teste asupra unor trenuri obţinem următorul tabel

(în unităţi relative), care exprimă rezistența de tracțiune în funcție de viteză:

viteza iv 20 40 60 80 100 120

rezistența iR 5.5 9.1 14.9 22.8 33.3 46

Determinaţi expresia analitică (empirică) a parabolei, ce caracterizează acest

experiment, care să ne permită să estimăm cele mai bune rezistențe, corespunzătoare vitezelor

care nu apar în tabelul anterior, dar sunt cuprinse între 20 şi 120 unităţi relative.

Page 29: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

29

Figura 3. 27. Reprezentarea grafică a parabolei, ce caracterizează experimentul considerat

plot(x1,y1,x2,v2,…xn,yn): reprezintă grafic în acelaşi sistem de coordonate

perechile de argumente (x1,y1), (x2,y2),…, (xn,yn) ;

Observația 3. 6. MATLAB accesează automat un set predefinit de diverse culori

(setul poate fi modificat) ce permit diferenţierea vizuală între seturile de date.

Exemplul 3. 26. Să se reprezinte grafic cele trei curbe de variaţie funcţie de x:

5.0sin2

25.0sin2

sin

xy

xy

xy

fiecare curbă cu o culoare diferită.

Page 30: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

30

Figura 3. 28. Reprezentări multiple

Observația 3. 7.

(i) Pentru a specifica o serie de proprietăți pentru obiectele de tip line se utilizează una

din sintaxele următoare. Din momentul creării acestea se aplică tuturor liniilor

realizate.

1) plot(…, ‘nume_proprietate1', valoare_proprietate1,

‘nume_proprietate2', valoare_proprietate2… )

2) plot(x,y,'culoare_tiplinie_marcator')

3) plot(x1, y1,'culoare1_tiplinie1_marcator1',x2, y2,

culoare2_tiplinie2_marcator2', …)

(ii) Funcția plot returnează un vector coloană al identificatorilor de control al

caracteristicilor obiectelor linie. Obiectele linie create cu plot sunt copii ai axelor

curente.

(iii)Perechile (x,y) pot fi urmate de perechile parametru/valoare, pentru a specifica

proprietățile suplimentare ale liniilor.

plot(x,f(x)): reprezintă grafic funcţia ;xf

Exemplul 3. 27. Reprezentați grafic în Matlab 7.9 repartiția Bernoulli de parametru

.1,0p

Fie X o variabilă aleatoare binară astfel încât: 1,0,1 ppXP şi

pqXP 10 , adică: 1X dacă într-o experienţă întâmplătoare, un eveniment aleator

Page 31: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

31

observabil A se produce cu probabilitatea p (avem de-a face cu un succes) şi 0X dacă se

produce evenimentul contrar A cu probabilitatea pq 1 (se realizează un eşec).

Aşadar, X are repartiţia Bernoulli:

.10

:

pqX

Funcţia de repartiţie a unei variabile aleatoare X care are distribuție Bernoulli este:

.1,1

1,0,

0,0

x

xq

x

xXPxF

(3.2)

Pentru a defini în Matlab 7.9 funcția de repartiție xF vom utiliza funcția treaptă:

heaveside(x): returnează: 0 dacă x<0, 1 dacă x > 0 și 0.5 dacă x= 0.

Figura 3. 29. Repartiția Bernoulli de parametru p=0.9

plot(x,f(x),linie,marker,culoare): reprezintă grafic funcţia ;xf utilizând un

anumit stil de linie, un anumit simbol de

marker şi o anumită culoare;

Page 32: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

32

plot(x,f(x),x,g(x)): reprezintă grafic simultan două funcţii xf şi

xg în acelaşi sistem de coordonate;

Exemplul 3. 28. Reprezentaţi grafic în acelaşi sistem de coordonate funcţiile:

2

2

3

1

1

1

cos

xxg

x

xxf

, .2,2 x

Figura 3. 30. Graficul a 2 funcții cu plot

comet(x,y): repezentarea dinamică (animată) a vectorului y în funcţie

de vectorul ;x

comet(x,y,p): realizează o cometă a lui xy , de lungime p*length(y);

implicit, valoarea lui p este egală cu 0.1.

Exemplul 3. 29. Urmăriţi modul de lucru al funcţiei comet, cu secvenţa Matlab 7.9:

Page 33: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

33

Figura 3. 31. Stil cometă

Exemplul 3. 30. Să se realizeze interpolarea setului de date din

Tabelul 3. 77, folosind facilităţile oferite de Matlab 7.9 şi să se reprezinte grafic

funcţia de interpolare obţinută:

Tabelul 3. 7. Datele rezultate prin măsurarea energiei termice solare, având următorea

semnificaţie:

x semnifică insolaţia (cantitatea de energie solară existentă în atmosferă şi care se

află pe suprafaţa Pământului) şi este măsurată în waţi pe metru pătrat;

y constituie fluxul total de căldură şi se măsoară în kwaţi.

x y

568.55 181.5

638.1 196

653.1 227.5

666.8 224.7

684.45 238.8

694.85 227.2

697.15 263.8

704.05 253.6

704.7 254.5

709.6 263

711.85 240.4

726.9 265.8

748.45 264

753.35 267.4

756 229.1

757.9 272.3

769.35 239.3

Page 34: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

34

774.55 278.7

774.95 259.6

783.35 271.8

793.5 258

801.65 257.6

808.55 267

819.65 267.3

827.8 230.7

860.45 251.6

875.15 257.9

905.55 266.5

909.45 263.9

Figura 3. 32. Interpolarea liniară a setului de date din

Tabelul 3. 77

Page 35: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

35

Figura 3. 33. Interpolarea liniară a setului de date din

Tabelul 3. 77

Reprezentarea grafică cu parametrii impuși se realizează cu funcția fplot. Funcția

fplot realizează o reprezentare grafică cu anumite restricții și se apelează cu una dintre

sintaxele:

fplot(‘fun’,limite): trasează graficul funcției „fun‟, între limitele precizate;

Observația 3. 8. Eticheta:

- fun desemnează numele fișierului funcție (șir de caractere), care poate fi dată sub

forma unei funcții linie obiect, cu @ sau expresie;

- limite = [xmin xmax] – limitele axei x pentru care se dorește reprezentarea grafică.

Exemplul 3. 31. Reprezentați grafic funcția sin(x), cu fplot,

Page 36: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

36

Figura 3. 34. Reprezentare cu fplot

Exemplul 3. 32. Reprezentaţi grafic în plan funcţia:

2

2

1

1arcos

x

xxf

, 10,10x .

Figura 3. 35. Reprezentare grafică cu fplot

Exemplul 3. 33. Reprezentați grafic funcția:

.2,min 2 xxxf

Page 37: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

37

Figura 3. 36. Reprezentare grafică cu fplot

fplot(„fun‟, limite, n):

trasează graficul funcției „fun‟, între limitele precizate,

funcția fiind reprezentată folosind un număr n de

eșantioane (implicit n=25);

Exemplul 3. 34. Fie fişierul funcţie:

function y=test(x);

y=sin(x)./x;

end

înregistrat cu numele test.m.

Să se reprezinte grafic funcţia din fişierul test.m, între limitele [-20, 20] cu n=50

eşantioane.

Page 38: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

38

Figura 3. 37. Reprezentare cu fplot

fplot(‘fun’, limite, n,tol): desenează graficul funcției „fun‟, între limitele

precizate, folosind un număr n de eșantioane, cu

eroarea tolerată la reprezentare tol, care, dacă lipsește,

are valoarea implicită , respectiv de 0.2

procente;

Exemplul 3. 35. Trasați graficul funcției

utilizând fplot, eroarea tolerată la

reprezentarea grafică fiind egală cu .

Figura 3. 38. Reprezentare cu fplot

Page 39: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

39

[x,y]=fplot(„fun‟, limite, …): returnează vectorii coloană x și y ce conțin valorile

abscisei și ale ordonatei funcției;

Dacă funcția fplot se apelează cu argumente de ieșire, nu se reprezintă nici un grafic,

dar acesta se poate trasa ulterior apelând funcția plot(x,y).

fplot(f,g,[a,b]): trasează în același sistem de coordonate, graficele

funcților f și g, pe intervalul [a,b];

hold on: adăugă o curbă la graficul existent, adică permite

desenarea mai multor grafice în aceeași figură;

Observația 3. 9. Sintaxa hold on:

- nu înlocuiește graficul existent la apelul unei noi comenzi plot ci adaugă noile

curbe la graficul curent, rescalând axele dacă este necesar;

- menţine figura curentă şi proprietăţile axelor, astfel încât următoarele instrucţiuni

plot reprezintă curbe pe aceeaşi figură.

Exemplul 3. 36. Trasaţi curbele

,,0,

4cos

2sin

t

ttb

tta

cu două instrucţiuni plot pe aceeaşi figură.

Page 40: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

40

Figura 3. 39. Două curbe pe acelaşi grafic

Reprezentarea grafică a două funcții f și g, pe intervalul [a,b], în același sistem de

coordonate, poate fi realizată şi folosind succesiunea de instrucțiuni:

fplot(f,[a,b])

hold on

fplot(g,[a,b]).

Dezactivarea instrucțiunii hold on se realizează cu ajutorul comenzii hold off, care

reface modul implicit al funcției plot, şterge graficele precedente şi reface proprietăţile iniţiale

ale axelor înainte de a desena noi grafice.

Exemplul 3. 37. Reprezentați în același grafic, funcțiile [ ],

cât și

Figura 3. 40. Reprezentarea a trei curbe, cu fplot

Comanda funtool din Matlab 7.9 afișează o interfață grafică interactivă, asemănătoare

unui calculator destinat operațiilor cu funcții de o singură variabilă, ce conține trei ferestre.

Figura 3.2 ilustrează cea de-a treia fereastră, care prin intermediul controalelor sale text

permite:

- introducerea funcțiilor f și g;

- specificarea intervalului de valori corespunzătoare variabilei x;

- setarea valorii parametrului a;

Page 41: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

41

Figura 3. 41. Interfața grafică furnizată de comanda funtool

Interfața vizuală prezintă și o tastatură, cu ajutorul căreia pot fi realizate următoarele

operații cu funcții:

Buton de commandă Semnificaţie

xf dd : calculează xf ;

int f calculează xxf d ;

simple f simplifică simbolic expresia funcției f;

num f extrage numărătorul fracției, ce constituie expresia funcției f;

den f extrage numitorul fracției, ce constituie expresia funcției f;

f1

înlocuiește funcția f cu ;1 f

inv f înlocuiește funcția f cu 1f , adică cu inversa sa;

af

înlocuiește funcția xf cu ;axf

af

înlocuiește funcția xf cu ;axf

af

înlocuiește funcția xf cu ;axf

af

înlocuiește funcția xf cu axf

af ^

înlocuiește funcția xf cu ;^ axf

axf

înlocuiește funcția xf cu axf ;

axf *

înlocuiește funcția xf cu axf * ;

gf

înlocuiește funcția xf cu ;xgxf

Page 42: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

42

gf

înlocuiește funcția xf cu ;xgxf

gf *

înlocuiește funcția xf cu ;* xgxf

gf

înlocuiește funcția xf cu ;xgxf

gf

înlocuiește funcția xf cu xgf ;

fg

înlocuiește funcția xg cu xf ;

swap interschimbă funcțiile xf și ;xg

Insert inserează funcția curentă f împreună cu domeniul său de

definiție într-o listă de funcții;

Cycle rotește afișarea funcțiilor f din lista de funcții;

Delete șterge funcția curentă f împreună cu domeniul său de definiție

într-o listă de funcții;

Reset resetează f,g,x, a și lista de funcții, la valorile inițiale;

Help deschide Help-ul interfeței grafice;

Demo prezintă exemple demonstrative de utilizare a operațiilor din

Fereasta 3 a interfeței grafice;

Close închide cele trei ferestre ale interfeței grafice;

Observația 3. 10. Fereastra 1 și respectiv Fereastra 2 generate prin lansarea comenzii

funtool afișează atât graficele funcțiilor f și respectiv g, cât și graficele funcțiilor rezultate pe

baza operațiilor efectuate asupra funcțiilor f și g.

plotyy(x1,y1,x2,y2): realizează trasarea pe același grafic a lui y1 funcție de

x1 cu axa y1 la stânga și a lui y2 funcție de x2 cu axa

y2 la dreapta;

Exemplul 3. 38. Să se reprezinte grafic:

10,0,

10,0,

22.0

22

1211

xxxy

xxxy

folosind funcţia plotyy.

Page 43: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

43

Figura 3. 42. Reprezentarea cu funcţia plotyy

plotyy(x1,y1,x2,y2,'fun'): utilizează funcția fun pentru plotare,

care poate fi o funcție internă pentru

plotare precum: plot, semilogx,

semilogy, loglog, stem, care accepă

sintaxa H=fun(x,y);

plotyy(x1,y1,x2,y2,'fun1', 'fun2'):

este necesară dacă se dorește utilizarea

pentru axele din stânga și dreapta a

două moduri diferite: pentru perechea

(x1,y1) se utilizează fun1(x1,y1), iar

pentru perechea (x2,y2) se utilizează

fun2(x2,y2);

[ax,h1,h2]=plotyy(x1,y1,x2,y2,'fun1', 'fun2'):

permite returnarea locului unde sunt

create axele în ax(1), pentru axa din

stânga, în ax(2), pentru axa din dreapta

și a obiectelor grafice în h1 și h2;

Exemplul 3. 39. Să se realizeze reprezinterea grafică din Exemplul 3.38 folosind

funcţia

plotyy(x1,y1,x2,y2,'semilogy','stem')

din Matlab 7.9.

Page 44: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

44

Figura 3. 43. Reprezentarea cu funcţia plotyy(x1,y1,x2,y2,'semilogy','stem')

Pentru plotarea facilă a unei expresii introduse direct ca argument se face ușor cu

funcția ezplot.

ezplot(f): trasează graficul funcției f, pe intervalul ;2,2

Exemplul 3. 40. Trasați graficul funcției [ ], cu ezplot.

Page 45: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

45

Figura 3. 44. Graficul funcției [ ], cu ezplot

Exemplul 3. 41. Reprezentați graficul funcției cu ezplot.

Figura 3. 45. Graficul funcției [ ]

ezplot(f,[a,b]): trasează graficul funcției f, pe intervalul

[a,b];

ezplot(f,[xmin, xmax,ymin,ymax]): reprezintă graficul funcției f, pe domeniul

xmin < x < xmax, ymin < y < ymax

Exemplul 3. 42. Reprezentați grafic funcția dată sub forma implicită:

⁄ [ ].

Page 46: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

46

Figura 3. 46. Reprezentarea grafică a unei funcții dată sub formă implicită

Exemplul 3. 43. Să se reprezinte grafic funcţia dată prin ecuaţia:

.1,1,2,2,22222 yxyxyx

Figura 3. 47. Graficul unei funcții cu ezplot

ezplot(f,g,[a,b]): trasează graficele funcțiilor f și g, pe

intervalul [a,b], în același sistem de

coordonate;

Exemplul 3. 44. Reprezentați grafic curba lui Lissajous:

Page 47: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

47

.2,0,

2sin

3cos

t

tty

ttx

Figura 3. 48. Curba lui Lissajous

Reprezentarea grafică poate fi utilizată ca metodă de rezolvare a ecuaţiilor

transcendente de forma 0xf , în sensul că soluţiile reale ale ecuaţiei respective pot fi

determinate ca fiind intersecţii ale graficului funcţiei xf , cu dreapta .0y

Exemplul 3. 45. Rezolvaţi ecuaţia transcendentă 0cos2 xx folosind metoda

grafică.

Page 48: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

48

Figura 3. 49. Metoda grafică de rezolvare a unei ecuații transcendente

Abscisele punctelor A şi B, adică -0.44 şi 0.44 evidenţiază soluţiile reale ale ecuaţiei

transendente.

Metoda grafică poate fi aplicată şi pentru rezolvarea sistemelor de ecuaţii neliniare de

forma

0

0

xg

xf,

în sensul că soluţiile reale ale sistemului respectiv pot fi determinate intersectând graficele

funcţiilor xf şi xg .

Exemplul 3. 46. Rezolvaţi sistemul neliniar:

09.075.0

01

3

22

yx

yx

folosind metoda grafică.

Page 49: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

49

Figura 3. 50. Metoda grafică de rezolvare a unei sistem neliniar

Analizând graficul anterior se observă că intersecţia reală a cele două curbe este

reprezentată de punctele P(-0.98, 0.2) şi Q(0.36,0.93). Coordonatele acestor punte, constituie

două soluţii reale ale sistemului neliniar considerat.

Pe lângă soluţiile reale există însă şi soluţii complexe, deoarece substituind

necunoscuta y din a doua ecuaţie în prima ecuaţie a sistemului se obţine o ecuaţie algebrică

(polinomială), de gradul 6, în necunoscuta x, care are şase rădăcini.

Deci, sistemul neliniar are două soluţii reale şi patru complexe (orice polinom cu

coeficienţi reali are un număr par de rădăcini complexe).

Utlizarea metodei grafice de rezolvare a sistemelor neliniare are dezavantajul că poate

determina numai soluţiile reale ale sistemului, fără a oferi nici o informaţie despre rădăcinile

complexe, adică nu este adecvată pentru rezolvarea ecuaţiilor polinomiale.

1.1.1. Reprezentări grafice multiple pe o figură

În unele cazuri avem nevoie să reprezentăm simultan mai multe figuri. Acest lucru se

face cu fucţia subplot.

subplot (m, n, p):

împarte o figură într-o matrice de (m x n) axe şi

selectează axa p pentru reprezentarea grafică ce se va

face cu instrucţiunea plot următoare;

Page 50: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

50

Observația 3. 11. Graficele sunt numerotate întâi pe primul rând de sus al ferestrei

figură, apoi pe cel de-al doilea rând etc.

Exemplul 3. 47. Reprezentaţi grafic curbele sin(t), cos(t), sin2(t) ca funcţii de t şi

cos(t) în funcţie de sin(t) într-o matrice de patru figuri.

Exemplul 3. 48. Reprezentaţi grafic curbele

2sin t , sin(t), cos(t), sin(t)cos(t)

într-o matrice de patru figuri.

Figura 3. 51. Reprezentare grafică într-o matrice de figuri

Page 51: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

51

Figura 3. 52. Reprezentare grafică într-o matrice de figuri

Page 52: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

52

Exemplul 3. 49. Reprezentaţi grafic curbele: sin(x), 2sin x , sin(2x) într-o matrice de

trei figuri.

Figura 3. 53. Reprezentare grafică într-o matrice de trei figuri

3.2. Reprezentarea grafică în coordonate logaritmice și semilogaritmice

Funcțiile destinate acestor reprezentări au modul de utilizare identic cu cel al funcției

plot, diferă doar tipul de scalare al axelor.

loglog(x,y):

scalează ambele axe utilizând logaritmul în baza 10

(reprezintă grafic funcția xfy loglog ;

Page 53: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

53

semilogx(x,y):

scalează logaritmic doar axa x, axa y fiind scalată

liniar (reprezintă grafic funcția xfy log ;

semilogy(x,y):

scalează logaritmic doar axa y, axa x fiind scalată

liniar (reprezintă grafic funcția xfy log ;

Observația 3. 12. Obiecul grafic de tip line (obținut cu plot, loglog, semilogx,

semilogy) are următoarele caracterictici:

Color – culoarea de trasare;

LineStyle: [- | -- | : | -. | none ] – tipul liniei de trasare;

LineWidth – scalar care semnifică grosimea liniei;

Marker: [ + | o | * | . | x | square | diamond | v | ^ | > | < | pentagram | hexagram |

{none}] – tipul de marcator;

MarkerSize - scalar care semnifică dimensiunea marcatorului;

MarkerEdgeColor: [ none | {auto} ] sau o culoare specificată – stabilește

culoarea de contur a marcatorului;

MarkerFaceColor: [ {none} | auto ] sau o culoare specificată – stabilește

culoarea interioară a marcatorului, dacă acesta este delimitat de un contur închis;

Xdata – vector cu datale reprezentate în abscisă;

YData– vector cu datale reprezentate în ordonată;

UIContextMenu – identificatorul unui meniul contextual asociat;

Visible: [on | off ] – starea de vizibilitate.

Exemplul 3. 50. Să se reprezinte în coordonate semilogaritmice, pe axa y, funcția

xy 10 , ,10,0x

inserând şi etichetele axelor.

Page 54: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

54

Figura 3. 54. Reprezentarea grafică a funcţiei y în coordonate semilogaritmice (axa y)

Observația 3. 13. S-a utilizat xlabel și ylabel pentru marcarea coordonatelor x și

respectiv, log(y).

Exemplul 3. 51. Reprezentaţi grafic cîntr-o matrice de patru figuri, curba x2sin în:

- coordonate carteziene ;

- coordonate logaritmice;

- coordonate selogaritmice, scalând logaritmic doar axa x;

- coordonate selogaritmice, scalând logaritmic doar axa y.

Page 55: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

55

Figura 3. 55. Reprezentare grafică într-o matrice de figuri

Observația 3. 14. Figura, aria de desenare, curba, etichetele axelor, etc., sunt obiecte

grafice cu proprietăţi, create de funcţiile plot, xlabel, ylabel, etc. Toate funcţiile 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 obţine sau prescrie

proprietăţi ale obiectului grafic.

De exemplu, pentru a afişa legenda la figuri unde s-a utilizat instrucţiunea subplot, se

utilizează variabila handle a instrucţiunii plot ca mai jos:

h = plot(t, x)

legend(h, ‘sir’).

3.2. Reprezentarea grafică în coordonate polare

Pe lângă sistemul cartezian există și sistemul de coordonate polare (Fig. 3.56), care

permite specificarea poziției unui punct în plan. Un sistem de coordonate polare se defineşte

printr-un punct O numit pol sau origine şi printr-o semiaxă dusă prin pol numiă axă polară. Poziţia

unui punct din plan M din plan este determinată dacă se cunosc:

a) distanţa OM de la pol la punctul considerat, numită raza vectoare a punctului M (ia

numai valori pozitive),

Page 56: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

56

b) unghiul 2,0 pe care-l face axa polară cu semidreapta OM , fiind ales în sens

trigomometric, numit faza sau amplitudine.

M

axa

Figura 3. 56. Sistemul de coordonate polare

Este posibilă transformarea unui sistem de coordonate polare într-un sistem de coordonate

carteziene şi invers. Dacă ambele sisteme de coordonate au aceeaşi origine şi axa Ox comună, atunci

un punct M care are coordonatele , în sistemul de coordonate polare va avea coordonatele yx,

în sistemul de coordonate carteziene, între acestea existand relaţiile:

2,0,0,

sin

cos

y

x;

(3. 3)

deci:

.sin

cos

22

22

22

yx

y

yx

x

yx

(3. 4)

Dificultatea în cazul sistemului de coordonate polare, ţinând cont de periodicitatea

funcţiilor trigonometrice constă în faptul că punctele pot avea reprezentări multiple. De aceea,

trebuie tratate cu atenţie aceste tipuri de reprezentări grafice.

Reprezentarea datelor în coordonate polare este similară reprezentării în coordonate

carteziene şi se realizează utilizând funcţiile:

compass(z): reprezintă grafic în coordonate polare unul sau mai multe numere

complexe z (reprezintă modulul şi argumentul numerelor complexe),

sub formă de vectori, cu originea în originea sistemului de coordonate

şi având săgeţile orientate dinspre origine;

Exemplul 3. 52. Să se reprezinte grafic în coordonate polare numerele complexe:

.6,21,34 321 iziziz

Page 57: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

57

Figura 3. 57. Reprezentare grafică folosind funcţia compass

compass(x,y): are aceeași semnificație cu funcția compass(z), unde z=x+iy;

feather(z): reprezintă grafic într-un reper cartezian fiecare element al

vectorului complex z printr-un segment orientat, a cărui origine se

află pe axa Ox sau pe o dreapă paralelă cu aceasta, în funcţie de

lungimea şi argumentul componentei complexe a lui z; originile

segmentelor sunt egal distanțate;

Exemplul 3. 53. Să se reprezinte grafic numerele complexe din Exemplul 3.52

folosind funcția feather.

Figura 3. 58. Reprezentare grafică folosind funcţia feather

Page 58: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

58

feather(x,y): are aceeași semnificație cu funcția feather(z), unde

z=x+iy;

polar( , ): reprezintă grafic în coordonate polare curba f ;

Exemplul 3. 54. Să se reprezinte grafic în coordonate polare cardioida:

.2,0,cos1 af

Figura 3. 59. Cardioida în coordonate polare

Exemplul 3. 55. Să se reprezinte grafic în coordonate polare:

.2,0,cossin uuuuR

Figura 3. 60. Reprezentarea în coordonate polare (u,R)

Page 59: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

59

Exemplul 3. 56. Să se genereze un vector cu repartiţie normală şi să se reprezinte

grafic în coordonate polare, în intervalul .2,0

Figura 3. 61. Reprezentarea în coordonate polare

polar( , , ’linie-tip’): reprezintă grafic în coordonate polare curba , f

folosind tipul de linie specificat; modul de folosire a

opţiunii ’linie-tip’ este identic cu cel al funcţiei plot;

ezpolar(f): reprezintă grafic în coordonate polare curba f în

domeniul 20 (nu apare la versiunile de Matlab

precedente versiunii 7.0);

Exemplul 3. 57. Reprezentați grafic în coordonate polare curba

.2,0,tansin tt

Page 60: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

60

Figura 3. 62. Reprezentarea grafică cu ezpolar

Exemplul 3. 58. Realizaţi reprezentarea grafică din Exemplul 3. 54. Să se reprezinte

grafic în coordonate polare cardioida:Exemplul 3. 53. Să se reprezinte grafic numerele

complexe din Exemplul 3.52 folosind funcția feather.

Figura 3. 58. Reprezentare grafică folosind funcţia feather

feather(x,y): are aceeași semnificație cu funcția feather(z), unde

z=x+iy;

polar( , ): reprezintă grafic în coordonate polare curba f ;

Exemplul 3. 54. Să se reprezinte grafic în coordonate polare cardioida: cu ajutorul

funcţiei ezpolar.

Page 61: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

61

Figura 3. 63. Cardioida în coordonate polare

ezpolar(f,[a,b]): reprezintă grafic în coordonate polare curba f în

domeniul ba ;

Exemplul 3. 59. Să se reprezinte grafic în coordonate polare curba:

.2

3,

2,

2100

2

30cos7sin2100

8

Page 62: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

62

Figura 3. 64. Grafic în coordonate polare cu ezpolar

Vom ilustra metoda potrivit căreia se realizează rotaţiile 2D cu formula Euler.

Un număr complex poate fi folosit pentru a preciza poziţia unui obiect plan sau alte

entităţi 2D precum viteza, acceleraţia, deplasarea, etc.

Fiecare punct al cercului unitar este de forma indicată de formula Euler:

.sincos ieiz (3. 5)

Figura 3. 65. Reprezentarea unui punct în plan folosind formula Euler

Expresia polară a funcţiei exponenţiale complexă este ie convenabilă pentru a

reprezenta rotirea obiectelor din următoarele două motive:

Im

cos𝑥

sin 𝑥

𝑒𝑖𝑥 cos 𝑥 𝑖 sin 𝑥

1

1

𝑖

Page 63: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

63

1) identifică un punct în planul complex folosind un singur termen, în loc de

doi termeni ;iyx

2) simplifică calculele atunci când este utilizată în înmulţiri de forma:

.. iyxiyx eee

Din Fig. 3.66 se observă că înmulţirea a două numere complexe implică o rotaţie 2D,

adică înmulţind cu se realizează rotaţia lui cu unghiul .

Figura 3. 66. Rotaţie 2D folosind înmulţirea numerelor complexe

Când numărul complex iyxz . este înmulţit cu , lungimea lui

rămâne aceeaşi (| | | | ) , dar argumentul lui rezultă adăugând la argumentul lui

Exemplul 3. 60.

a) Să se reprezinta grafic nefroida (o curbă plană care aproximativ forma rinichiului),

având ecuaţiile parametrice:

;3sinsin3

3coscos3

ttaty

ttatx

Im

1

𝑖

𝑒𝑖𝜃

𝑒𝑖 𝜃∗𝜑 𝑒𝑖𝜃 𝑒𝑖𝜑

𝜃

𝜑

Re

Page 64: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

64

Figura 3. 67. Nefroida

b) să se genereze nefoida care rezultă prin rotaţia nefroidei iniţiale cu unghiul 9 şi

translaţia acesteia cu vectorul .20 i

Page 65: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

65

Figura 3. 68. Nefroidă rotită și translatată

3.3. Reprezentări grafice speciale

În Matlab 7.9 se mai pot realiza şi o serie de reprezentări grafice speciale. Tipul de

grafic selectat depinde în mod esenţial de natura datelor prelucrate.

Graficele de tip bare sau arie (bar, area) sunt utile pentru vizualizarea unor rezultate,

compararea lor şi afişarea unei contribuţii individuale din total.

Graficele de tip statistic (pie, charts) indică contribuţiile individuale dintr-un total.

Histogramele (histogram) sunt utile pentru a indica distribuţia valorilor datelor.

Graficele de tip stem şi stairstep sunt utile pentru date discrete.

Graficele compass, feather, quiver sunt utile pentru plotarea vectorilor de tip direcţie

şi viteză.

Graficele de tip contur (contour) sunt utile la reprezentarea unor regiuni de valori

egale ale datelor.

Plotările interactive (interactive) permit selectarea unor puncte de plotare în mod

interactiv.

Graficele de tip animaţie (animations) adaugă date la grafice consecutive şi creează o

animaţie.

Page 66: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

66

fill(x,y,c): reprezintă un poligon definit de vectorii x și y, cu

nuanțele de culoare c. Coordonatele vârfurilor

poligonului sunt specificate prin perechile (x,y).;

Dacă argumentul c este un singur caracter dintre cele prezentate în lista de culori sau

un vector cu trei componente [r g b], poligonul va fi colorat într-o singură culoare.

În cazul în care c este un vector cu aceeași dimensiune ca x și y, elementele acestuia

sunt scalate cu funcția caxis și apoi utilizate ca indici într-o matrice care specifică culorile

vârfurilor. Culorile dintre vârfuri sunt obținute prin interpolare biliniară a culorilor vârfurilor.

Dacă x și y sunt matrice cu aceeași dimensiune, fill(x,y,c) reprezintă câte un poligon

pentru fiecare coloană. În acest caz, c este un vector linie pentru poligoane cu o singură

culoare și, respectiv, o matrice pentru poligoane cu culori interpolate.

Dacă numai unul dintre argumentele x sau y este matrice, celălalt fiind vector coloană

cu același număr de linii, vectorul coloană se va extinde la o matrice cu aceleași dimensiuni,

prin adăugarea unor coloane identice.

fill(x1,y1,c1,x2,y2,c2,…): se utilizează pentru specificarea poligoanelor multiple;

Funcția fill returnează un vector coloană, ce are drept componente identificatorii de

control al caracteristicilor modulelor obiect, considerând câte o linie pentru fiecare modul.

Argumentele x, y, c pot fi urmate de perechi parametru-valoare, cu scopul de a

menționa proprietățile suplimentare ale modulului obiect respectiv.

Exemplul 3. 61. Să se reprezinte grafic mulțimea perechilor de puncte 11, yx și

respectiv 22 , yx conținute în vectorii:

,12301,01320 11 yx

00230,24532 22 yx

folosind funcția plot și respectiv fill, pentru a evidenţia diferența dintre cele două funcții.

Page 67: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

67

Figura 3. 69. Reprezentarea poligoanelor cu funcția plot

Figura 3. 70. Reprezentarea poligoanelor cu funcția fill

Din Fig. 3.70 reiese că funcția fill umple poligoanele cu culoarea specificată, fapt care

nu se întâmplă în cazul utilizării funcției plot.

Exemplul 3. 62. Să se reprezinte grafic, în aceeași figură, poligoanele definite de

mulțimea perechilor de puncte următoare:

,861,421 11 yx

.986,842 22 yx

Page 68: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

68

Figura 3. 71. Trasare poligoane pline colorate

area(x,y): crează un grafic cu suprafețe diferit colorate pentru a

marca contribuția diferitor componente la întreg; este

asemănătoare cu plot(x,y), cu deosebirea că aria de sub

curbă este colorată, între 0 și y;

Exemplul 3. 63. Să se reprezinte cu suprafețe diferit colorate al datelor conţinute în

matricea

( 1 1 1

)

la locaţiile indicate de punctul x=0.5.

Page 69: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

69

Figura 3. 72. Grafic cu suprafețe diferit colorate

area(y): are același rol precum funcția area(x,y), considerând

implicit că x=1:size(y,1);

area(x,y,level): completează funcția area(x,y), specificând nivelul de

la care se colorează aria, prin intermediul argumentului

level, care poate fi 0 (valoare implicită) sau o valoare

precizată, caz în care colorarea se face între level și

valoarea curentă a lui y;

Exemplul 3. 64. Reprezentați grafic funcția 10,1,2 xxxy utilizând funcția

predefinită area, din Matlab 7.9.

Figura 3. 73. Reprezentarea grafică folosind funcţia area cu level

Page 70: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

70

bar(y): reprezintă graficul cu bare al datelor conţinute în

vectorul y;

Exemplul 3. 65. Să se reprezinte graficul cu bare al datelor conţinute în vectorul

y=[1 3 7 6 5 2 3].

Figura 3. 74. Grafic pentru bar(y), cu y vector

Exemplul 3. 66. Creaţi un grafic de bare utilizând barele roşii, corespunzător

vectorului y = (75 91 105 123.5 131 150 179 203 226 249 281.5);

Figura 3. 75. Reprezentarea bar cu o singură culoare

Page 71: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

71

Exemplul 3. 67. Să se reprezinte graficul cu bare al datelor conţinute în matricea

(

1 )

.

Figura 3. 76. Grafic pentru bar(Y), cu Y matrice

bar(x,y): reprezintă grafic cu bare verticale bare, elementele

vectorului y, la locaţiile indicate de vectorul x, adică

y(x); valorile lui x trebuie să fie egal depărtate şi

ordonate crescător;

Exemplul 3. 68. Să se reprezinte graficul cu bare al datelor conținute în vectorii:

[1 ]

y=(66 56 50 3 89 5 78 65 4 25 99).

Page 72: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

72

Figura 3. 77. Reprezentare cu ajutorul funcției bar asupra vectorilor x,y

Exemplul 3. 69. Să se reprezinte graficul cu bare al datelor conținute în matricele

definite în Exemplul 3. 63. Să se reprezinte cu suprafețe diferit colorate al datelor conţinute în matricea

Figura 3. 78. Graficul cu bare al datelor conținute în matricele x și y

Exemplul 3. 70. Să se reprezinte grafic în aceeași figură, funcția [ ]

folosind funcția bar(x,y) și respectiv bar(y).

Page 73: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

73

Figura 3. 79. Reprezentare cu ajutorul funcției bar

bar(x,y, „grouped’): reprezintă barele grupate pe seturi de date și cu

aceeași culoare;

bar(x,y, „stacked’):

reprezintă barele secționate cu culori diferite pentru

seturile de date; de menționat că valorile lui x trebuie

să fie egal depărtate și crescatoare;

Exemplul 3. 71. Să se reprezinte graficul:

a) cu bare grupate pe seturi de date;

b) cu bare secționate cu culori diferite;

al datelor conţinute în matricea:

.

12112

982

652

322

y

Page 74: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

74

a)

Figura 3. 80. Reprezentarea bar grupat

b)

Figura 3. 81. Reprezentarea bar secţionat

Observația 3. 15. Pentru fiecare rând de matrice se afişează o bară. Înălţimea fiecărei

bare este suma elementelor în rând.

Page 75: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

75

bar(x,y,gros): reprezintă graficul funcției y(x), cu bare verticale, cu

grosimea barei date de gros:

- care poate lipsi și atunci, valoarea implicită

este gros=0.8;

- dacă gros<0.8 barele au grosimea de 0.2,

- iar dacă gros>1 atunci barele se unesc;

Exemplul 3. 72. Creaţi o figură cu două subgrafice. În partea superioară, se trasează

un grafic de bare. În subgraficul inferior, se realizează graficul de bare suprapus.

Figura 3. 82. Reprezentarea bar

Reprezentarea barelor orizontale se realizează cu funcția barh, care este asemănătoare

funcției bar.

Exemplul 3. 73. Să se reprezinte graficul cu bare orizontale al datelor conținute în

vectorii considerați în Exemplul 3.68.

Page 76: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

76

Figura 3. 83. Reprezentare utilizând funcția barh

Exemplul 3. 74. Să se ilustreze printr-un exemplu utilizarea funcției bar, cu bare

verticale și respectiv orizontale, având atributele: grupat, secţionat și gros.

Figura 3. 84. Reprezentarea bar (bare verticale) grupat, secţionat şi gros

Page 77: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

77

Figura 3. 85. Reprezentarea bar (bare orizontale) grupat, secţionat şi gros

pareto(y): reprezintă graficul cu bare al datelor conţinute în

vectorul y, punând în ordine descrescatoare

componentele lui y;

Exemplul 3. 75. Să se reprezinte printr-o diagramă pareto datele conţinute în vectorul

Figura 3. 86. Reprezentarea grafică cu funcţia pareto

Diagrama pareto precedentă poate fi obținută și cu ajutorul secvenței:

Page 78: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

78

Observația 3. 16. Înălțimea barelor corespunde valorilor lui y, ordonata din stânga

graficului are înălțimea cât ysum , iar cea din dreapta dă valoarea procentuală yy sum ,

după cum se observă din Figura 3.86. Curba continuă trasează diferența, valoarea sumei și

valoarea fiecărei valori a lui y.

pie(x,etichetă):

realizează o diagramă circulară (așa numita diagramă

“plăcintă”) cu valorile unui vector x, având specificată

semnificația în etichetă;

Trebuie menţionat că valorile lui x sunt normalizate, iar dacă 1sum x , atunci sunt

trecute valorile efective și apare un segment de cerc.

Exemplul 3. 76. Realizați o diagram circulară pe baza valorilor vectorului

5432x , caracterizat de etichetele: Pitești, Vâlcea, Olt, Dolj.

Figura 3. 87. Reprezentarea grafică cu funcția pie

Graficele în trepte sunt utilizate la reprezentarea diagramelor sistemelor numerice de

eşantionare şi prelucrare a datelor.

stairs(y): trasează graficul în trepte al elementelor vectorului y;

Exemplul 3. 77. Trasați graficul în trepte al componentelor vectorului ,6,0x

.3.0h

Page 79: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

79

Figura 3. 88. Graficul în trepte al elementelor vectorului x

stairs(x,y): trasează graficul în trepte al elementelor vectorului y la

locaţiile specificate de vectorul x; valorile lui x trebuie

să fie egal depărtate şi crescătoare;

Exemplul 3. 78. Să se traseze graficul în trepte al funcției xy sin în fiecare dintre

cazurile:

a) ,6,0x ;3.0h

Figura 3. 89. Reprezentarea grafică cu funcția stairs

b) ,3,0 x .10h

Page 80: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

80

Figura 3. 90. Reprezentarea grafică cu funcția stairs

[xb,yb]=stairs(y): determină vectorii xb şi yb, astfel încât plot(xb,yb) să

poată trasa graficul în trepte al elementelor vectorului y;

[xb,yb]=stairs(x,y): determină vectorii xb şi yb, astfel încât plot(xb,yb) să

poată trasa graficul în trepte al funcției y(x);

Exemplul 3. 79. Determinați vectorii xb şi yb, astfel încât plot(xb,yb) să poată trasa

graficul în trepte al funcției ,sin xy

,6,0x ;3.0h

Figura 3. 91. Reprezentarea grafică cu funcția stairs

Page 81: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

81

Reprezentarea grafică a datelor cu bare de eroare ataşează fiecărei perechi (x,y)

eroarea precizată într-un vector cu aceleaşi dimensiuni.

errorbar(x,y,e):

reprezintă grafic cu bare de eroare, funcția y(x), astfel

încât lungimea barelor ce reprezintă eroarea este

conţinută în vectorul e;

Barele de erori se reprezintă simetric în raport cu ordonata y, ceea ce presupune o

asociere de erori pozitive sau negative, cu aceeaşi probabilitate. Segmentele de eroare sunt de

înălţime 2e şi se trasează pe curba y(x). Figura obţinută reprezintă plaja de valori pe care o

poate lua funcţia y cu eroarea e.

Dacă x şi y sunt matrice de aceeaşi dimensiune, funcţia errorbar va reprezenta

graficul cu bare de eroare pentru fiecare coloană în parte.

Exemplul 3. 80. Să se reprezinte un grafic cu bare de erori pentru ,sin xy ,6,0x

.2.0h

Figura 3. 92. Reprezentarea grafică cu errorbar

Calculul şi reprezentarea grafică a histogramelor se face cu funcţia hist.

hist(y):

trasează histograma cu 10 segmente a datelor

vectorului y;

Page 82: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

82

Exemplul 3. 81. Să se reprezinte un grafic cu histograme următoarea secvenţă

,3,3x .3.0h

Figura 3. 93. Reprezentarea grafică cu hist

hist(y,nb):

trasează histograma cu nb segmente a

componentelor vectorului y;

hist(u,v): realizează reprezentarea unei histograme, pe baza

intervalelor de valori (valorile fiind conţinute în

vectorul u) şi a frecvenţelor absolute

corespunzătoare acestor valori (componente ale

vectorului v);

Exemplul 3. 82. Să se genereze histograma unui vector cu elementele distribuite

normal (Gaussian).

Page 83: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

83

Figura 3. 94. Reprezentarea grafică cu hist

[n,x]=hist(y):

returnează vectorii n şi x conţinând frecvenţa de

apariţie şi localizarea celor 10 segmente aparținând

histogramei corespunzătoare datelor vectorului y ;

[n,x]=hist(y,nb):

determină vectorii n şi x, ce conţin frecvenţa de

apariţie şi localizarea segmentelor aparținând

histogramei trasată folosind hist(y,nb);

[n,x]=hist(u,v): returnează vectorii n şi x, ce includ frecvenţa de

apariţie şi localizarea segmentelor corespunzătoare

histogramei trasată cu hist(u,v);

Vectorii n şi x pot fi folosiți ulterior în vederea construirii histogramei cu bar(x,n).

Aceste proceduri se utilizează în situaţiile în care este necesară o mai mare flexibilitate în

reprezentarile grafice. Combinarea histogramei cu instrucţiuni mai elaborate de trasare şi

reprezentare grafică poate conduce la obţinerea unor grafice deosebit de sugestive

În MATLAB există două tipuri de fișiere:

A) fișiere de date;

B) fișiere de program (scripturi sau funcții).

Fișierele de date ce pot fi definite și utilizate în programe MATLAB sunt denumite

fișiere MAT. Acestea sunt fișiere binare (cu extensie .mat), care sunt utilizate pentru a stoca și

de a restabili variabilele utilizate în spațiul de lucru.

Page 84: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

84

Exemplul 3. 83. Reprezentaţi grafic în Matlab 7.9 printr-o histogramă, notele

obţinuite de cei 50 de studenţi înscrişi la cursul de Statistică. Notele se vor citi dintr-un fişier

binar.

Figura 3. 95. Histograma notelor obţinuite de cei 50 de studenţi înscrişi la cursul de Statistică

Reprezentarea unei histograme în coordonate polare se face cu funcţia rose; se

apelează cu una dintre sintaxele:

rose(x):

desenează histograma în coordonate polare,

corespunzătoare unghiurilor ;2,0 x

rose(x,N):

desenează histograma în coordonate polare,

corespunzătoare la N unghiuri ,2,0 x ce

semnifică numărul subintervalelor în care este

împărțit intervalul ;2,0 valoarea implicită pentru

N este 20.

Exemplul 3. 84. Să se reprezinte grafic histograma a 100 numere aleatoare în

coordonate polare.

Page 85: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

85

Figura 3. 96. Histograma a 100 numere aleatoare în coordonate polare

[t,r]=rose(x):

returnează vectorii t și r astfel încât, cu ajutorul

funcției polar(t,r) să putem reprezenta histograma în

coordonate polare, corespunzătoare unghiurilor

;2,0 x

[t,r]=rose(x,N):

returnează vectorii t și r astfel încât funcția

polar(t,r) trasează histograma în coordonate polare,

corespunzătoare la N unghiuri ;2,0 x

Reprezentarea discretă a datelor se face cu funcţia stem, sub forma unor linii

terminate cu cerculeţ la extremitatea opusă axei.

stem(y): trasează un grafic din linii cu cerculeţ, cu elementele

vectorului y;

Exemplul 3. 85. Să se reprezinte grafic funcţia discretă sinus:

.3.0,20,0,5

sin hnnny

Page 86: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

86

Figura 3. 97. Reprezentarea discretă a datelor

stem(x,y): trasează un grafic din linii terminate cu cerculeţ, cu

locaţiile specificate de vectorul x, adică y=y(x).

Valorile lui x trebuie să fie egal depărtate şi

crescătoare;

Exemplul 3. 86. Să se realizeze reprezentarea grafică discretă prin “tulpini” a funcției

.10

,3,0,sin

hxxy

Figura 3. 98. Reprezentarea discretă prin “tulpini”

Page 87: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

87

stem(x,y, ‟linie_tip‟): trasează un grafic din linii de tipul şi culoarea

precizată în şirul de caractere ‘linie_tip’, așa cum a

fost precizat la funcţia plot;

Plotarea unei matrice dispersate se face cu funcția plotmatrix, având una dintre

sintaxele:

plotmatrix(x,y): prezintă dispersia coloanei x funcție de coloana y;

Dacă x este o matrice mp , iar y o matrice np , atunci funcția plotmatrix produce o

matrice .mn

plotmatrix(y): este asemănătoare cu comanda plotmatrix(x,y), cu

excepţia faptului că diagonala este înlocuită prin

hist(y(:,i)).

Exemplul 3. 87. Să se ilustreze printr-un exemplu utilizarea funcției plotmatrix.

Figura 3. 99. Reprezentarea grafică cu funcţia plotmatrix

scatter(x,y,s,c): realizează plotarea dispersiei vectorului x, funcție de

vectorul y (x și y având aceeași dimensiune), cu

markere (cerculețe implicit) de arie determinată de

valorile vectorului s (în puncte^2) și fiecare punct

colorat, conform valorilor vectorului c;

Dacă s este scalar, atunci fiecare marker va avea aceeși dimensiune.

Page 88: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

88

3.3. Aplicaţii propuse

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

a) 232 xxxf , 5,5x

b)

2

1

5ln

5

x

xxf , 5,3x

c) 21

2arcsin

x

xxf

, 5,5x

d) xxf x sine sin , 2,0x

e) xxxf sintgtgsin , ,x

f) 1e1

xxxf , 10,10x

g)

xxg

xxf

arccos

arcsin, 1,1x

h)

0,0

0,1

cos

x

xx

xxf , 5.0,5.0x , 01.0h

i)

xgxfxh

xxfxg

x

xxxf

23cos

4

1

32

32

2

22

, 5,5x

2. Să se reprezinte, în acelaşi grafic, funcţiile sin şi cos pe intervalul 4,0 .

3. Reprezentaţi grafic funcţia f(x) = sin(x) în grade, de la 0 la 360.

4. Să se reprezinte grafic triunghiul ale cărui varfuri au coordonatele (1, -3), (2,7) şi (9, -4).

5. Să se reprezinte grafic funcţia y(t)=6e-2t

pentru intervalul de timp t=(0-4) secunde, avand

pasul de eşantionare de 0.05.

6. Să se reprezinte pe acelaşi grafic tensiunea (u(t)) şi curentul (i(t)) unui circuit RL, pentru

intervalul de timp t=(0-20) ms ştiind că u(t)=10cos(377t) şi i(t)=5cos(377t+600).

7. Să se traseze graficul funcţiei f(x) = sin x : [-2 , 2] şi g(x) = ex : [-2, 2] .

Page 89: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

89

8. Reprezentaţi grafic în coordonate polare rădăcinile de ordinul trei (cubice) ale unităţii.

9. Reprezentați grafic funcția: .sin,cosmax xxxf

10. Rezolvaţi ecuaţia transcendentă:

5.02cos24sin 5.03 tete tt

folosind metoda grafică.

11. Rezolvaţi sistemul neliniar:

0cos

0sin

222

2222

yx

xxy

eyyxx

xyeex

folosind metoda grafică.

12. Să se reprezinte grafic vectorii z1=2-5i şi z2=3+2i.

13. Utilizând funcţia bar să se realizeze graficul lui ex pentru -2.9< x<2.9

14. Să se reprezinte graficul în trepte al funcţiei y=sin(x) xє(0,10) cu pasul 0.25.

15. Să se reprezinte graficul erorilor pentru valori generate aleator între -2 şi 2

16. Reprezentarea în coordonate polare ale functiei f(x)=sin(2t)cos(2t), cu t=0:2*pi.

17. Să se reprezinte grafic o reprezentare procentuală a distribuţiei notelor obţinute de o grupă

de 20 studenţi la examenele susţinute în anul II la disciplina “Prelucrare grafică asistată de

calculator” şi distribuţia acestora. Se consideră următoarele note: 2, 4, 7, 2, 8, 3, 10, 3, 8,

2, 3, 1, 6, 7, 6, 5, 7, 7, 7, 7.

18. Să se reprezinte grafic cu funcţia stem un semnal discret obţinut prin eşantionarea unui

semnal sinusoidal de frecvenţă 300 Hz, de durată 10 milisecunde şi amplitudine 1.

Frecvenţa de eşantionare Fs = 4kHz.

19. Să se reprezinte grafic cu funcţia plot un semnal sinusoidal de frecvenţă 50 Hz, de durată

0.2 secunde şi amplitudine 2. Se va alege rezoluţia temporală 1ms.

20. Modificaţi exerciţiul 19 astfel:

a) Modificaţi pasul de variaţie a variabilei t la 0.01 şi apoi la 0.0002. Comentaţi

diferenţele.

b) Măsuraţi pe grafic perioada semnalului sinusoidal în cele 3 situaţii.

c) Generaţi un semnal cosinusoidal de frecvenţă 20 Hz pe care să-l reprezentaţi cu

culoare roşie pe acelaşi grafic peste semnalul sinusoidal

21. Să se reprezinte grafic funcţia discretă sinus: .4,0,sin 2 xxexy x

22. Să se reprezinte pe acelaşi grafic, tipărind axa y pe ambele părţi, două funcţii matematice

(exp şi sin) utilizând comanda plot.

Page 90: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

90

23. Să se realizeze secvența de program din care rezultă figura următoare.

24. Reprezentaţi grafic în coordonate polare următoarele funcţii:

a) trifoiul cu patru foi:

2,0,2sin ttatf ;

b) Scarabaeus:

2,0,cos2cos ttatbtf .

3.2. Bibliografie

1. Ahn, S. H, 2009. Math. http://www.songho.ca/math/index.html.

2. G. Anastassiou, I. Iatan, Intelligent Routines: Solving Mathematical Analysis with

Matlab, Mathcad, Mathematica and Maple, Springer, 2013.

3. A. K. Awasthi, S.Chaudhary, Engineering Mathematics, Darbose, Inc., India.

4. D. Baez- Lopez, Matlab with Application to Engineering, Physics and Finance, Taylor &

Francis Group, 2010.

5. N.H. Bingham, J. M. Fry, Regression. Linear Models in Statistics, Springer, New York,

2010.

6. D.M. Etter, D.C. Kuncicky, Introduction to MATLAB®, E-Source, Prentice Hall, Upper

Saddle River, New Jersey, 1999.

7. M. Ghinea, V. Fireţeanu, Matlab: Calcul numeric- Grafică-Aplicaţii, ed. Teora, Bucureşti,

1998.

Page 91: Capitolul 3. Reprezentări grafice 2D în Matlabiulianaiatan.synthasite.com/resources/cap3.pdf · Matlab 7.9 permite reprezentrea grafică în coordonate carteziene nu numai a punctului,

REZOLVAREA UNOR PROBLEME DE MATEMATICĂ APLICATĂ ÎN INGINERIE CU MATLAB

91

8. B.D. Hahn, Essential MATLAB® for Scientists and Engineers, Arnold, London, 1997.

9. T.L. Harman, J. Dabney, N. Richert, Advanced Engineering Mathematics with MATLAB®

- Second Edition, Brooks/Cole – Thomson Learning, Australia, 2000.

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

11. I. Iatan, F. Enescu, Rezolvarea unor probleme de matematică aplicată în inginerie cu

Matlab, în curs de publicare.

12. N. Martaj, M. Mokhtari, Matlab R2009, Simulink et Stateflow pour Ingénieurs,

Chercheurs et Etudiants, Springer, 2010.

13. J.H. Mathews, K.D. Fink, Numerical Methods Using MATLAB – Third Edition, Prentice

Hall, Upper Saddle River, New Jersey, 1999.

14. G.W Middleton, Data Analysis in the Earth Sciences using MATLAB®, Prentice Hall,

Upper Saddle River, New Jersey

15. D.C. Montgomery, E.A. Peck, G. G. Vining, Introduction to Linear Regression Analysis,

third edition, Wiley, 2001.

16. S. Nakamura, Numerical Analysis and Graphic Visualization with MATLAB – Second

Edition, Prentice Hall PTR, Upper Saddle River, New Jersey, 2002.

17. W.J. Palm III, Introduction to MATLAB® for Engineers, B.E.S.T Series, McGraw-Hill,

Boston.

18. R. L. Parker, L. Shure, J. Hildebrand, "The application of inverse theory to seamount

magnetism", Reviews of Geophysics vol. 25, pp 17-40, 1987

19. V. Postelnicu, S. Coatu, Mică enciclopedie matematică, ed. Tehnică, Bucureşti, 1980.

20. A. Quarteroni, F. Saleri, Scientific Computing with Matlab and Octave, Springer, 2006.

21. V. Rovenski, Modeling of Curves and Surfaces with Matlab, Springer, 2010.

22. I. Toma, I. Iatan, Analiză numerică. Curs, aplicaţii, algoritmi în pseudocod şi programe

de calcul, Ed. Matrix Rom, Bucureşti, 2005.

23. R. Trandafir, I. Iatan, Modelare- Simulare. Noţiuni teoretice şi Aplicaţii, Ed. Conspress,

Bucureşti, 2013.

24. C.F. Van Loan, Introduction to Scientific Computing – A Matrix-Vector Approach Using

MATLAB®,” Prentice Hall, Upper Saddle River, New Jersey, 2000.

25. D. Xue, Y. Chen, Solving Applied Mathematical Problems with Matlab, Taylor & Francis

Group, 2009.

26. Web site: Quaternions and Rotations, 2010,

http://web.cs.iastate.edu/~cs577/handouts/quaternion.pdf