A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

MATLAB-CURSO BÁSICO Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. Joseph Kalil Khoury Junior, Prof. UFRRJ-IT/DE.

Apresentações semelhantes


Apresentação em tema: "MATLAB-CURSO BÁSICO Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. Joseph Kalil Khoury Junior, Prof. UFRRJ-IT/DE."— Transcrição da apresentação:

1 MATLAB-CURSO BÁSICO Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. varella@ufrrj.br varella@ufrrj.br Joseph Kalil Khoury Junior, Prof. UFRRJ-IT/DE. kalil@ufrrj.br kalil@ufrrj.br Keilla Boehler, Aluna do Curso de Engenharia Agrícola, UFRRJ. keillambidao@ig.com.br keillambidao@ig.com.br UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO IT – Departamento de Engenharia MÁQUINAS E ENERGIA NA AGRICULTURA Ambiente de computação para desenvolvimento de sistemas sofisticados

2 Conteúdo  Introdução Introdução  Principais Recursos do Programa Principais Recursos do Programa Principais Recursos do Programa  Janela Principal do Programa Janela Principal do Programa Janela Principal do Programa  Principais Sub-janelas do Programa Principais Sub-janelas do Programa Principais Sub-janelas do Programa  Manipulação de Matrizes Manipulação de Matrizes Manipulação de Matrizes  Matrizes e gráficos para análise de dados Matrizes e gráficos para análise de dados Matrizes e gráficos para análise de dados  Janelas e Ferramentas Janelas e Ferramentas Janelas e Ferramentas  Comandos de alto nível Comandos de alto nível Comandos de alto nível  Operações com Vetores Operações com Vetores Operações com Vetores  Funções Matemáticas Funções Matemáticas Funções Matemáticas  Matrizes Matrizes  Comando for-switch-case-otherwise-while Comando for-switch-case-otherwise-while Comando for-switch-case-otherwise-while  Plotagem de gráficos Plotagem de gráficos Plotagem de gráficos  Representações em coordenadas polares Representações em coordenadas polares Representações em coordenadas polares  Arquivos, extensões e rotinas Arquivos, extensões e rotinas Arquivos, extensões e rotinas  Criação de uma nova função Criação de uma nova função Criação de uma nova função  Gráficos tridimensionais Gráficos tridimensionais Gráficos tridimensionais  Mapa de Cores Mapa de Cores Mapa de Cores

3 Introdução  O programa computacional MATLAB é um ambiente de computação técnico-científica para o desenvolvimento de sistemas sofisticados ( MATSUMOTO, 2002);  É extensivamente usado para exploração, análise e resolução de problemas em diversas áreas do conhecimento;  Apresenta diversos pacotes de ferramentas ‘toolbox’ que são um conjunto de algoritmos especialmente desenvolvidos para aplicações específicas.

4 Principais Recursos do Programa  Linguagem de alto-nível para computação técnica  Ambiente de desenvolvimento e administração de código, arquivos, e dados  Ferramentas interativas para exploração, desígnio e resolução de problemas  Funções matemáticas para álgebra linear, estatísticas, análise de Fourier, filtragem, otimização, e integração numérica  Funções para visualizar dados de gráficos 2-D e 3-D  Ferramentas para construção de interfaces com usuário  Funções que integram MATLAB funcionam como base de algoritmos com aplicações externas e idiomas, como C, C++, Fortran, Java, COM, e Microsoft Excel,

5 Janela Principal do Programa clc – limpa tela whos – exibe variáveis memória clear – limpa varáveis memória

6 Principais Sub-janelas do Programa Janela de comando Workspace Comand Window

7 Manipulação Matrizes  Comando xlsread(‘*.xls) carrega o arquivo Excel;  Quantidades de cada item determinadas em uma matriz;  Valores de brix

8 Matrizes e gráficos >> plot(x,y,'r.')

9 Gráficos para análise de dados >> plot(revendedor,grafico(:,2)) >> plot(revendedor,grafico(:,3)) >> plot(revendedor,grafico(:,4))

10 Janelas e Ferramentas Janelas e Ferramentas  Escolha de diretório;  Utilização de ferramenta de busca para opção de comando;  Leitura de imagem em formato.JPG  Salvar a variável em arquivo.m que consta em workspace.  Amostragem para análise da composição da imagem.  Carregando variável salva para ser usada em outro trabalho

11 Comandos de alto nível  As linhas de programação ficam gravadas em arquivos M-file ou arquivos de extensão.m  O comando figure é um suporte sempre necessário quando deseja-se amostrar imagens. É designado através da interface programa-usuário

12 Operações com Vetores Criação >>t=[0 2 4 6 8 10 12 14 16 18 20] Ou >>t1= 0:2:20 >> h=1:3:32 Manipulação >> h1=h+2 >> v=t+h >> t1=t*5 >> b=t*h‘ >> b1=t.*h >> b2=t/h >> who Your variables are: h t >> whos Name Size Bytes Class Name Size Bytes Class h 1x11 88 double array h 1x11 88 double array t 1x11 88 double array t 1x11 88 double array Grand total is 22 elements using 176 bytes

13 Funções Matemáticas  Para facilmente escrever linhas de expressão matemática, Matlab disponibiliza bloco de códigos que realizam tarefas específicas.  Contém funções padrão como sin, cos, tan, sec, exp, log, sqrt,sum, mean. Constantes geralmente usadas como pi, e i ou j para a raiz quadrada de -1, também está incorporado em Matlab.  Encontra-se todas as funções matemáticas elementares listadas através do comando: >> help elfun

14 Implementação de Funções >> x=4; y=3; >> t=(2*x^2-5*y)/(sqrt(2*y^(3-x)+17)) t = 4.0446 4.0446 >> w=(5*x+3-x^3-y^3)/(2*y-x-4*y^2) w = 2 >> q=(sin(w)^3-t^4/10+tan(w))*(-sqrt(t*3+1))/12*w q = 17.0289 17.0289

15 Matrizes >> a = [1 2 3;4 5 6;7 8 9] >> a1 = [1 2 3 4 5 6 4 5 6 7 8 9] 7 8 9] >> a2 = [1 2 3,4 5 6,7 8 9] >> b=[1 2 2;3 2 4; 5 2 1]; >> d=[b,a]  help matfun  Livro de algebra linear exercício O cálculo de transpostas, inversas, determinantes,diagonais, covariâncias resume-se a comandos como: >> inv(x) >> b=rand(6) >> var(b) >> cov(b) Sendo a matriz de variância diagonal da matriz de covância

16 Funções para Matrizes >> ones(3) matriz de uns >> zeros(5) matriz de zeros >> rand(3) matriz com elementos aleatórios distribuídos uniformemente >> randn(4) matriz com elementos aleatórios distribuídos normalmente >> eye(3) matriz identidade >> ones(3,1,2) matriz de uns com especificação da dimensão >> a=ones(2,5); b=zeros(2,5); c=ones(1,5)*3;vertcat(a,b,c) comando que concatena matrizes verticalmente comando que concatena matrizes verticalmente >> repmat(a,2,3) >> m = size(rand(2,3,4),2) em que o ultimo algarismo responde sobre a dimensão dois, a das colunas. Poderia ser 3, a das linhas. E 4, a das bandas. em que o ultimo algarismo responde sobre a dimensão dois, a das colunas. Poderia ser 3, a das linhas. E 4, a das bandas.>>d=peaks(25);

17 c =input('cotas das amostras ordenadas na sequencia da malha:') %[10.0000,10.2800,10.2000,10.3000,10.3100;10.3000,10.3200,10.2800,10. 3100,1 %0.4000;10.4800,10.5000,10.5500,10.4800,10.5500;10.5600,10.7000,10.80 00,10. %7500,10.7800];a=size(c,1);b=size(c,2); N=a*b; N=a*b; Hc=(sum(sum(c,1)))/N; Hc=(sum(sum(c,1)))/N; dif=c-Hc; dif=c-Hc; inda=find(dif 0); dist=input('distancia entre pontos da malha:'); area=dist^2; volcorte= sum(dif(indc))*area; volaterro=sum(dif(inda))*area;  Sistematização de terreno pelo ‘Método do Plano Único’ Programação simples

18 Comandos for-if-else-end-switch-case- otherwise-while >> for a=1:10 a<=3; C(a)=a^2; a<=3; C(a)=a^2; a=3:7; C(a)=a+5; a=3:7; C(a)=a+5; a=7:10; C(a)=a; a=7:10; C(a)=a; end end >> stem(C) A forma básica do comando for é: for índice = começa:incremento:para declaraçõesend >> for m=1:10 x(m)=m^2;end; >> x(3) ans = 9

19 Estruturas if-else-end  Matlab tem quatro tipos de afirmações são if, elseif, else,end  Elas fazem o controle de fluxo baseadas no teste lógico.  Em sua forma básica:  If teste  declarações  End function retorno=posneg(ent) if all(ent>0) retorno=1; retorno=1; elseif all (ent<0) retorno=-1; retorno=-1;else retorno=0; retorno=0;end  O teste é uma expressão em que há 1(verdadeiro) ou 0(falso) é executado entre o if e end e retorna se o teste der verdadeiro, quando falso são ignoradas as declarações.  Testes adicionais podem ser feitos usando elseif e else.

20 Estrutura switch, case, otherwise switch x case 1 disp('x is 1'); case {2,3,4} disp('x is 2, 3 or 4'); case 5 disp('x is 5'); otherwise disp('x is not 1, 2, 3, 4 or 5'); end >> x=5; Pressione o botão run: >> x is 5 M-file switchx.m  A forma básica de parâmetros do switch e´:  switch teste  case resultado1  declaração  case resultado2  declaração ...  otherwise  declaração  end  A expressão em switch case só pode ser um escalar ou uma string.

21 While  while teste  declaração  end n = 1; while sum(1:n)<=1000 n = n+1; end  As declarações são executadas repetidamente enquanto o valor de teste for igual a 1, por exemplo, achar o primeiro inteiro n para qual 1+2+· · ·+n é maior que 1000:

22 Área de um Polígono com While mat=input('matriz de coordenadas x e y dos pontos da poligonal:') matr=vertcat(mat,mat(1,:)); x=matr(:,1);y=matr(:,2); a=size(x,1); n=1; soma=0; while n<a; mult=x(n,1)*y(n+1,1); soma=soma+mult; n=n+1; end m=1; soma2=0; while m<a; mult2=x(m+1,1)*y(m,1); soma2=soma2+mult2; m=m+1; end area=abs((soma-soma2)/2)

23 Plotagem de Gráficos  O comando axis ajusta a escala do gráfico às coordenadas dos pontos plotados.  Sintaxe: axis([xmin xmax ymin ymax]) >> x1=-1;y1=-1;x2=1;y2=-1;x3=-1;y3=1;x4=1;y4=1; >> plot(x1,y1,'o',x2,y2,'o',x3,y3,'o',x4,y4,'o') >> axis([-2 2 -2 2]) >> axis square %forma quadrada >> axis normal ou >> x=[-1 1 -1 1] ; y=[-1; -1; 1; 1] ; plot(x,y,'.r');axis([-2 2 -2 2])  subplot trabalha com multiplicidade de gráficos  renda= [3.2 4.1 5.0 5.6];  gastos= [2.5 4.0 3.35 4.9];  subplot(2,1,1); plot(renda)  subplot(2,1,2); plot(gastos)

24 Comando subplot >> t = 0:.1:2*pi; subplot(2,2,1) plot(cos(t),sin(t )) subplot(2,2,2) plot(cos(t),sin(2 *t)) subplot(2,2,3) plot(cos(t),sin(3 *t)) subplot(2,2,4) plot(cos(t),sin(4 *t)) subplot 221 plot(1:10) subplot 222 plot(0,’*’) subplot 212 plot([1 0 1 0])  Sendo o primeiro índice o número de eixos na vertical, o segundo número de eixos na horizontal e o último o número de ordem ou posição.

25 Propriedades de Gráficos  Para colocar rótulos em gráficos pode-se usar a função xlabel, ylabel, and title >> xlabel(‘eixo x'); ylabel(‘eixo y'); title(‘pontos no plano') >> xlabel(‘eixo x'); ylabel(‘eixo y'); title(‘pontos no plano')  Inserir texto em ponto de sua escolha no gráfico >>gtext('P1');gtext('P2');gtext('P3');gtext('P4') >>gtext('P1');gtext('P2');gtext('P3');gtext('P4') Pode-se especificar o estilo de linha, o símbolo que marca o ponto e cor do gráfico ainda pelo prompt. Pode-se especificar o estilo de linha, o símbolo que marca o ponto e cor do gráfico ainda pelo prompt. >> x=[4 5 6; 1 2 3]; y=(x.^2) >> x=[4 5 6; 1 2 3]; y=(x.^2) >> plot(x,y,'-.or') >> plot(x,y,'-hk') >> plot(x,y,'-hk')  Em help plot visualiza-se as especificações das características do gráfico >> t = 0:.1:2*pi; plot(t,sin(t),t,sin(1.05*t)) >> gtext('frequency = 1');gtext('frequency = 1.05');axis([0 max(t) -1 1])

26 Propriedades de Gráficos >> dt = 2*pi/10; t = dt:dt:10*dt; x = cos(t); y = sin(t); plot(x,y) axis equal off for i = 1:10 text(x(i),y(i),int2str(i)) end >> t = 0:.1:2*pi; plot(t,sin(t),t,sin(1.05*t)) >> gtext('frequency = 1');gtext('frequency = 1.05');axis([0 max(t) -1 1])

27 Comando plot3  Matlab apresenta um gráfico tridimensional com plot3:  >> x1=3; y1=4; z1=5;  >> plot3(x1,y1,z1,'*') >> th=[0:.01:2]*2*pi; x=cos(th); y=sin(th); z=th; plot3(x,y,z)

28 Representações em coordenadas polares >> th=0:2*pi/100:2*pi; rho=3*th; polar(th,rho)

29 Arquivos, extensões e rotinas clear, clf >>x1=1;y1=.5;x2=2;y2=1.5;x3= 3;y3=2; >>plot(x1,y1,'o',x2,y2,'+',x3,y3,'* ') >>axis([0 4 0 4]) >>xlabel('xaxis')>>ylabel('yaxis') >>title('3points in a plane')  As rotinas para automação de atividades também são gravados em arquivos de extensão.m e carregados sempre que necessário;  File>New>M-File Copiar as linhas de programação com sintaxe correta e salvar;  File>Open>(escolha) Desde que o arquivo esteja no diretório corrente;  Botão para compilação ou prompt digitando o nome do arquivo.  As variáveis de trabalho podem ser armazenadas em arquivos de extensão.mat através do menu File> Save Workspace As... E carregadas da mesma maneira que um M_File.

30 Criação de uma nova função  É necessário criar um arquivo.m denominado da mesma forma que a função;  Em sua primeira linha escreve-se o comando function e segue a descrição dos parâmetros da nova função.  Para a amostragem geométrica da função em seu domínio usa-se o comando fplot delimitando os intervalos >> fplot ('andre',[-2,7])

31 Gráficos tridimensionais >> [x,y] = meshgrid(- 10:10); z = sqrt(x.^2 + y.^2); >> mesh(x,y,z)

32 Tipos de representações z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2)... - 10*(x/5 - x.^3 - y.^5).*exp(- x.^2-y.^2)... - 1/3*exp(-(x+1).^2 - y.^2); [x,y,z] = peaks; colormap(gray) plot(z) mesh(x,y,z)

33 >> surf(x,y,z) >> shading flat >> surfl(x,y,z) >> shading flat >> contour(x,y,z) >> imagesc(z) >> axis xy Outros tipos de representações

34 >> contourf(x,y,z) >> surfc(x,y,z) Outros tipos de representações

35 Mapa de Cores  Pode-se usar ‘colormap’ predefinido ou criar seu próprio colormap;  Matlab usa matrizes para aplicar cores em mapas, imagens e superfícies. hsv hot gray bone copper pink white flag lines colorcube jet prism cool autumn spring winter summer >> colormap (‘hot’) >> colormap ([.5.5.5])  Colormap especificado Parchment.8.9.95 Aquamarine.831.49 Dark orange.4.621 Dark red 00.5 Gray.5.5.5 Cyan110 Magenta101 Yellow011 Blue100 Green010 Red001 White White111 Black000ColourBlueGreenRed >> gray(8)  Colormap predefinido

36 HDF or HDF-EOS data setHDFREADHDF - Hierarchical Data Format Primary or extension table dataFITSREADFITS - Flexible Image Transport System Cell array of CDF recordsCDFREADCDF - Common Data Format ReturnsCommandScientific Data Formats Double array and cell arrayWK1READWK1 - Lotus 123 worksheet Double array and cell arrayXLSREADXLS - Excel worksheet ReturnsCommandSpreadsheet Formats Double arrayDLMREADTAB - Tab separated text Double arrayDLMREADDLM - Delimited text Double arrayIMPORTDATADAT - Formatted text Double arrayTEXTREADTXT – Formatted data in a text file Double arrayCSVREADCSV - Comma separated numbers Variables in fileLOADMAT - MATLAB workspace ReturnsCommandData Formats Formatos suportados para arquivos de dados

37 MATLAB movieAVIREADAVI - Movie ReturnsCommandMovie Formats Sound data and sample rateWAVREADWAV – Microsoft Wave Sound Sound data and sample rateAUREADSND – Next/Sun Sound Sound data and sample rateAUREADAU – Next/Sun Sound ReturnsCommandAudio Formats Truecolor or indexed imageIMREADBMP – Windows bitmap Truecolor or indexed image(s)IMREADHDF – Hierarchial data format Truecolor, grayscale or indexed image IMREADPNG – Portable network graphics Truecolor, grayscale or indexed image(s) IMREADTIFF – Tagged image format ReturnsCommandImage Formats Formatos suportados para arquivos de imagem, áudio e filme


Carregar ppt "MATLAB-CURSO BÁSICO Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. Joseph Kalil Khoury Junior, Prof. UFRRJ-IT/DE."

Apresentações semelhantes


Anúncios Google