CURSO BÁSICO DE MATLAB Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. [email protected]...
Transcript of CURSO BÁSICO DE MATLAB Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. [email protected]...
CURSO BÁSICO DE MATLABCURSO BÁSICO DE MATLAB
Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. Carlos Alberto Alves Varella, Prof. UFRRJ-IT/DE. [email protected]@ufrrj.brKeilla Boehler, Aluna do Curso de Engenharia Agrícola, UFRRJ. Keilla Boehler, Aluna do Curso de Engenharia Agrícola, UFRRJ. [email protected]@ig.com.br
UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIROUNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIROIT – Departamento de EngenhariaIT – Departamento de Engenharia
ÁREA DE MECANIZAÇÃO AGRÍCOLAÁREA DE MECANIZAÇÃO AGRÍCOLA
Ambiente de computação para desenvolvimento de sistemas sofisticados
ConteúdoConteúdoIntroduçãoIntroduçãoPrincipais Recursos do ProgramaPrincipais Recursos do ProgramaJanela Principal do ProgramaJanela Principal do ProgramaPrincipais Sub-janelas do ProgramaPrincipais Sub-janelas do ProgramaManipulação de MatrizesManipulação de MatrizesMatrizes e gráficos para análise de dadosMatrizes e gráficos para análise de dadosGráficos para análise de dadosGráficos para análise de dadosJanelas e FerramentasJanelas e FerramentasCarregando algoritmo práticoCarregando algoritmo práticoOperações com VetoresOperações com VetoresFunções MatemáticasFunções MatemáticasMatrizesMatrizesComando forComando forEstrutura switch, case, otherwiseEstrutura switch, case, otherwiseWhileWhilePlotagemPlotagemRepresentações em coordenadas polaresRepresentações em coordenadas polaresArquivos, extensões e rotinasArquivos, extensões e rotinasCriação de uma nova funçãoCriação de uma nova funçãoGráficos tridimensionaisGráficos tridimensionaisCores de MapasCores de Mapas
IntroduçãoIntrodução
O programa computacional MATLAB é um ambiente de computação O programa computacional MATLAB é um ambiente de computação técnico-científica para o desenvolvimento de sistemas sofisticados técnico-científica para o desenvolvimento de sistemas sofisticados ( MATSUMOTO, 2002); ( MATSUMOTO, 2002);
É extensivamente usado para exploração, análise e resolução de É extensivamente usado para exploração, análise e resolução de problemas em diversas áreas do conhecimento;problemas em diversas áreas do conhecimento;
Apresenta diversos pacotes de ferramentas ‘toolbox’ que são um Apresenta diversos pacotes de ferramentas ‘toolbox’ que são um conjunto de algoritmos especialmente desenvolvidos para conjunto de algoritmos especialmente desenvolvidos para aplicações específicas.aplicações específicas.
Principais Recursos do ProgramaPrincipais Recursos do Programa
Linguagem de alto-nível para computação técnicaLinguagem de alto-nível para computação técnicaAmbiente de desenvolvimento e administração de código, arquivos, e Ambiente de desenvolvimento e administração de código, arquivos, e dados dados Ferramentas interativas para exploração, desígnio e resolução de Ferramentas interativas para exploração, desígnio e resolução de problemas problemas Funções matemáticas para álgebra linear, estatísticas, análise de Funções matemáticas para álgebra linear, estatísticas, análise de Fourier, filtragem, otimização, e integração numérica Fourier, filtragem, otimização, e integração numérica Funções para visualizar dados de gráficos 2-D e 3-D Funções para visualizar dados de gráficos 2-D e 3-D Ferramentas para construção de interfaces com usuário Ferramentas para construção de interfaces com usuário Funções que integram MATLAB funcionam como base de algoritmos Funções que integram MATLAB funcionam como base de algoritmos com aplicações externas e idiomas, como C, C++, Fortran, Java, COM, com aplicações externas e idiomas, como C, C++, Fortran, Java, COM, e Microsoft Excel, e Microsoft Excel,
Janela Principal do ProgramaJanela Principal do Programa
Principais Sub-janelas do ProgramaPrincipais Sub-janelas do Programa
Janela de comandoJanela de comando WorkspaceWorkspace
Comand WindowComand Window
Manipulação de MatrizesManipulação de Matrizes
>> precos= XLSREAD('exemplo >> precos= XLSREAD('exemplo novo.xls');novo.xls');
>> precos>> precos
precos =precos =
15400 18200 4620015400 18200 46200
16200 17900 4750016200 17900 47500
15150 19000 4800015150 19000 48000
>> quantidade=[3;1;2]>> quantidade=[3;1;2]
quantidade =quantidade =
33
11
22
>> escolha=precos*quantidade>> escolha=precos*quantidade
escolha =escolha =
156800156800
161500161500
160450160450
RevendedorRevendedor AutomóvelAutomóvel CaminhoneteCaminhonete CaminhãoCaminhão
Revendedor Revendedor AA
1540015400 1820018200 4620046200
Revendedor Revendedor BB
1620016200 1790017900 4750047500
Revendedor Revendedor CC
1515015150 1900019000 4800048000
Comando XLSREAD(‘*.xls) Comando XLSREAD(‘*.xls) carrega o arquivo que carrega o arquivo que contém os valores;contém os valores;
Quantidades de cada item Quantidades de cada item determinadas em uma determinadas em uma matriz;matriz;
Multiplicando as matrizes Multiplicando as matrizes pode-se comparar os preços pode-se comparar os preços total ofertado no total por total ofertado no total por cada revendedor.cada revendedor.
Matrizes e gráficos para análise de dadosMatrizes e gráficos para análise de dados>> grafico=[precos,escolha]>> grafico=[precos,escolha]
grafico =grafico =
15400 18200 46200 15680015400 18200 46200 156800
16200 17900 47500 16150016200 17900 47500 161500
15150 19000 48000 16045015150 19000 48000 160450
>> plot(revendedor,grafico(:,1))>> plot(revendedor,grafico(:,1))>> bar(grafico)>> bar(grafico)
>> revendedor=[1 2 3];>> revendedor=[1 2 3];
Gráficos para análise de dadosGráficos para análise de dados
>> plot(revendedor,grafico(:,2))>> plot(revendedor,grafico(:,2))
>> plot(revendedor,grafico(:,4))>> plot(revendedor,grafico(:,4))
>> plot(revendedor,grafico(:,3))>> plot(revendedor,grafico(:,3))
Janelas e FerramentasJanelas e Ferramentas Escolha de diretório;Escolha de diretório;
Utilização de ferramenta de Utilização de ferramenta de busca para opção de busca para opção de comando;comando;
Leitura de imagem em Leitura de imagem em formato .JPGformato .JPG
Salvar a variável em arquivo Salvar a variável em arquivo .m que consta em .m que consta em workspace .workspace .
Amostragem para análise Amostragem para análise da composição da imagem. da composição da imagem.
Carregando variável salva Carregando variável salva para eventual outro trabalhopara eventual outro trabalho
Carregando algoritmo práticoCarregando algoritmo prático
As linhas de programação ficam gravadas em As linhas de programação ficam gravadas em arquivos M-file ou arquivos de extensão .m arquivos M-file ou arquivos de extensão .m
O comando figure é um O comando figure é um suporte sempre suporte sempre necessário quando necessário quando deseja-se amostrar deseja-se amostrar imagem. É designado imagem. É designado através da interface através da interface programa-usuárioprograma-usuário
Operações com VetoresOperações com VetoresCriaçãoCriação
>>t>>t=[0 2 4 6 8 10 12 14 16 18 20]=[0 2 4 6 8 10 12 14 16 18 20]
OuOu
>>t1= 0:2:20>>t1= 0:2:20
>> h=1:3:32>> h=1:3:32
ManipulaçãoManipulação
>> h1=h+2>> h1=h+2
>> v=t+h>> v=t+h
>> t1=t*5>> t1=t*5
>> b=t*h‘>> b=t*h‘
>> b1=t.*h>> b1=t.*h
>> b2=t/h>> b2=t/h
>> who>> who
Your variables are:Your variables are:
h t h t
>> whos>> whos
Name Size Bytes ClassName Size Bytes Class
h 1x11 88 double arrayh 1x11 88 double array
t 1x11 88 double arrayt 1x11 88 double array
Grand total is 22 elements using 176 bytesGrand total is 22 elements using 176 bytes
Funções MatemáticasFunções Matemáticas
17252
3
2
xyyxt
233 4235 yxyyxxw
Para facilmente escrever linhas de expressão matemática, Matlab Para facilmente escrever linhas de expressão matemática, Matlab disponibiliza bloco de códigos que realizam tarefas específicas.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. 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, Constantes geralmente usadas como pi, e i ou j para a raiz quadrada de -1, também está incorporado em Matlab. também está incorporado em Matlab.
Encontra-se todas as funções matemáticas elementares Encontra-se todas as funções matemáticas elementares listadas através do comando: >> help elfunlistadas através do comando: >> help elfun
wtwtwq 12)13)(tan10sin( 43
3x 4y
Implementação de FunçõesImplementação de Funções
>> x=4; y=3;>> x=4; y=3;
>> t=(2*x^2-5*y)/(sqrt(2*y^(3-x)+17))>> t=(2*x^2-5*y)/(sqrt(2*y^(3-x)+17))
t =t =
4.04464.0446
>> w=(5*x+3-x^3-y^3)/(2*y-x-4*y^2)>> w=(5*x+3-x^3-y^3)/(2*y-x-4*y^2)
w =w =
22
>> q=(sin(w)^3-t^4/10+tan(w))*(-sqrt(t*3+1))/12*w>> q=(sin(w)^3-t^4/10+tan(w))*(-sqrt(t*3+1))/12*w
q =q =
17.028917.0289
MatrizesMatrizes
>> a = [1 2 3;4 5 6;7 8 9]>> a = [1 2 3;4 5 6;7 8 9]
>> a1 = [1 2 3>> a1 = [1 2 3
4 5 64 5 6
7 8 9]7 8 9]
>> a2 = [1 2 3,4 5 6,7 8 9]>> a2 = [1 2 3,4 5 6,7 8 9]
>> b=[1 2 2;3 2 4; 5 2 1];>> b=[1 2 2;3 2 4; 5 2 1];
>> d=[b,a]>> d=[b,a]
help matfunhelp matfun
Livro de algebra linear exercícioLivro de algebra linear exercício
O cálculo de transpostas, O cálculo de transpostas, inversas, inversas, determinantes,diagonais, determinantes,diagonais, covariâncias resume-se a covariâncias resume-se a comandos como: comandos como:
>> inv(x)>> inv(x)
>> b=rand(6)>> b=rand(6)
>> var(b)>> var(b)
>> cov(b)>> cov(b)
Sendo a matriz de variância Sendo a matriz de variância diagonal da matriz de covânciadiagonal da matriz de covância
Funções para MatrizesFunções para Matrizes>> ones(3) matriz de uns>> ones(3) matriz de uns
>> zeros(5) matriz de zeros>> zeros(5) matriz de zeros
>> rand(3) matriz com elementos aleatórios distribuídos >> rand(3) matriz com elementos aleatórios distribuídos uniformementeuniformemente
>> randn(4) matriz com elementos aleatórios distribuídos normalmente>> randn(4) matriz com elementos aleatórios distribuídos normalmente
>> eye(3) matriz identidade>> eye(3) matriz identidade
>> ones(3,1,2) matriz de uns com especificação da dimensão>> 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) >> a=ones(2,5); b=zeros(2,5); c=ones(1,5)*3;vertcat(a,b,c)
comando que concatena matrizes verticalmentecomando que concatena matrizes verticalmente
>> repmat(a,2,3)>> repmat(a,2,3)
>> m = size(rand(2,3,4),2) >> m = size(rand(2,3,4),2)
em que o ultimo algarismo responde sobre a dimensão dois, 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.a das colunas. Poderia ser 3, a das linhas. E 4, a das bandas.
>>d=peaks(25);>>d=peaks(25);
c =input('cotas das amostras ordenadas na sequencia da malha:')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.3%[10.0000,10.2800,10.2000,10.3000,10.3100;10.3000,10.3200,10.2800,10.3100,1100,1
%0.4000;10.4800,10.5000,10.5500,10.4800,10.5500;10.5600,10.7000,10.80%0.4000;10.4800,10.5000,10.5500,10.4800,10.5500;10.5600,10.7000,10.8000,10.00,10.
%7500,10.7800];%7500,10.7800];
a=size(c,1);b=size(c,2);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);indc=find(dif > 0);inda=find(dif < 0);indc=find(dif > 0);
dist=input('distancia entre pontos da malha:');dist=input('distancia entre pontos da malha:');
area=dist^2;area=dist^2;
volcorte= sum(dif(indc))*area;volcorte= sum(dif(indc))*area;
volaterro=sum(dif(inda))*area;volaterro=sum(dif(inda))*area;
Sistematização de terreno pelo ‘Método do Plano Único’Sistematização de terreno pelo ‘Método do Plano Único’
Programação simplesProgramação simples
Comando forComando for
>> for a=1:10>> 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;
endend
>> stem(C)>> stem(C)
A forma básica do comando for é:A forma básica do comando for é:
for índice = começa:incremento:parafor índice = começa:incremento:para
declaraçõesdeclarações
endend
>> for m=1:10>> for m=1:10
x(m)=m^2;x(m)=m^2;
end;end;
>> x(3)>> x(3)
ans =ans =
99
Estruturas if-else-endEstruturas if-else-end
Matlab tem quatro tipos de afirmações Matlab tem quatro tipos de afirmações são if, elseif, else,endsão if, elseif, else,end
Elas fazem o controle de fluxo baseadas Elas fazem o controle de fluxo baseadas no teste lógico.no teste lógico.
Em sua forma básica:Em sua forma básica:
If testeIf teste
declaraçõesdeclarações
EndEnd
function retorno=posneg(ent)function retorno=posneg(ent)
if all(ent>0)if all(ent>0)
retorno=1;retorno=1;
elseif all (ent<0)elseif all (ent<0)
retorno=-1;retorno=-1;
else else
retorno=0;retorno=0;
end end
O teste é uma expressão em que há 1(verdadeiro) ou 0(falso) é executado 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 entre o if e end e retorna se o teste der verdadeiro, quando falso são ignoradas as declarações.ignoradas as declarações.
Testes adicionais podem ser feitos usando elseif e else.Testes adicionais podem ser feitos usando elseif e else.
Estrutura switch, case, otherwiseEstrutura switch, case, otherwise
switch xswitch x
case 1case 1
disp('x is 1');disp('x is 1');
case {2,3,4}case {2,3,4}
disp('x is 2, 3 or 4');disp('x is 2, 3 or 4');
case 5case 5
disp('x is 5');disp('x is 5');
otherwiseotherwise
disp('x is not 1, 2, 3, 4 or 5');disp('x is not 1, 2, 3, 4 or 5');
endend
>> x=5;>> x=5;
Pressione o botão run:Pressione o botão run:
>> x is 5>> x is 5
M-file switchx.mM-file switchx.mA forma básica de parâmetros do A forma básica de parâmetros do switch e´: switch e´:
switch testeswitch teste
case resultado1case resultado1
declaraçãodeclaração
case resultado2case resultado2
declaraçãodeclaração
......
otherwiseotherwise
declaraçãodeclaração
endend
A expressão em switch case só pode A expressão em switch case só pode ser um escalar ou uma string.ser um escalar ou uma string.
WhileWhile
while testewhile teste
declaraçãodeclaração
endend
n = 1;n = 1;
while sum(1:n)<=1000while sum(1:n)<=1000
n = n+1;n = n+1;
endend
As declarações são executadas repetidamente enquanto o valor de 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 teste for igual a 1, por exemplo, achar o primeiro inteiro n para qual 1+2+· · ·+n é maior que 1000:1+2+· · ·+n é maior que 1000:
Área de um Polígono com WhileÁrea de um Polígono com Whilemat=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;endm=1;soma2=0;while m<a;mult2=x(m+1,1)*y(m,1);soma2=soma2+mult2;m=m+1;endarea=abs((soma-soma2)/2)
PlotagemPlotagem
O comando axis ajusta a escala do gráfico às coordenadas dos pontos O comando axis ajusta a escala do gráfico às coordenadas dos pontos plotados.plotados.
Sintaxe: axis([xmin xmax ymin ymax]) Sintaxe: axis([xmin xmax ymin ymax])
>> x1=-1;y1=-1;x2=1;y2=-1;x3=-1;y3=1;x4=1;y4=1;>> 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')>> plot(x1,y1,'o',x2,y2,'o',x3,y3,'o',x4,y4,'o')
>> axis([-2 2 -2 2])>> axis([-2 2 -2 2])
>> axis square %forma quadrada >> axis normal ou>> axis square %forma quadrada >> axis normal ou
>> x=[-1 1 -1 1] ; >> x=[-1 1 -1 1] ; y=[-1; -1; 1; 1] ; plot(x,y,'.r');axis([-2 2 -2 2])y=[-1; -1; 1; 1] ; plot(x,y,'.r');axis([-2 2 -2 2])
subplot trabalha com multiplicidade de subplot trabalha com multiplicidade de gráficos gráficos
renda= [3.2 4.1 5.0 5.6];renda= [3.2 4.1 5.0 5.6];
gastos= [2.5 4.0 3.35 4.9];gastos= [2.5 4.0 3.35 4.9];
subplot(2,1,1); plot(renda)subplot(2,1,1); plot(renda)
subplot(2,1,2); plot(gastos)subplot(2,1,2); plot(gastos)
Comando subplotComando subplot
>> t = 0:.1:2*pi;>> t = 0:.1:2*pi;
subplot(2,2,1)subplot(2,2,1)
plot(cos(t),sin(t))plot(cos(t),sin(t))
subplot(2,2,2)subplot(2,2,2)
plot(cos(t),sin(2*t))plot(cos(t),sin(2*t))
subplot(2,2,3)subplot(2,2,3)
plot(cos(t),sin(3*t))plot(cos(t),sin(3*t))
subplot(2,2,4)subplot(2,2,4)
plot(cos(t),sin(4*t))plot(cos(t),sin(4*t))
Sendo o primeiro índice o número de eixos na Sendo o primeiro índice o número de eixos na vertical, o segundo número de eixos na vertical, o segundo número de eixos na horizontal e o último o número de ordem ou horizontal e o último o número de ordem ou posição. posição.
subplot 221subplot 221
plot(1:10)plot(1:10)
subplot 222subplot 222
plot(0,’*’)plot(0,’*’)
subplot 212subplot 212
plot([1 0 1 0])plot([1 0 1 0])
Propriedades de Gráficos Propriedades de Gráficos Para colocar rótulos em gráficos pode-se usar a função xlabel, ylabel, Para colocar rótulos em gráficos pode-se usar a função xlabel, ylabel, and titleand 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 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 Pode-se especificar o estilo de linha, o símbolo que marca o ponto e cor do gráfico ainda pelo prompt.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,'-.or')
>> plot(x,y,'-hk')>> plot(x,y,'-hk')
Em help plot visualiza-se as especificações Em help plot visualiza-se as especificações das características do gráficodas características do gráfico
>> t = 0:.1:2*pi;>> t = 0:.1:2*pi;
plot(t,sin(t),t,sin(1.05*t))plot(t,sin(t),t,sin(1.05*t))
>> gtext('frequency = 1');gtext('frequency = >> gtext('frequency = 1');gtext('frequency = 1.05');axis([0 max(t) -1 1])1.05');axis([0 max(t) -1 1])
Propriedades de GráficosPropriedades de Gráficos
>> dt = 2*pi/10;>> dt = 2*pi/10;
t = dt:dt:10*dt;t = dt:dt:10*dt;
x = cos(t);x = cos(t);
y = sin(t);y = sin(t);
plot(x,y)plot(x,y)
axis equal offaxis equal off
for i = 1:10for i = 1:10
text(x(i),y(i),int2str(i))text(x(i),y(i),int2str(i))
endend
>> t = 0:.1:2*pi;>> t = 0:.1:2*pi;
plot(t,sin(t),t,sin(1.05*t))plot(t,sin(t),t,sin(1.05*t))
>> gtext('frequency = 1');gtext('frequency = >> gtext('frequency = 1');gtext('frequency = 1.05');axis([0 max(t) -1 1])1.05');axis([0 max(t) -1 1])
Comando plot3Comando plot3
Matlab apresenta um gráfico Matlab apresenta um gráfico tridimensional com plot3:tridimensional com plot3:
>> x1=3; y1=4; z1=5;>> x1=3; y1=4; z1=5;
>> plot3(x1,y1,z1,'*')>> plot3(x1,y1,z1,'*')
>> th=[0:.01:2]*2*pi;>> th=[0:.01:2]*2*pi;
x=cos(th);x=cos(th);
y=sin(th);y=sin(th);
z=th;z=th;
plot3(x,y,z)plot3(x,y,z)
Representações em coordenadas polaresRepresentações em coordenadas polares
>> th=0:2*pi/100:2*pi;rho=3*th;polar(th,rho)
Arquivos, extensões e rotinasArquivos, 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.
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.
Criação de uma nova funçãoCriação de uma nova função
É necessário criar um arquivo .m denominado da mesma forma É necessário criar um arquivo .m denominado da mesma forma que a função;que a função;
Em sua primeira linha escreve-se o comando function e segue a Em sua primeira linha escreve-se o comando function e segue a descrição dos parâmetros da nova função.descrição dos parâmetros da nova função.
Para a amostragem geométrica da função em seu domínio usa-se o Para a amostragem geométrica da função em seu domínio usa-se o comando fplot delimitando os intervaloscomando fplot delimitando os intervalos
>> fplot ('andre',[-2,7])
Gráficos tridimensionaisGráficos tridimensionais
>> [x,y] = meshgrid(-10:10);z = sqrt(x.^2 + y.^2);>> mesh(x,y,z)
Tipos de representaçõesTipos 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)
>> surf(x,y,z)>> shading flat
>> surfl(x,y,z)>> shading flat
>> contour(x,y,z)>> imagesc(z)>> axis xy
Outros tipos de representaçõesOutros tipos de representações
>> contourf(x,y,z)
>> surfc(x,y,z)
Outros tipos de representaçõesOutros tipos de representações
Cores de MapasCores de MapasPode-se criar seu próprio traço ou usar qualquer mapa de cores Pode-se criar seu próprio traço ou usar qualquer mapa de cores predefinidas disponíveispredefinidas 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])
Colormap. Matlab usa matrizes para Colormap. Matlab usa matrizes para aplicar cores em mapas imagens e aplicar cores em mapas imagens e superfícies tendo elas as superfícies tendo elas as especificações:especificações:
Red Red GreenGreen BlueBlue ColourColour
00 00 00 BlackBlack
11 11 11 WhiteWhite
11 00 00 RedRed
00 11 00 GreenGreen
00 00 11 BlueBlue
11 11 00 YellowYellow
11 00 11 MagentaMagenta
00 11 11 CyanCyan
.5.5 .5.5 .5.5 GrayGray
.5.5 00 00 Dark redDark red
11 .62.62 .4.4 Dark orangeDark orange
.49.49 11 .83.83 AquamarineAquamarine
.95.95 .9.9 .8.8 ParchmentParchment
>> gray(8)
Data FormatsData Formats CommandCommand ReturnsReturns
MAT - MATLAB workspaceMAT - MATLAB workspace LOADLOAD Variables in fileVariables in file
CSV - Comma separated numbersCSV - Comma separated numbers CSVREADCSVREAD Double arrayDouble array
TXT – Formatted data in a text fileTXT – Formatted data in a text file TEXTREADTEXTREAD Double arrayDouble array
DAT - Formatted textDAT - Formatted text IMPORTDATAIMPORTDATA Double arrayDouble array
DLM - Delimited textDLM - Delimited text DLMREADDLMREAD Double arrayDouble array
TAB - Tab separated textTAB - Tab separated text DLMREADDLMREAD Double arrayDouble array
Spreadsheet Formats Spreadsheet Formats Command Command ReturnsReturns
XLS - Excel worksheet XLS - Excel worksheet XLSREAD XLSREAD Double array and cell arrayDouble array and cell array
WK1 - Lotus 123 worksheet WK1 - Lotus 123 worksheet WK1READWK1READ Double array and cell arrayDouble array and cell array
Scientific Data Formats Scientific Data Formats Command Command ReturnsReturns
CDF - Common Data Format CDF - Common Data Format CDFREAD CDFREAD Cell array of CDF recordsCell array of CDF records
FITS - Flexible Image Transport SystemFITS - Flexible Image Transport System FITSREADFITSREAD Primary or extension table dataPrimary or extension table data
HDF - Hierarchical Data Format HDF - Hierarchical Data Format HDFREAD HDFREAD HDF or HDF-EOS data set HDF or HDF-EOS data set
Alguns comandos do MATLABAlguns comandos do MATLAB
Image Formats Image Formats Command Command ReturnsReturns
TIFF – Tagged image format TIFF – Tagged image format IMREAD IMREAD Truecolor, grayscale or indexed Truecolor, grayscale or indexed
image(s)image(s)
PNG – Portable network graphicsPNG – Portable network graphics IMREAD IMREAD Truecolor, grayscale or indexed Truecolor, grayscale or indexed
imageimage
HDF – Hierarchial data format HDF – Hierarchial data format IMREAD IMREAD Truecolor or indexed image(s)Truecolor or indexed image(s)
BMP – Windows bitmap BMP – Windows bitmap IMREAD IMREAD Truecolor or indexed imageTruecolor or indexed image
Audio Formats Audio Formats Command Command ReturnsReturns
AU – Next/Sun Sound AU – Next/Sun Sound AUREAD AUREAD Sound data and sample rateSound data and sample rate
SND – Next/Sun Sound SND – Next/Sun Sound AUREADAUREAD Sound data and sample rateSound data and sample rate
WAV – Microsoft Wave Sound WAV – Microsoft Wave Sound WAVREAD WAVREAD Sound data and sample rateSound data and sample rate
Movie Formats Movie Formats Command Command ReturnsReturns
AVI - Movie AVI - Movie AVIREAD AVIREAD MATLAB movieMATLAB movie
Alguns comandos do MATLABAlguns comandos do MATLAB