Você está na página 1de 28

Universidade Federal do ABC

Curso Introdutrio de MATLAB

Heloise Assis Fazzolari IEEE Member Fevereiro 2009

1. Sumrio
1. 2. Sumrio..................................................................................................................... 1 Introduo................................................................................................................. 3 2.1. 2.2. 2.2.1. 2.2.2. 2.2.3. 2.2.4. 2.2.5. 2.3. 2.4. 2.5. 2.6. 2.7. 2.8. 2.9. 2.10. 2.11. 3. 3.1. 3.2. 3.3. 3.4. 3.5. 4. 4.1. 4.2. 4.3. 5. 5.1. 5.2. Aprendendo a Utilizar o MATLAB.................................................................. 3 MATLAB no Ambiente do Windows .............................................................. 3 Command Window....................................................................................... 5 Workspace .................................................................................................... 5 Current Directory.......................................................................................... 5 Command History ........................................................................................ 6 Menus ........................................................................................................... 6 Comandos Bsicos no Command Window e Declarao de Variveis ........... 6 Nmeros e Expresses Aritmticas .................................................................. 8 Formato de Sada .............................................................................................. 9 Matrizes Simples .............................................................................................. 9 Indexao de Elementos de Matrizes ............................................................. 11 Dimenso de Vetores e Matrizes .................................................................... 12 Matrizes Especiais .......................................................................................... 12 Funes Matemticas Elementares............................................................. 14 As Facilidades do HELP (Ajuda) ............................................................... 15 Operaes com Matrizes .................................................................................... 16 Transposta....................................................................................................... 17 Adio e Subtrao......................................................................................... 17 Multiplicao .................................................................................................. 17 Diviso............................................................................................................ 18 Potenciao..................................................................................................... 18 Operaes Relacionais e Lgicas ....................................................................... 18 Operadores Relacionais .................................................................................. 18 Operadores Lgicos........................................................................................ 19 Arquivos M de Comandos.............................................................................. 19 Arquivos M de Funes...................................................................................... 20 Por que usar funes? ..................................................................................... 20 Principal Diferena Entre Arquivo .M de Funes e Arquivo .M de Comandos 20

5.3. 5.4. 6. 6.1. 6.2. 7. 7.1. 7.2. 7.3. 7.4. 8.

Como Escrever uma Funo........................................................................... 21 Regras e Propriedades .................................................................................... 21 Anlise Numrica ............................................................................................... 21 Integrao Numrica....................................................................................... 21 Solues de Equaes Diferenciais ................................................................ 22 Grficos .............................................................................................................. 23 Grficos Bidimensionais ................................................................................ 23 Estilos de Linha e Smbolos ........................................................................... 25 Comando Subplot ........................................................................................... 26 Anotaes no Grfico ..................................................................................... 26 Referncias Bibliogrficas.................................................................................. 27

2. Introduo
2.1. Aprendendo a Utilizar o MATLAB

Uma grande vantagem do MATLAB a facilidade em programar na sua prpria linguagem e com isso armazenar e recuperar dados, criar, executar e armazenar seqncias de comandos para automatizar os clculos. Tambm possvel plotar dados de diversas maneiras, manipular polinmios, integrar funes, manipular equaes simbolicamente e ainda programar suas prprias funes de acordo com a necessidade. Na realidade, o MATLAB oferece muitas outras caractersticas e muito mais verstil do que qualquer calculadora: uma ferramenta para fazer clculos matemticos; uma linguagem de programao com caractersticas mais avanadas; Fcil de aplicar quando comparado s linguagens de programao como BASIC, Pascal ou C/C++. Esse software apresenta um ambiente rico para a visualizao de dados graas sua poderosa capacidade grfica. uma plataforma de desenvolvimento de aplicaes, na qual conjuntos de ferramentas inteligentes para soluo de problemas em aplicaes especficas podem ser desenvolvidos de forma relativamente fcil.

2.2.

MATLAB no Ambiente do Windows

Para iniciar o MATLAB basta clicar no cone:

Ou menu: iniciar/programas/Matlab/Matlab

A Janela inicial do MATLAB a seguinte:


Menus

Workspace

Command Window

Command History

2.2.1. Command Window


a rea de trabalho onde os comandos (as instrues) so digitados. As operaes podem ser realizadas e seus resultados so mostrados. Tambm nessa janela que se pode executar um arquivo m-file. O prompt >> indica que o programa est pronto aguardando uma instruo. Com as teclas seta para cima e seta para baixo possvel recuperar todos os comandos j digitados.

2.2.2. Workspace
a rea na qual so exibidas todas as variveis definidas na rea de trabalho; Essa janela possui quatro colunas indicando o nome, dimenso, nmero de bytes e a classe de cada varivel; As variveis podem ser editadas e visualizadas nessa prpria janela, bastando dar um duplo clique para edit-las; H um menu flutuante atravs do qual possvel: 1. Open - abrir a janela; 2. Graph criar grficos a partir dos dados contidos na varivel; 3. Select All selecionar todas as variveis; 4. Import Data importar variveis de um arquivo para o workspace; 5. Save Selection As salvar as variveis selecionadas em um arquivo; 6. Save Workspace As salvar todas as variveis do workspace em um arquivo; 7. Copy copiar a varivel para a rea de transferncia de dados do Windows; 8. Delete apagar a varivel do workspace; 9. Clear Workspace apagar todas as variveis do workspace; 10. Rename renomear a varivel.

2.2.3. Current Directory


rea onde exibida uma lista dos arquivos contidos no diretrio corrente.

2.2.4. Command History


rea onde ficam armazenadas todas as instrues executadas no MATLAB.

2.2.5. Menus
So os comandos de configurao do ambiente MATLAB.

2.3.

Comandos Bsicos no Command Window e

Declarao de Variveis
Os comandos essenciais da janela de trabalho so: who whos clear clc Mostra as variveis do espao de trabalho. Mostra as variveis do espao de trabalho com detalhes. Limpa a memria do espao de trabalho. Limpa a tela.

dir ou ls Mostra o contedo do diretrio em que se encontra. cd ou pwd what Exibe os arquivos MATLAB contidos no diretrio. Informa ou altera diretrio corrente.

Todas as funes devem ser escritas com letras minsculas. As variveis do espao de trabalho podem ser excludas incondicionalmente usando-se o comando clear: >> clear A >> clear blocos s % exclui somente a varivel A. % exclui as variveis blocos e s. 6

>> clear b*

% exclui as variveis que iniciam com a letra b.

Obs.: No h solicitao de confirmao, todas as variveis sero apagadas e no podero ser recuperadas. Assim como qualquer outra linguagem de programao, o MATLAB tem regras a respeito do nome de variveis. Os nomes devem ser palavras nicas, sem incluso de espaos e no devem conter caracteres acentuados. As regras para as variveis so: Regras para nomes de variveis As variveis so sensveis a maisculas e minsculas; Comentrios e Exemplos Itens, itens, itEns e ITEns. So todas variveis diferentes.

As variveis podem conter no mximo 31 caracteres; oquevoceachadessenomedevariavel o que ultrapassar esse nmero ignorado. Os nomes das variveis devem comear com uma letra, podem ser seguidos de um nmero, letras ou sublinhados. O_que_voc_acha_deste_nome X51483

Alm dessas regras, o MATLAB possui algumas variveis especiais: Varivel ans pi inf Valor Varivel-padro usada para resultados 3.14159265358979... Infinito. Ex:1/0

NaN (ou) nan No Numrico. Ex: 0/0 i (e) j realmin realmax i=j=sqrt(-1) raiz imaginria Menor nmero real utilizvel (2.2251e-308) Maior nmero real utilizvel (1.7977e+308)

Exemplos de declaraes de variveis: >>A=5 >>borrachas=7 >>blocos=6; O ponto e vrgula (;) no final da atribuio suprime a impresso da respectiva linha na tela, mas a tarefa realizada. Este artifcio utilizado quando h muitos dados intermedirios e s se deseja visualizar o resultado final.

Quando no se atribui nenhuma varivel ao resultado de uma operao, a varivel ans recebe automaticamente este resultado.

Para salvar os dados do Command Window: Uma das alternativas ir at o menu: File/ Save Workspace As / digitar o nome do arquivo: Por exemplo: exe1.mat Para recuperar os dados s ir ao menu: File / Open e abrir o arquivo desejado: >>clear Em seguida abrir o arquivo exe1.mat. Se desejar salvar algumas variveis em especfico tambm possvel a partir da Janela de Comandos: >> save nome do arquivo variveis desejadas >>save exe2 borrachas lapiseiras >>clear Para carregar essas variveis da Janela de Comandos s digitar: >> load exe2.mat

2.4.

Nmeros e Expresses Aritmticas

O MATLAB aceita nmeros escritos em diversos formatos, tais como: 3; -99; 0.00001; 9.637458638; 1.602E-20; 6.06375e23. As expresses podem ser construdas usando os operadores aritmticos usuais e as regras de precedncia:

1 2 3 4 5

+ * / ^

Adio Subtrao Multiplicao Diviso Potenciao

Para expresses devem-se utilizar parnteses: >>resp=2*(a-3*b)^1/2-5*(2*a-sqrt(b)) -63.858

2.5.

Formato de Sada

O formato numrico exibido na tela pode ser modificado utilizando-se o comando format, que afeta somente o modo como as matrizes so mostradas, e no como elas so computadas ou salvas. Se todos os elementos das matrizes so inteiros exatos, a matriz mostrada em um formato sem qualquer ponto decimal. Por exemplo, >> x = [-1 0 1] resulta em: x= -1 0 1 Se pelo menos um dos elementos da matriz no inteiro exato, existem vrias possibilidades de formatar a sada. O formato "default", chamado de formato short, mostra aproximadamente 4 dgitos decimais ou usam notao cientfica. Por exemplo, a matriz: >> x = [4/3 1.2345e-6] mostrada , para cada formato usado, da seguinte maneira:
format short format short e format long format long e format hex format rat format bank format + 1.3333 0.0000 1.3333e+000 1.2345e-006 1.33333333333333 0.000000123450000 1.333333333333333e+000 1.234500000000000e-006 3ff5555555555555 3eb4b6231abfd271 4/3 1/810045 1.33 0.00 ++ 4 dgitos decimais 4 dgitos em notao cientfica 15 dgitos decimais 15 dgitos em notao cientfica Hexadecimal Frao 2 dgitos decimais Positivos + e negativos e espaos vazios para o zero.

2.6.

Matrizes Simples

As matrizes podem ser introduzidas no MATLAB por diferentes caminhos: Digitadas na Janela de Comando (lista explcita de elementos); Geradas por comandos e funes; Criadas em arquivos ".m"; Carregadas a partir de um arquivo de dados externo.

O mtodo mais fcil de entrar com pequenas matrizes no MATLAB usando uma lista explcita. Os elementos de cada linha da matriz so separados por espaos em branco ou vrgulas e as colunas separadas por ponto e vrgula, colocando-se colchetes em volta do grupo de elementos que formam a matriz. Por exemplo, entre com a expresso: >> A=[ 1 2 3;4 5 6;7 8 9 ] Pressionando <enter> o MATLAB mostra o resultado A= 123 456 789 As matrizes podem, tambm, ser introduzidas linha a linha, o que indicado para matrizes de grande dimenso. Por exemplo: >>A = [1 2 3 456 7 8 9] Para matrizes com muitos valores, pode-se utilizar os seguintes comandos:

[valor inicial: incremento: valor final] >> x=[0:0.1:1]*pi x= 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 2.1991 2.5133 2.8274 3.1416 ou, linspace(valor inicial, valor final, nmero de pontos) >> x=linspace(0,pi,11) x= 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 2.1991 2.5133 2.8274 3.1416 Grandes matrizes podem ser construdas a partir de pequenas matrizes. Por exemplo, pode-se anexar outra linha na matriz A usando: >> r= [ 10 11 12]; >> A= [A; r] que resulta em: A= 10

123 456 789 10 11 12 Note que o vetor r no foi listado porque ao seu final foi acrescentado ";". Pequenas matrizes podem ser extradas de grandes matrizes usando ":". Por exemplo: >> A = A(1:3,:); seleciona as trs primeiras linhas e todas as colunas da matriz A atual, modificando-a para sua forma original.

2.7.

Indexao de Elementos de Matrizes

O MATLAB utiliza a forma tradicional para indexar matrizes: ai, j = a(i, j) onde i representa nmero de linhas e j nmero de colunas. Exemplo: >>A=[1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15] 12345 A= 6 7 8 9 10 11 12 13 14 15 >>A(2,4) ans= 9 ou >>A(11) ans= 9 % o dcimo primeiro elemento % o elemento da segunda linha e quarta coluna

>>b=A(2,2:4) % cria uma matriz utilizando a segunda linha de A e as colunas 2, 3 e 4 de A b= 789 >>c=A(:,3) terceira coluna c= 3 8 13 % gera uma matriz c utilizando todas as linhas de A e somente a

11

>>d=A(1, :) colunas d=

%gera uma matriz d utilizando a primeira linha de A e todas as

12345 >>e=A(3,3:end) %gera uma matriz e utilizando a terceira linha de A e da

terceira at a ltima coluna de A e= 13 14 15

2.8.

Dimenso de Vetores e Matrizes

As funes mais utilizadas para fornecer informaes de uma matriz so: size: mostra a ordem da matriz, nmero de linhas e nmero de colunas; length: mostra o nmero de linhas ou colunas. Mostra somente o maior valor.

2.9.

Matrizes Especiais

O MATLAB dispe de algumas matrizes especiais, onde algumas delas so de uso geral, enquanto outras so matrizes voltadas para aplicaes especializadas. As matrizes de uso geral incluem: Find => retorna os ndices de uma matriz, por exemplo, dos elementos no nulos. >> B=[-1 4 -7; 2 -5 8; 3 6 9; 1 1 1; 1 2 3] B= -1 4 -7 2 -5 8 369 111 123 >> c=find(B<0) c= 1 7 11 zeros => retorna uma matriz nula na ordem que o usurio especificar: >> zeros(2,3)

12

ans = 000 000 >> zeros (3) ans = 000 000 000 ones => retorna uma matriz de elementos iguais a 1: >> ones(3,1) ans = 1 1 1 >> ones(4) ans = 1111 1111 1111 1111 rand => retorna uma matriz de nmeros aleatrios uniformemente distribudos entre 0 e 1. >> rand(3) ans = 0.9501 0.4860 0.4565 0.2311 0.8913 0.0185 0.6068 0.7621 0.8214 randn => retorna uma matriz de nmeros aleatrios que seguem a distribuio normal, com mdia zero e varincia igual a 1. >> randn(3,4) ans = -0.4326 0.2877 1.1892 0.1746 -1.6656 -1.1465 -0.0376 -0.1867 0.1253 1.1909 0.3273 0.7258 13

eye => retorna uma matriz identidade da ordem desejada: >> eye(5) ans = 10000 01000 00100 00010 00001

Abaixo mostrada uma tabela contendo as principais funes para matrizes e sua respectiva sintaxe. Funes Det determinante de uma matriz Diag diagonal de uma matriz ou matriz diagonal a partir de um vetor Inv retorna a inversa da matriz Reshape reformata as dimenses de uma matriz, mantendo o nmero original de elementos Numel Retorna o nmero de elementos de uma matriz Ndims retorna o nmero de dimenses da matriz Tril retorna a matriz triangular inferior da matriz dada Triu retorna a matriz triangular superior da matriz dada numel(A) ndims(A) tril(A) triu(A) Sintaxe det(A) diag(A) inv(A) reshape(A, m,n)

2.10.

Funes Matemticas Elementares

O MATLAB possui um grande nmero de funes intrnsecas que no podem ser alteradas pelo usurio. Outras funes esto disponveis em uma biblioteca externa distribuda com o programa original (MATLAB TOOLBOX), que so na realidade arquivos com a extenso ".m", criados a partir das funes intrnsecas. A biblioteca externa (MATLAB TOOLBOX) pode ser constantemente atualizada medida que novas aplicaes so desenvolvidas. As funes do MATLAB, intrnsecas ou arquivos ".m", podem ser utilizadas apenas no ambiente MATLAB. As categorias gerais de funes matemticas disponveis no MATLAB incluem: Matemtica elementar;

14

Funes especiais; Matrizes elementares; Matrizes especiais; Decomposio de matrizes; Polinmios; Soluo de equaes diferenciais; Equaes no-lineares e otimizao; Integrao numrica.

Alguns exemplos: >>x=0.5 >>sin(x) >>cos(x) >>sqrt(x) >>exp(x)

2.11.

As Facilidades do HELP (Ajuda)

O MATLAB possui um comando de ajuda (help) que fornece informaes sobre a maior parte dos tpicos. Digitando: >> help Obtm-se uma lista desses tpicos disponveis: matlab\general - General purpose commands. matlab\ops - Operators and special characters. matlab\lang - Programming language constructs. matlab\elmat - Elementary matrices and matrix manipulation. matlab\elfun - Elementary math functions. matlab\specfun - Specialized math functions. matlab\matfun - Matrix functions - numerical linear algebra. matlab\datafun - Data analysis and Fourier transforms. matlab\audio - Audio support. matlab\polyfun - Interpolation and polynomials. matlab\funfun - Function functions and ODE solvers. matlab\sparfun - Sparse matrices.

15

matlab\graph2d - Two dimensional graphs. matlab\graph3d - Three dimensional graphs. matlab\specgraph - Specialized graphs. matlab\graphics - Handle Graphics. matlab\uitools - Graphical user interface tools. matlab\strfun - Character strings. matlab\iofun - File input/output. matlab\timefun - Time and dates. matlab\datatypes - Data types and structures. matlab\verctrl - Version control. matlab\winfun - Windows Operating System Interface Files (DDE/ActiveX) matlab\demos - Examples and demonstrations. toolbox\local - Preferences. simulink\simulink - Simulink simulink\blocks - Simulink block library. . . . MATLABR12\work - (No table of contents file) For more help on directory/topic, type "help topic". Para obter informaes sobre um tpico especfico, digite help tpico. Por exemplo: >> help plot

3. Operaes com Matrizes


As operaes com matrizes no MATLAB so as seguintes: Adio; Subtrao; Multiplicao; Diviso direita; Diviso esquerda; Potenciao;

16

Transposta.

3.1.

Transposta

O caractere apstrofo ( ' ) , indica a transposta de uma matriz. A declarao de: >> A = [1 2 3; 4 5 6; 7 8 0] >> B = A' resulta em: A= 123 456 780

B=

147 258 360

Se Z uma matriz complexa, Z ser o conjugado complexo composto. Para obter simplesmente a transposta de Z deve-se usar Z..

3.2.

Adio e Subtrao

A adio e subtrao de matrizes so indicadas, respectivamente, por "+" e "-". As operaes so definidas somente se as matrizes tm as mesmas dimenses. A adio e subtrao tambm so definidas se um dos operadores um escalar, ou seja, uma matriz l x l. Neste caso, o escalar adicionado ou subtrado de todos os elementos do outro operador.

3.3.

Multiplicao

A multiplicao de matrizes indicada por "*". A multiplicao x*y definida somente se a segunda dimenso de x for igual primeira dimenso de y, ou seja, o nmero de colunas da primeira matriz for igual ao nmero de linhas da segunda matriz. O produto de uma matriz por um vetor tambm pode ser executado e um escalar pode multiplicar ou ser multiplicado por qualquer matriz. Para realizar a multiplicao de elemento por elemento de duas matrizes necessrio utilizar o smbolo de multiplicao escalar pontuada .*. O ponto que precede o asterisco, smbolo padro da multiplicao, diz ao MATLAB para fazer a

17

multiplicao elemento por elemento. A multiplicao sem o ponto significa multiplicao matricial.

3.4.

Diviso

Existem dois smbolos para diviso de matrizes no MATLAB "\" e "/". Se A uma matriz quadrada no singular, ento A\B e A/B correspondem respectivamente a inv(A)*B e A*inv(B), por exemplo:

>>A=[1 2; 3 4] >>B=[5 6; 7 8]

>>A/B ans = 3.0000 -2.0000 2.0000 -1.0000

>>A\B ans = -3.0000 -4.0000 4.0000 5.0000

3.5.

Potenciao

A expresso A^ p eleva A p-sima potncia e definida se A matriz quadrada e p um escalar. Se p um inteiro maior do que um, a potenciao computada como mltiplas multiplicaes. Se utilizarmos um ponto precedendo o smbolo (.^), ento a operao ser realizada em cada elemento da matriz, analogamente multiplicao.

4. Operaes Relacionais e Lgicas 4.1. Operadores Relacionais


< <= > Menor que Menor ou igual a Maior que

18

>= == ~=

Maior ou igual a Igual a Diferente de

A comparao feita entre os pares de elementos correspondentes e o resultado uma matriz composta dos nmeros um e zero, com um representando VERDADEIRO e zero, FALSO. Por exemplo, >> 2 + 2 ~= 4 ans = 0

4.2.

Operadores Lgicos

& | ~

E Ou No

Pode-se usar os operadores lgicos como mostrado a seguir:

>> 1= = 1 & 4 = = 3 ans = 0 >> 1 = = 1 | 4 = = 3 ans = 1

4.3.

Arquivos M de Comandos

Para problemas simples, mais rpido introduzir comandos no prompt do MATLAB, ou seja, no prprio Command Window. Entretanto, se o nmero de comandos grande e voc vai precisar repetir tais clculos, ento melhor abrir um arquivo de texto simples e depois pedir para o MATLAB executar esse programa. Esses arquivos so chamados de arquivos M ou arquivos de comandos. So salvos com a extenso .m. Para criar um arquivo basta selecionar New do menu File e, ento,

19

selecione M-File. Esse procedimento abre uma janela do editor de texto na qual voc pode escrever os comandos do MATLAB. Em virtude da grande utilidade dos arquivos de comandos o MATLAB possui vrias funes apropriadas para o uso em arquivos M. Essas funes so:

Comandos disp(ans) echo input pause pause (n) waitforbuttonpress

Descrio Mostra os resultados sem identificar o nome das variveis Controla a exibio dos comandos dos arquivos M na janela de comandos Solicita ao usurio que fornea um dado de entrada Suspende a execuo at que o usurio pressione alguma tecla Suspende a execuo por n segundos Suspende a execuo at que o usurio pressione uma tecla ou um boto do mouse.

5. Arquivos M de Funes
um programa elaborado como arquivo.m e que calcula algo desejado pelo programador, devolvendo somente o valor da resposta. Os comandos executados por esse programa ficam ocultos. Voc s visualiza o que entra e o que sai, ou seja, uma funo uma caixa preta. Clculo

Entrada

Sada

5.1.

Por que usar funes?

As funes so necessrias quando existe uma seqncia de comandos que so sempre teis para serem calculados ou mesmo funes matemticas. Um exemplo de funo do MATLAB: flipud => inverte as linhas de uma matriz.

5.2.

Principal Diferena Entre Arquivo .M de Funes e

Arquivo .M de Comandos
A principal diferena que o arquivo .m de funes se comunica com o MATLAB apenas por meio das variveis de entrada e sada que ela cria. As variveis 20

intermedirias definidas internamente pela funo no aparecem nem interagem com o espao de trabalho do MATLAB.

5.3.

Como Escrever uma Funo

A primeira linha do arquivo M indica que ele contm uma funo e especifica seu nome (o que vem a ser o nome do arquivo sem a extenso .m). Essa linha tambm define as variveis de entrada e sada. As prximas linhas so comentrios explicando o que essa funo calcula.

5.4.

Regras e Propriedades

1) O nome da funo tem que ser idntico ao nome do arquivo. Por exemplo, a funo flipud armazena em um arquivo denominado flipud.m. 2) Cada funo possui seu prprio espao de trabalho, separada do espao de trabalho do Matlab. A nica ligao em relao as variveis de entrada e sada da funo. 3) Pode-se verificar se a quantidade de argumentos de entrada e sada de uma funo est correta atravs das variveis nargin e nargout, variveis dentro do espao de trabalho das funes. So usadas para atribuir valores pr-definidos a variveis de entrada e determinar que variveis de sada o usurio deseja. Por exemplo, a funo linspace. Se o argumento de entrada for igual a 2 ele usa nmeros de pontos igual a 100 como padro. Os arquivos M de funes podem conter mais funes dentro deles, ou seja, uma funo dentro de outra funo.

6. Anlise Numrica
Nos casos em que difcil integrar, derivar ou determinar analiticamente algum valor especfico de uma funo, o computador pode ser utilizado para aproximar de uma forma numrica a soluo desejada. O MATLAB possui ferramentas para resolver esses problemas.

6.1.

Integrao Numrica
Calcular integral numrica, mtodo de ordem baixa.

Os dois comandos do MATLAB para integrao usando quadratura so: quad

21

quadl

Calcular integral numrica, mtodo de ordem alta.

Exemplo: Integral de f(x)=x2-x+cos(x) entre -2 e 1 (rea abaixo da curva). Primeiro devemos definir a funo em um arquivo chamado func01.m:

function y=func01(x) %funo para integrar y=x.^2-x+cos(x);

Agora devemos utilizar esta funo para calcular a integral:

q=quad('func01',-2,1) O que resultar em: q= 6.2508 OU: q1=quadl('func01',-2,1) q1 = 6.2508

6.2.

Solues de Equaes Diferenciais

As funes do Matlab usadas para resolver equaes diferenciais so: ode45 ode23 ode113 ode23t ode15s ode23s ode23tb solver de equaes diferenciais non-stiff de ordem mdia solver de equaes diferenciais non-stiff de ordem baixa solver de equaes diferenciais non-stiff de ordem varivel solver de equaes diferenciais de ordem baixa (regra trapezoidal) solver de equaes diferenciais stiff de ordem varivel solver de equaes diferenciais stiff de ordem baixa solver de equaes diferenciais stiff de ordem baixa

sintaxe: [t,y]=ode45(funcao,[Tinicial Tfinal], CondIniciais);

22

7. Grficos
Os grficos so mais uma funcionalidade existente no MATLAB, que possui uma vasta biblioteca de comandos grficos simples, atravs dos quais possvel obter grficos bidimensionais e tridimensionais com qualquer tipo de escala e coordenada. Aqui veremos como construir e formatar grficos bidimensionais.

7.1.
plot logplot

Grficos Bidimensionais
Plotar linear Plotar em escala loglog Plotar em semilog Plotar em semilog Plotar em coordenada polar Plotar duas curvas no mesmo grfico com escalas y diferentes

Os comandos mais utilizados para plotar grficos 2D so:

semilogx semilogy polar plotyy

Para grficos especiais, tem-se os seguintes comandos: area bar barh pie stairs scatter stem comet compass feather ezplot ezpolar errorbar hist rose fplot plotmatrix Grfico de rea Grfico de barras Grfico de barras horizontal Grfico de pizza Grfico escada Grfico discreto que indica pontos com marcadores Grfico discreto que indica pontos com hastes Gera grfico com exibio de trajetria animada Grficos de vetores Grficos de vetores Grficos a partir de equaes de funes Grficos a partir de equaes de funes Plotar erro Plotar histograma Plotar histograma em ngulo Plotar funo Mapeia o grfico da matriz

23

Se Y um vetor, plot(Y) produz um grfico linear dos elementos de Y versos o ndice dos elementos de Y. Por exemplo, para plotar os nmeros [0.0 0.48 0.84 1.0 0.91 0.6 0.14], entre com o vetor e execute o comando plot:

Y = [0 0.48 0.84 1.0 0.91 0.6 0.14]; plot(Y) E o resultado mostrado na Janela Grfica:

Se X e Y so vetores com dimenses iguais, o comando plot(X,Y) produz um grfico bidimensional dos elementos de X versos os elementos de Y. Por exemplo:

t = 0:0.05:4*pi; y = sin(t); plot(t,y) Resulta em:

24

Tambm possvel plotar mltiplas linhas em um nico grfico usando o comando plot com mltiplos argumentos:

plot(t, sin(t), t, cos(t), t, sin(t + pi), t, cos(t + pi)) Resulta em:

7.2.

Estilos de Linha e Smbolos

Os tipos de linhas, smbolos e cores usados para plotar grficos podem ser controlados se os padres no so satisfatrios.

Tipos de Linha Solid --. : __________________ ---------------------------.-.-.-.-.-.-.-.-.-.-.-.-.-.-. ................................... Marcadores . * + x S D V .................................... ****************** ++++++++++++++++ xxxxxxxxxxxxxxxxx Quadrado Losango Tringulo para baixo

25

^ < > P H

Tringulo para cima Tringulo para a esquerda Tringulo para a direita Pentagrama Hexagrama Cores

Y M C R G B W K

Amarelo Lils Azul claro Vermelho Verde Azul escuro Branco Preto

7.3.

Comando Subplot

Gera vrios eixos em uma mesma janela. Sintaxe: subplot(m,n,p) Parmetros de entrada: m = nmero de eixos na vertical (nmero de linhas). n = nmero de eixos na horizontal (nmero de colunas). p = ndice do eixo corrente.

As funes de plotagem so executadas no eixo corrente configurado pelos parmetros indicados na ltima chamada subplot.

7.4.
um grfico:

Anotaes no Grfico

O MATLAB possui comandos de fcil utilizao para adicionar informaes em

title

Ttulo do grfico

26

xlabel ylabel zlabel text grid Por exemplo: fplot(sin, [-pi pi])

Ttulo do eixo x Ttulo do eixo y Ttulo do eixo z Inserir anotao no grfico Linhas de grade

title(Grfico da funo f(x)=seno(x), -pi<x<pi) xlabel(x) ylabel(f(x)) grid

8. Referncias Bibliogrficas
Hanselmam, D. , Littlefield, B. ; Verso do Estudante MATLAB 5 Guia do Usurio, Makron Books, 1997. Matsumoto, E. Y. ; MATLAB 6 Fundamentos de Programao , Editora rica, 2 edio, 2001. The Student Edition of SIMULINK Dinamic System Simulation Software for Technical. Matsumoto, E. Y. ; MATLAB 6.5 Fundamentos de Programao , Editora rica, 1 edio, 2002.

27

Você também pode gostar