Ambiente de computação para desenvolvimento de sistemas sofisticados. Sair



Documentos relacionados
INTRODUÇÃO AO USO DO PROGRAMA COMPUTACIONAL MATLAB Ambiente de computação para desenvolvimento de sistemas sofisticados

Minicurso de MATLAB. Programa de Educação Tutorial de Engenharia Elétrica 28/03/15. lmax Rodrigues. lcaroline Pereira.

Tutorial de Matlab Francesco Franco

Sistemas e Sinais (LEE & LETI)

MATLAB Avançado. Melissa Weber Mendonça Universidade Federal de Santa Catarina. M. Weber Mendonça (UFSC) MATLAB Avançado 2011.

Utilidades Diversas. Aplicações Informáticas para Engenharia. SérgioCruz

NÍVEL BÁSICO CAPÍTULO III

UNIVERSIDADE GAMA FILHO Laboratório de Controle I - MATLAB

Mini Curso Introdução ao MATLAB

Aula 2P - Comandos básicos do Matlab aplicados a PDS

Departamento: Matemática Curso: Eng a Madeiras Ano: 1 o Semestre: 2 o Ano Lectivo: 2006/2007. Aula prática n o 1 - Introdução ao MATLAB

Introdução ao Scilab 3.0 Parte 4

Laboratório de Sistemas e Sinais L1: Matrizes, Sons e Imagens

Oficina de MATLAB Nível Básico Aula 1

Introdução ao Matlab. 1 Algumas regras e comandos do Matlab. 3 de março de Docente Responsável : Prof. Dr. Antônio C. Roque

criar u u = E(:,1) criar b b=a(:,3)

Métodos Numéricos em Finanças

SPSS Statistical Package for the Social Sciences Composto por dois ambientes:

Programa. Linguagem MATLAB Métodos Computacionais para EDO Métodos Computacionais para EDP. Critérios

COMPUTAÇÃO E PROGRAMAÇÃO

Tutorial do Iniciante. Excel Básico 2010

UNIVERSIDADE FEDERAL DE ITAJUBÁ

Introdução ao processamento de imagens e OCTAVE. Julio C. S. Jacques Junior juliojj@gmail.com

Vetores, Matrizes e Gráficos

Universidade Federal de Santa Maria UFSM Centro de Tecnologia CT. Power Point. Básico

TUTORIAL MATLAB MATEMÁTICA COMPUTACIONAL Aula 20-Novembro-2013

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

Introdução sobre Scilab

Capítulo 5. ARQUIVOS E FUNÇÕES MATEMÁTICAS INTRÍNSECAS

CENTRO UNIVERSITÁRIO DA FEI MR Simulação de Processos em Eng. de Materiais. Aula 5. Matlab

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira

SciLab. Prof. Raimundo C. Ghizoni Teive

Introdução ao MATLAB. 2 - Apresentação de resultados em gráfico. 3 - Controlo de fluxo 3.1. Tipos de controlo 3.2. Expressões Lógicas

1 Introdução ao MatLab

Notas de Aula MatLab - 2

Informática para Ciências e Engenharias 2014/15. Teórica 5

Matlab Noções introdutórias. Roteiro para aula

Computação Científica com MATLAB. Melissa Weber Mendonça

Capítulo 13. VARIÁVEIS DO TIPO REAL DUPLA

Capítulo 2. VARIÁVEIS DO TIPO INTEIRO

Noções de. Microsoft SQL Server. Microsoft SQL Server

Microsoft Excel 2007

MESTRADO EM MACROECONOMIA e FINANÇAS Disciplina de Computação. Aula 02. Prof. Dr. Marco Antonio Leonel Caetano

Introdução ao MATLAB

TECNOLOGIA EM SISTEMAS PARA INTERNET Disciplina:FERRAMENTAS E TÉCNICAS DE ANIMAÇÃO WEB. Professora Andréia Freitas

Introdução ao EES Engineering Equation Solver

Módulo 3 Amostragem de Imagens Sistema Multimédia Ana Tomé José Vieira

FOLHA DE CÁLCULO EXCEL

EXCEL Público Alvo: Arquitetos Engenheiros Civis Técnicos em Edificações Projetistas Estudantes das áreas de Arquitetura, Decoração e Engenharia

Programação em MATLAB

Aula 02 Excel Operações Básicas

Mini-curso de MATLAB e Octave para Cálculo Numérico

AULA 15 Plugin Preenchimento de Células

Tutorial: MATLAB. André R. Backes. Universidade Federal de Uberlândia - Faculdade de computação

Criando e usando Gráficos

TerraView. O TerraView está estruturado da seguinte forma: - Modelo de dados

Moodle - CEAD Manual do Estudante

SIMULADO Windows 7 Parte V

Capítulo 14. ARQUIVOS DE SAÍDA, DE ENTRADA E INTERNOS

Introdução ao Octave + Pacote de Processamento de Imagens

Componentes da linguagem C++

Análise de Sistemas Não Lineares por Plano de Fase Recorrendo ao MATLAB

I-3 Introdução ao Matlab

Introdução à Tecnologia Web HTML HyperText Markup Language XHTML extensible HyperText Markup Language Formatos de Imagens

Apresentação Prática

INTRODUÇÃO AO MATLAB. AUTORES: Alan Tavares Miranda Márcio Portes de Albuquerque Marcelo Portes de Albuquerque

GERENCIADOR DE CONTEÚDO

MATLAB MATRIX LABORATORY

Usando o Excel ESTATÍSTICA. A Janela do Excel Barra de título. Barra de menus. Barra de ferramentas padrão e de formatação.

Módulo 1b: Introdução ao MatLab. Controlo de Fluxo scripts e functions

Capítulo 13 Gerenciamento de arquivos e de diretórios. Introdução ao MATLAB p.32/40

Instruções de uso do TABNET. Linha, Coluna e Conteúdo

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream>

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

Introdução à Linguagem

Não use essa apostila como única fonte de consultas, procure livros e manuais.

Roteiro 2: (Planilhas Eletrônicas) - Função procv / manipulação de formulários

Bem vindo ao ajuda do software QUICKFISH para criação de sites.

Aplicações de Escritório Electrónico

ftp://ftp.cr-df.rnp.br/pub/netinfo/training/rnp/kit-bsb/html/guia.zip novembro 1996 Tutorial - Autoria em World Wide Web

Universidade Federal da Fronteira Sul Campus Chapecó Sistema Operacional

Conceitos do Photoshop. Bitmap image Formatos de arquivos Memória Escalas de cores

IT 190 PRINCÍPIOS EM AGRICULTURA DE PRECISÃO INTRODUÇÃO AO USO DO ARCVIEW

Algoritmo e Programação

Tutorial MATLAB 6.5. Thaís Rodrigues Tonon RA: Turma B

TUTORIAL SIMPLIFICADO DE MATLAB

Lidar com números e estatísticas não é fácil. Reunir esses números numa apresentação pode ser ainda mais complicado.

Sistemas Operacionais

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL

Microsoft Office 2010

Portal Sindical. Manual Operacional Empresas/Escritórios

Formador: Carlos Maia

DESENVOLVIMENTO DE SOFTWARE II. Aula 07 A linguagem de programação C# e sua sintaxe

Transcrição:

UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO IT Departamento de Engenharia ÁREA DE MECANIZAÇÃO AGRÍCOLA CURSO BÁSICO DE MATLAB Ambiente de computação para desenvolvimento de sistemas sofisticados Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. varella@ufrrj.br Keilla Boehler, Aluna do Curso de Engenharia Agrícola, UFRRJ. keillambidao@ig.com.br Sair

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 Gráficos para análise de dados Janelas e Ferramentas Carregando algoritmo prático Operações com Vetores Funções Matemáticas Matrizes Comando for Estrutura switch, case, otherwise While Plotagem Representações em coordenadas polares Arquivos, extensões e rotinas Criação de uma nova função Gráficos tridimensionais Cores de Mapas

Introdução O programa computacional MATLAB é um ambiente de computação técnico-científica 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

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

Manipulação de Matrizes Comando XLSREAD( *.xls) carrega o arquivo que contém os valores; Quantidades de cada item determinadas em uma matriz; Multiplicando as matrizes pode-se comparar os preços total ofertado no total por cada revendedor. >> precos= XLSREAD('exemplo novo.xls xls'); >> precos precos = Revendedor Automóvel Caminhonete Caminhão Revendedor 15400 18200 46200 A Revendedor B Revendedor C 15400 18200 46200 3 16200 17900 47500 1 15150 19000 48000 2 >> quantidade=[3;1;2] quantidade = 16200 17900 47500 15150 19000 48000 >> escolha=precos*quantidade escolha = 156800 161500 160450

Matrizes e gráficos para análise de dados >> grafico=[precos,escolha] grafico = 15400 18200 46200 156800 16200 17900 47500 161500 15150 19000 48000 160450 >> revendedor=[1 2 3]; >> bar(grafico) >> plot(revendedor,grafico(:,1)) (,

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

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

Carregando algoritmo prático O comando figure é um suporte sempre necessário ái quando deseja-se amostrar imagem. É 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 x = 3 y = 4 w = 3 3 2 5x + 3 x y 2 y x 4 y t = 3 4 (sin w t 10 + tan w )( 3 t + 1) q = 12w 2 2x 5y 3+x 2y + 17

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))*( 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 7 8 9] >>a2=[123456789] 2 3,4 6,7 O cálculo de transpostas, inversas, determinantes,diagonais, covariâncias resume-se se a comandos como: >> inv(x) >> 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 Livro de algebra linear exercício help matfun

>> ones(3) matriz de uns >> zeros(5) matriz de zeros Funções para Matrizes >> rand(3) matriz com elementos aleatórios distribuídos uniformemente >> randn(4) matriz com elementos aleatórios distribuídos normalmente >> eye(3) matriz identidade d >> 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) >> repmat(a,2,3) comando que concatena matrizes verticalmente >> m = size(rand(2,3,4),2) 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.80 4800 5500 4800 5500;10 5600 00,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 inp t('distancia entre pontos da malha:'); area=dist^2; volcorte= sum(dif(indc))*area; volaterro=sum(dif(inda))*area;

Comando for A forma básica do comando for é: for índice = começa:incremento:para declarações end >> for m=1:10 x(m)=m^2; end; >> x(3) >> for a=1:10 a<=3; C(a)=a^2; a=3:7; C(a)=a+5; a=7:10; C(a)=a; end >> stem(c) ans = 9

Estruturas if-else-endend 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; elseif all (ent<0) retorno=-1; else 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.

Estrutura switch, case, otherwise A forma básica de parâmetros do switch e : M-file switchx.m switch teste case resultado1 declaração case resultado2 declaração... otherwise declaração end 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 A expressão em switch case só pode ser um escalar ou uma string. >> x=5; Pressione o botão run: >> x is 5

While while teste declaração end n = 1; while sum(1:n)<=1000 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; mult2; m=m+1; end area=abs((soma-soma2)/2) )

Plotagem O comando axis ajusta a escala do gráfico às coordenadas dos pontos plotados. Sintaxe: axis([xmin xmax ymin ymax]) >> x1=-1;y1= 1;y1=-1;x2=1;y2= 1;x2=1;y2=-1;x3= 1;x3=-1;y3=1;x4=1;y4=1; 1;y3=1;x4=1;y4=1; >> plot(x1,y1,'o',x2,y2,'o',x3,y3,'o',x4,y4,'o') >> axis([-2 22 2-2 22]) 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)) (t) (t)) subplot(2,2,2) plot(cos(t),sin(2*t)) subplot(2,2,3) 2 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'); y); title( pontos (p 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 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; [ ] p; 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 a compilação ou prompt pt digitando do o nome do arquivo. Já 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([0404]) 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 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 se o comando fplot delimitando i d 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) )^2* (( ^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)

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

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

Cores de Mapas Pode-se criar seu próprio traço ou usar qualquer mapa de cores predefinidas disponíveis hsv hot gray bone copper pink white flag lines colorcube jet prism cool autumn spring winter summer >> colormap ( hot ) >> colormap ([.5.5.5]) >> gray(8) Colormap. Matlab usa matrizes para aplicar cores em mapas imagens e superfícies tendo elas as especificações: Red Green Blue Colour 0 0 0 Black 1 1 1 White 1 0 0 Red 0 1 0 Green 0 0 1 Blue 1 1 0 Yellow 1 0 1 Magenta 0 1 1 Cyan.5.5.5 Gray.5 0 0 Dark red 1.62.4 Dark orange.49 1.83 Aquamarine.95.9.8 Parchment

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

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