Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouHenrique Manso Alterado mais de 9 anos atrás
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
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.