Você está na página 1de 28

Introduo ao MATLAB

Paulo Ricardo Viana Piber


Abril/2010

1
Introduo ao MATLAB

O que o MATLAB?
Abreviao de MATrix LABoratory, ou seja,
Laboratrio de Matrizes.

Programa de computador especializado e otimizado


para clculos cientficos e de engenharia.

Foi projetado para clculos com matrizes, mas


transformou-se em um sistema computacional
flexvel, capaz de resolver qualquer problema tcnico.

MATLAB um software, fabricado pela MathWorks Inc, interativo de alta performance


voltado para o clculo numrico e cientfico
2
Evoluo do MATLAB
Verso Ano Verso Ano
MATLAB 1.0 1984 MATLAB 6.5.1
MATLAB 2 1986 MATLAB 6.5.2 2003
MATLAB 3 1987 MATLAB 7
MATLAB 3.5 1990 MATLAB 7.0.1 2004
MATLAB 4 1992 MATLAB 7.0.4
MATLAB 4.2c 1994 MATLAB 7.1 2005
MATLAB 5.0 1996 MATLAB 7.2
MATLAB 5.1 MATLAB 7.3 2006
MATLAB 5.1.1 1997 MATLAB 7.4
MATLAB 5.2 MATLAB 7.5 2007
MATLAB 5.2.1 1998 MATLAB 7.6
MATLAB 5.3 MATLAB 7.7 2008
MATLAB 5.3.1 1999 MATLAB 7.8
MATLAB 6.0 2000 MATLAB 7.9 2009
MATLAB 6.1 2001 MATLAB 7.10 2010
MATLAB 6.5 2002
3
A rea de Trabalho MATLAB

Ao iniciar o MATLAB, aparece uma janela


denominada rea de trabalho MATLAB. A configurao
inicial desta janela vista na Figura 1.

Esta janela integra diversas ferramentas para


gerenciar arquivos, variveis e aplicaes dentro do
ambiente MATLAB.

As ferramentas principais so: Janela de


Comandos, Janela de Histrico de Comandos, Navegador
de Ajuda, Navegador do diretrio corrente, janela de
edio e/ou depurao...

4
A rea de Trabalho MATLAB
Navegador de Diretrio Janela de Comandos
Navegador do Diretrio Corrente MATLAB
Ajuda
Corrente

Janela de Navegador da rea


Histrico de Trabalho
de Comandos
Figura 1 A rea de trabalho do MATLAB 5
Variveis no MATLAB
Existe somente um tipo de varivel:
matriz

Uma matriz uma coleo de valores de dados


organizados em linhas e colunas.

O tipo de matriz pode ser:


escalar: matriz 1 x 1
vetor: matriz 1 x n ou n x 1
matriz propriamente: matriz m x n

a dimenso de matrizes e vetores automtica

6
Variveis no MATLAB

Uma varivel uma regio de memria que contm uma


matriz conhecida por um nome especificado pelo usurio.
Os nomes das variveis precisam iniciar com uma letra.
Nomes de variveis so sensveis a letras maisculas e
minsculas.
7
Variveis no MATLAB
Vetores e matrizes:
delimitadores:
Coluna: espaoou ,
Linha: ;

Exemplos:
a=3 ou a=[3] (1x1)
b=[4 5 6 7] ou b=[4,5,6,7] (1x4)
c=[4 5 6 7;8 9 10 11] (2x4)
d=[4 5 6 7]ou d=[4;5;6;7] (4x1)

8
Janela de Comandos
Pode-se iniciar a utilizar o MATLAB atravs da digitao
dos comandos na Janela de Comandos.
Exemplo: Digitar 2 + 2 e aps apertar ENTER

O MATLAB possui uma ajuda online, para utiliz-la basta digitar


help mais o comando desejado na linha de comando.
Exemplo: help abs
9
Operadores Matemticos

Precedncia Operao
1 O contedo de todos os parnteses avaliado, a partir dos parnteses mais internos em
direo aos mais externos.
2 Todos os expoentes so avaliados, da esquerda para a direita.
3 Todas as multiplicaes e divises so avaliadas, trabalhando da esquerda para a direita.
4 Todas as somas e subtraes so avaliadas, trabalhando da esquerda para a direita.

10
Operadores Matemticos

11
Operadores Matemticos

12
Operador dois-pontos
O operador dois-pontos especifica uma srie de
valores pela especificao do primeiro valor na
srie, o passo de incremento e o ltimo valor na
srie.
Exemplo:
>> x = 1:2:10
x= 1 3 5 7 9
>> x = 10:-2:1
x = 10 8 6 4 2
>> x = 1:10
x=1 2 3 4 5 6 7 8 9 10
13
Operador dois-pontos
>> M = [1:1:3;4:1:6;7:1:9]
>> v=[2:2:10]
M=
v=
1 2 3
2 4 6 8 10 4 5 6
7 8 9

Para acessar o elemento de um vetor ou matriz

>> v(3) >> M(2,3)

ans = ans =

6 6

14
Valores Especiais

Funo Propsito
pi Armazena com 15 dgitos significativos
i, j Contm o valor 1
ans Resposta mais recente de uma expresso
Inf Representa o infinito de mquina. (diviso por zero)
NaN No nmero. (diviso de zero por zero)
eps Preciso da mquina. Menor diferena entre dois
nmeros que pode ser representada no computador.

15
Gerao de matrizes

A = rand(m,n) ou rand(n)
Gera matriz com elementos aleatrios.
A = eye(m,n) ou eye(n)
Gera matriz com elementos na diagonal iguais a 1.

A = zeros (m,n) ou zeros(n)


Gera matriz com todos elementos iguais a 0.

A = ones(m,n) ou ones(n)
Gera matriz com todos elementos iguais a 1.
16
Polinmios no MATLAB
Polinmios no MATLAB so manipulados como vetores.

Os seus coeficientes so armazenados como elementos de


um vetor linha, comeando pelo coeficiente do termo de
maior grau.

O comando roots calcula as razes do polinmio e poly


determina os coeficientes do polinmio.
Exemplo: p(x) = x3 + 10x2 - 2x - 29
>> p = [1 10 -2 -29] >> roots(p) >> poly(ans)

p= ans =
ans =
1 10 -2 -29 -9.9064
1.6648 1.0000 10.0000 -2.0000 -29.0000
-1.7584
17
Sistema de Equaes Lineares
O MATLAB permite resolver sistemas de equaes
numericamente de forma muito eficiente. Considerar o
seguinte sistema de equaes:

Ax = b onde x = A-1b
>> A = [1 2 1; 4 1 2; 6 3 1] >> b = [1; 0; 2]
A= b=
1 2 1 1
4 1 2 >> x = inv(A)*b 0
6 3 1 x= 2
0.0588
0.7059
-0.4706
18
Grficos no MATLAB
1000
Grficos 2D
800

>> x = [-10:1:10]; 600

>> y = x.^3; 400


>> plot(x,y,'r'); 200
>> grid on
0

-200

-400

-600

-800

-1000
-10 -8 -6 -4 -2 0 2 4 6 8 10

O comando subplot mostra diversos grficos na mesma


janela
subplot(#linhas, #colunas, nmero)
19
Grficos no MATLAB
Grficos 3D
>> x = 0:pi/50:10*pi;
>> plot3(sin(x),cos(x),x)

40

30

20

10

0
1
0.5 1
0 0.5
0
-0.5 -0.5
-1 -1

20
Grficos no MATLAB
Grficos 3D
>> a=-1000:50:1000;
>> b=a;
>> [A,B]=meshgrid(a,b);
2000
>> Z=(-A.^2+B.^2/5)/150;
>> mesh(A,B,Z) 0

-2000

-4000

-6000

-8000
1000
500 1000
0 500
0
-500 -500
-1000 -1000

21
Programao no MATLAB
Expressa problemas mais extensos;

Agiliza os comandos mais digitados;

uma linguagem interpretada;

Pode ser criada a partir de qualquer editor de texto.

22
Controladores de Fluxo
if : cria caminhos alternativo no programa
>> x=rand(1) >> x=rand(1);
y=rand(1) y=rand(1);
IF expression if x > y if x < y
statements temp = y temp = y;
ELSEIF expression x = temp y = x;
statements end x = temp;
ELSE else
statements x = 0.4565 disp('x eh maior que y')
END y = 0.0185 x, y
temp = 0.0185 end
x = 0.0185 x eh maior que y

x = 0.9355
y = 0.9169

23
Controladores de Fluxo
for: permite que um comando ou um grupo de comandos
se repitam
for varivel = expresso
instrues
end

>> for ii=1:10


x(ii) = ii.^2;
end
x

x=

1 4 9 16 25 36 49 64 81 100

24
Controladores de Fluxo
while: permite que um ou mais comandos sejam
repetidos enquanto a expresso de controle for
verdadeira
WHILE expresso
instrues
END

>> i=0;
while ( sqrt(i) < 5 )
i = i+1;
end
sqrt(i)

ans =

25
Funes Auxiliares
input recebe dados atravs do teclado, que podem ser
ou no armazenados em uma varivel;

break encerra um lao mais interno controlado pelo


comando for;

pause pra a execuo do programa at que uma


nova tecla seja pressionada.

26
Variveis Simblicas
syms x define x como varivel simblica;
A funo sym cria variveis simblicas

>> syms x >> x = sym('x');


eqn=x^2-3*x-4
f = x^2*cos(x);
solve(eqn)
integral = int(f)
eqn =
derivada = diff(f)
x^2-3*x-4 integral =
x^2*sin(x)-2*sin(x)+2*x*cos(x)
ans =
derivada =
4
2*x*cos(x)-x^2*sin(x)
-1

27
Referncias
CHAPMAN, Stephen J. Programao em MATLAB para
Engenheiros. Editora Thomson, 2003.

http://www.mathworks.com/access/helpdesk/help/techdoc/

Brian R. Hunt, Ronald L. Lipsman and Jonathan M.


Rosenberg. A Guide to MATLAB for Beginners and
Experienced Users. Cambridge University Press, 2006.

Brian D. Hahn and Daniel T. Valentine. Essential MATLAB


for Engineers and Scientists. Elsevier, 2007.

28

Você também pode gostar