INTRODUÇÃO AO USO DO PROGRAMA COMPUTACIONAL MATLAB

Slides:



Advertisements
Apresentações semelhantes
Carlos André Vaz Junior
Advertisements

Carlos André Vaz Junior
Utilizando o R. Técnicas para Predição de Dados 2 17/8/2008 Introdução ao R R é um linguagem (ambiente) de programação para computação estatística e gráfica.
Programação em Java Prof. Maurício Braga
INTRODUÇÃO AO USO DO PROGRAMA COMPUTACIONAL MATLAB
Métodos Computacionais
MATLAB – Aplicações a Engenharia Construção de Interfaces Gráficas
Programação em Java Prof. Maurício Braga
Bárbara A. G. P. Yamada O Flash – Introdução Bárbara A. G. P. Yamada
Operadores e Funções do LINGO
MATLAB Comandos Básicos.
Susana Nascimento Departamento de Informática
Departamento de Informática
Ciclos, Vectores e Gráficos Simulação da Queda de Corpos II
Excel Profa. Cristina M. Nunes.
Chapter 2 Fundamentals (a) (b) Convenções de coordenadas:
Java: Pacotes e Modificadores de Visibilidade
Eugênio Silva E Adriano Cruz
Estatística Básica Utilizando o Excel
CURSO BÁSICO DE MATLAB UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO
Instrutor: Marcelo Escobar
Curso MATLAB 6 Instrutor: Marcelo Escobar Complementação da Introdução.
LINGUAGEM C.
Iniciação ao MatLab Profa Dra. Rossana Lott Rodrigues
The language of tecnical computing
1 Professor Rogério B. de Andrade - Aula 001- Dez/2008 Técnicas e Linguagem de Programação.
Curso de Programação em C++
Documentando con Javadoc
Revisão da Linguagem C.
Introdução a Programação JAVA
Construindo gráficos com o “GNUPLOT”
Aula 07 Comandos de Repetição while e for
GET – Engenharia de Produção
Semana 03: Comandos de desvio de fluxo. Expressões lógicas.
Introdução ao MatLab Aula 2
Introdução ao MatLab Aula 1
Prof. Reinaldo Bianchi Centro Universitário da FEI 2013
Matlab– Noções introdutórias
Introdução ao MatLab Aula 3
Introdução ao MatLab Aula 4
Introdução ao MatLab Aula 1
Aula 02 Variáveis, Matrizes, Gráficos
Funções Universidade Federal de Ouro Preto - UFOP
Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC
Semana 03 Comandos de desvio de fluxo. Expressões lógicas.
Tarefa 02 Visual Studio 2005 Visual C# Programa Hello World.
Tecnologias da Informação e Comunicação
Matlab Mini Curso PET 2012.
Monitoria de Sistemas Inteligentes
Introdução ao MATLAB 5.3 para Hidrólogos
Sistemas de Controle de Aeronaves II
1/27 IV Encontro Sul Fluminense de Educação Matemática - ESFEM 16 e 17 de dezembro de 2005 Antonio.
Minicurso MATLAB Básico
Pontifícia Universidade Católica de Goiás Departamento de Engenharia Curso de Graduação em Engenharia de Produção ENG 1004 – Linguagem de Programação para.
Linguagem Pascal Prof. Sérgio Rodrigues.
BCC /01 Aula Teórica 09 Funções Material Didático Proposto. 1 BCC701 – Programação de Computadores I Universidade Federal de Ouro Preto Departamento.
Unidades de Gestão: gep | getec | gead
Eugênio Silva Iniciação ao MatLab Eugênio Silva
Programação e Aplicações Gráficas
Introdução ao MATLAB 5.3 para Hidrólogos
VBA - Introdução Pontifícia Universidade Católica de Goiás
Curso de modelagem numérica computacional com o software livre (Octave) Instituto Federal de Educação, Ciência e Tecnologia do Piauí –IFPI, campus Parnaíba.
Monitoria de Sistemas Inteligentes IF684
MatLab (Matrix Laboratory)
MATLAB - Matrix Laboratory Adaptado de Profa
Introdução ao Scilab Monitoria de Sinais e Sistemas - ES413
MATLAB-CURSO BÁSICO Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. Joseph Kalil Khoury Junior, Prof. UFRRJ-IT/DE.
Shell Script Parte 2.
MatLab (Matrix Laboratory)
Pesquisa Aplicada à Computação utilizando MatLab®
Transcrição da apresentação:

INTRODUÇÃO AO USO DO PROGRAMA COMPUTACIONAL MATLAB UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO IT – Departamento de Engenharia LABORATÓRIO DE MECANIZAÇÃO AGRÍCOLA INTRODUÇÃO AO USO DO PROGRAMA COMPUTACIONAL MATLAB Ambiente de computação para desenvolvimento de sistemas sofisticados Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. varella@ufrrj.br Joseph Kalil Khoury Junior, Prof. UFRRJ-IT/DE. kalil@ufrrj.br Keilla Boehler, Aluna do Curso de Engenharia Agrícola, UFRRJ. keillambidao@ig.com.br

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

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.

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,

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

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

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

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

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

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

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

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 h 1x11 88 double array t 1x11 88 double array Grand total is 22 elements using 176 bytes

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

Implementação de Funções >> x=4; y=3; >> t=(2*x^2-5*y)/(sqrt(2*y^(3-x)+17)) t = 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

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

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 >> 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. >>d=peaks(25);

Programação simples Sistematização de terreno pelo ‘Método do Plano Único’ 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.8000,10. %7500,10.7800]; a=size(c,1);b=size(c,2); N=a*b; Hc=(sum(sum(c,1)))/N; dif=c-Hc; inda=find(dif < 0);indc=find(dif > 0); dist=input('distancia entre pontos da malha:'); area=dist^2; volcorte= sum(dif(indc))*area; volaterro=sum(dif(inda))*area;

Comandos for-if-else-end-switch-case-otherwise-while A forma básica do comando for é: for índice = começa:incremento:para declarações end %Exemplo_for.m for i = 1:1:10 A(i) = 1/(i+1); end

Estruturas if-else-end Exemplo if I == J A(I,J) = 2; elseif abs(I-J) == 1 A(I,J) = -1; else A(I,J) = 0; end %Exemplo_if.m for i = 1:1:10 A(i) = 1/(i+1); if i == 3 A(i) = -1; elseif abs(i) == 1 else A(i) = 0; end

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

While while teste declaração n = 1; end 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:

Á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; area=abs((soma-soma2)/2)

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)

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.

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') Inserir texto em ponto de sua escolha no gráfico >>gtext('P1');gtext('P2');gtext('P3');gtext('P4') 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]) 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) >> plot(x,y,'-.or') >> plot(x,y,'-hk')

Propriedades de Gráficos >> 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]) >> 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

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)

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

Arquivos, extensões e rotinas 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. 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')

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])

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

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) mesh(x,y,z) plot(z)

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

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

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. Colormap predefinido Colormap especificado hsv hot gray bone copper pink white flag lines colorcube jet prism cool autumn spring winter summer Parchment .8 .9 .95 Aquamarine .83 1 .49 Dark orange .4 .62 Dark red .5 Gray Cyan Magenta Yellow Blue Green Red White Black Colour >> colormap (‘hot’) >> colormap ([.5 .5 .5]) >> gray(8)

Formatos suportados para arquivos de dados HDF or HDF-EOS data set HDFREAD HDF - Hierarchical Data Format Primary or extension table data FITSREAD FITS - Flexible Image Transport System Cell array of CDF records CDFREAD CDF - Common Data Format Returns Command Scientific Data Formats Double array and cell array WK1READ WK1 - Lotus 123 worksheet XLSREAD XLS - Excel worksheet Spreadsheet Formats Double array DLMREAD TAB - Tab separated text DLM - Delimited text IMPORTDATA DAT - Formatted text TEXTREAD TXT – Formatted data in a text file CSVREAD CSV - Comma separated numbers Variables in file LOAD MAT - MATLAB workspace Data Formats

Formatos suportados para arquivos de imagem, áudio e filme MATLAB movie AVIREAD AVI - Movie Returns Command Movie Formats Sound data and sample rate WAVREAD WAV – Microsoft Wave Sound AUREAD SND – Next/Sun Sound AU – Next/Sun Sound Audio Formats Truecolor or indexed image IMREAD BMP – Windows bitmap Truecolor or indexed image(s) HDF – Hierarchial data format Truecolor, grayscale or indexed image PNG – Portable network graphics Truecolor, grayscale or indexed image(s) TIFF – Tagged image format Image Formats