Вы находитесь на странице: 1из 21

Introduo ao MatLab Aula 3

Sistemas Multimdia 3 ano Engenharia Informtica Universidade Catlica de Angola

Vectores e Matrizes
EXAMPLO:

>> a=2:3, b=[a 2*a;a/2 a] a= 2 3 b= 2.0000 3.0000 4.0000 6.0000 1.0000 1.5000 2.0000 3.0000 >> c=[b ; b]

c=
2.0000 1.0000 2.0000 1.0000 3.0000 1.5000 3.0000 1.5000 4.0000 2.0000 4.0000 2.0000 6.0000 3.0000 6.0000 3.0000

Vectores e Matrizes
>> D=c(2:3, 2:3)
D= 1.5000 3.0000 2.0000 4.0000

>> who
Your variables are: Dabc

Vectores e Matrizes
Examplo:
>> a=magic(4) a= 16.0000 2.0000 3.0000 5.0000 11.5000 10.0000 9.0000 7.0000 6.0000 4.0000 14.5000 15.0000 13.0000 8.0000 12.0000 1.0000

>> sum(a) = sum(a') = [34 34 34 34] >> trace(a) = 34 A(i, j) indexa fila i, coluna j

Os ndices comeam a 1 no a zero.


>>a(a, 3) = 3 >>a(3, 1) = 39 >>a(:, 3) = 3 10 6 15

Vectores e Matrizes

>>a(2:3,3:4) =
10 8 2 12 >>a([1 4],[1 4]) = 16 13 4 1 >>a(8) = 14 >>[1:3] + [4:6] = 5 7 9 A=zeros(2,2); B=(ones(3,2); C = [ [A-1;B+1], [B+3;A-4] ], C= -1 -1 4 4 -1 -1 4 4 2 2 4 4 2 2 -4 -4 2 2 -4 -4

Funes elementares de desenho


O MatLab suporta muitos tipos de desenhos para grficos e superfciesMATLAB :
Linhas bi-dimensionais (xversus y), a cheio, grfico de barras, queijos, desenhos paramtricos, eixos logartmicos, suprfcies, paramtricos 3D, esfricos

Para pr-visualizar alguma dessas potencialidades podemos olhar para as DEMOs

Funes elementares de desenho


Desenhos simples 2D
X e Y dois vectores com as mesmas dimenses O comando plot(x,y)
Abre uma janela grfica Desenha um grfico dos elementos de X contra Y

Funes elementares de desenho


Desenhos simples 2D

Funes elementares de desenho


>>%Exemplo do desenho duma sequncia >>t=-1:0.01:1; >>f=4.5*cos(2*pi*t - pi/6); >>%Instrues para desenho, nomes dos eixos >>plot(t,f),title('Fig.E1.2a'); >>axis([-1,1,-6,6]); >>xlabel('t'); >>ylabel('f(t)'); >>text(-0.6,5,'f(t) = A cos(wt + phi)'); >>grid;

Funes elementares de desenho


Desenho do exemplo anterior

Funes elementares de desenho


PLOT(X,Y) desenha o vector Y versus o vector X TITLE('text') adiciona texto no topo do desenho actual. XLABEL('text') adiciona texto junto do eixo dos X. YLABEL('text') adiciona texto junto do eixo dos Y. GRID, por si coloca as grelhas principais dos actuais eixos GTEXT('string') ?? SUBPLOT(m,n,p),ou SUBPLOT(mnp), divide a janela da figura numa matriz mxn de eixos pequenos. STEM(Y) desenha a sequncia de dados Y como stems do eixo dos x terminando como crculos para os valores de dados. SEMILOGX(...) idntico ao PLOT(...), a menos do uso duma escala logartmica para o eixo dos X. SEMILOGX(...) idntico ao PLOT(...), a menos do uso duma escala logartmica para o eixo dos X.

Funes elementares de desenho


Por defeito a escala dos eixos feita automaticamente. Isto pode ser redefinido pelo comando axis. If c = [xmin,xmax,ymin,ymax] for um vector de 4 elementos, ento axis(c) estabelece a escala dos eixos para os limites definidos. Por si s o comando axis disponibiliza a escala actual para os grficos subsequentes. Colocando novamente axis regressa escala automtica. O comando axis('square') assegura o uso da mesma escala para ambos os eixos. Para mais informao ver comando help axis.

Funes elementares de desenho


>>%Example 1.2 >>t=-0.5:0.01:3; >>t0=0 >>u=stepfun(t,t0) >>gprime=3.17*exp(-1.3*t).*cos(10.8*t + 1.15).*u; % NOTE the use of the .* operator. The terms 3.17*exp(-1.3*t), % cos(10.8*t + 1.15), and u are all vectors. We want the % components of these vectors to be multiplied by the corresponding % components of the other vectors, hence the need to use .* rather than *. % The following statements plot the sequence and label the plot >>plot(t,gprime); >>axis([-.5,3,-3,2]); >>title('Fig.E1.2d'); >>xlabel('t in seconds'); >>ylabel('gprime(t)'); >>text(-0.6,5,'f(t) = A cos(wt + phi)'); >>grid;

Funes elementares de desenho


Desenho

Funes elementares de desenho


Duas formas de fazer mltiplos desenhos num nico grafo
>>t = 0:.01:2*pi; >>y1 = sin(t); y2=sin(2*t); y3=sin(4*t) >>plot(t,y1,y2,y3) E formando a matriz Y com os valores das funes como colunas. >>t = 0:.01:2*pi; >>y = [sin(t)', sin(2*t)', sin(4*t)'] >>plot(t,y) Outra forma o comando hold. O comando hold mantm o ecr actual dos grficos de tal forma que os desenhos subsequentes possam ser sobrepostos. Pode-se redefinir os tipos de linha e de pontos usados por defeito. >>t = 0:.01:2*pi; >>y1 = sin(t); y2=sin(2*t); y3=sin(4*t) >>plot(t,y1,'--',y2,':',y3,'+')

Funes elementares de desenho


Colors y yellow M magenta C cyan R red G green B blue W white K black Line Styles . point o circle x x-mark + plus - solid * star : dotted -. Dashdot -- dashed

Mais tipos de marcas so ; square(s), diamond(d), up-triangle(v), downtriangle(^), left-triangle(<), right-triangle(>), pentagram(p), hexagram(h) Ver tambm help plot para mais cores de linhas e marcas.

Funes elementares de desenho


O comando subplot pode ser usado para dividir o ecr de forma a visualizar vrios desenhos simultaneamente. Ver help subplot. Examplo para uso de subplot: >>% Line plot of a chirp >> x=0:0.05:5; >> y=sin(x.^2); >> subplot(2,2,1), plot(x,y); >> % Bar plot of a bell shaped curve >> x = -2.9:0.2:2.9; >> subplot(2,2,2), bar(x,exp(-x.*x)); >> % Stem plot >> x = 0:0.1:4; >> subplot(2,2,3), stem(x,y) >> % Polar plot >> t=0:.01:2*pi; >> subplot(2,2,4), polar(t,abs(sin(2*t).*cos(2*t)));

Funes elementares de desenho


Exemplo subplot

Salvaguarda e Carregamento

Quando se usa o MATLAB, pode desejar guardar os vectores e matrizes que acabou de definir. SAVE, guarda as variveis do espao de trabalho para disco SAVE FILENAME guarda todas as variveis do espao de trabalho para um ficheiro binrio "MAT designado por FILENAME.mat. Os dados podem ser recuperados com LOAD. Se FILENAME no tiver extenso, assumido o .mat . SAVE, sem mais nada cria o ficheiro binrio "MAT" designado'matlab.mat'. D um erro se no consguir escrever em 'matlab.mat'. Para guardar o ficheiro na rea de trabalho escreva >>save filename SAVE FILENAME X gurada apenas X. SAVE FILENAME X Y Z guarda X, Y, e Z.

Salvaguarda e Carregamento
LOAD carrega as variveis do espao de trabalho do disco. LOAD FILENAME carrega todas as variveis dum ficheiro dado o nome de ficheiro absoluto ou relativo Se FILENAME no tiver extenso LOAD verifica FILENAME e FILENAME.mat e trata-a como uma "MAT-filebinria. Se FILENAME tiver uma extenso diferente de.mat, tratada como ASCII. LOAD, por si s usa uma "MAT-file" designada por 'matlab.mat'. Devolve erro se 'matlab.mat' no existir. LOAD FILENAME X carrega s o X. LOAD FILENAME X Y Z ... Carrega as varveis especificadas. >>load x, y, z Ver help save e help load para mais informao

Ficheiros M
Os ficheiros M so macros de comandos do MATLAB que so armazendas como ficheiros de texto com extenso "m", isto nomeficheiro.m. Um ficheiro M tanto pode ser uma funo com variveis de E/S ou uma lista de comandos.

Вам также может понравиться