Documentos de Académico
Documentos de Profesional
Documentos de Cultura
BIBLIOGRAFIA
MATLAB 6 – Fundamentos de Programaç ão - É lia Yathie Matsumoto - Editora É rica
AJUDA
help – help on-line em linha de texto
helpwin – janela de help on-line
helpdesk – documentaç ão em hipertexto
COMANDOS
pathtool – janela para configuraç ão da lista de diretó rios de busca
workspace – janela do workspace
path / matlabpath – exibem path de busca corrente
what – exibe arquivos ‘.m’ contidos no diretó rio de trabalho
clc – limpa tela
which – identifica e localiza arquivo
! – chama comandos do SO
>> !del teste.m
format – formato de exibiç ão dos nú meros na tela
who – lista nomes das variáveis em uso
whos – lista nomes e tipos das variáveis em uso
clear – elimina variáveis
OPERADORES
* multiplicação
.* multiplicação por escalar
./ divisão por escalar
\ divisão à esquerda (a\b equivale a a-1 * b)
.^ potência escalar
‘ transposta
EXPRESSÕ ES BOOLEANAS
• 0 (zero) ou nil (nulo, vazio) indica condiç ão falsa
• 1 (um) ou diferente de 0 (zero) indica condiç ão verdadeira
Símbolos e operadores booleanos:
Operador Teste retorna verdadeiro se Exemplo
== I igual a J I == J
~= I diferente de J I ~= J
< I menor que J I < J
> I maior que J I > J
<= I menor igual a J I <= J
>= I maior igual a J I >= J
~ (not) I falso ~ I
& (and) I e J verdadeiros I & J
| (or) I ou J verdadeiro I | J
VARIÁ VEIS
São case-sensitive e o nome deve ser formado com o máximo de 32 caracteres
FUNÇ Õ ES MATRICIAIS
eye – matriz identidade
>> a = eye(3)
>> a = 1 0 0
0 1 0
0 0 1
zeros – matriz de zeros
ones – matriz de 1’s
det – determinante
inv – inversa
reshape – reformata matriz
size – vetor contendo o tamanho de cada dimensão da matriz
lenght – comprimento do vetor ou dimensão máxima da matriz
diag – retorna a diagonal de uma matriz ou cria matriz diagonal a partir de um vetor
tril – matriz triangular inferior
triu – matriz triangular superior
fliplr – inverte ordem das colunas
flipud – inverte ordem das linhas
INDEXAÇ Ã O DOS ELEMENTOS DE UMA MATRIZ
>> a = [4 3; 2 1];
>> a = 4 3
2 1
>> a(1,1) = 4 % linha, coluna, matriz
>> a(3) = 2 % indexação seqüencial (ordem em linhas)
TIPOS DE DADOS
String (Cadeia de carcteres)
>> txt = ‘Resposta’
>> a = double(txt)
>> a = [82 101 115 112 111 115 116 97] % valores em ASCII
>> char(a)
>> a = Resposta
STRUCT (ESTRUTURA)
Permite o armazenamento de matrizes de naturezas diferentes, identificáveis por nome de campos.
>> s = struct(‘Nome’, {‘ST01’}, ‘Identificador’, {200}, ‘Valores’, {[10 20 30]})
>> s = Nome: ‘ST01’
Identificador: 200
Valores: [10 20 30]
>> s.Nome
>> ans = ST01
MONTANDO VETORES
>> a = [0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1]
ou
>> for j=1:11 % para j de 1 até 11
a(j) = (j-1)/10; % compute o j-ésimo termo
>> end % indicação de final
ou
>> a = linspace(0,1,11)
ou
>> a = 0:0.1:1 % a = <inicio>:<incremento>:<final>
linspace(a,b,c) – vetor linearmente espaç ado (a = inicial, b = final, c = nú mero de elementos)
logspace(a,b,c) – vetor logaritmicamente espaç ado (inicial = 10a, final = 10b, c = nú mero de elementos)
CONCATENANDO MATRIZES
Concatena matrizes em linhas
>> a = [a b]
Concatena matrizes em colunas
>> a = [a ; b]
find – retorna um vetor coluna com os índices seqüenciais dos elementos = 0 ou que satisfazem a
condiç ão determinada
>> b = find(a < 20) % retorna um vetor coluna com os índices dos elementos de a
% menores de 20
sort(a, Dim) – ordena elementos da matriz a na dimensão Dim, se DIM não for informado ordena as
colunas.
>> A = [ 3 1
5 2]
>> b = [2; -9]
>> x = A\b
Combinando as linhas
>> U = [A b]
>> u = rref(U)
>> xu = u(:,3)
EDITOR DE PROGRAMAS
>> edit
% - comentários
... – linha de comando continua na próxima linha
SCRIPT
Seqüência de comandos para automatizar algum processo repetitivo. Não trabalha com parâmetros de
entrada nem de saída. Sempre trabalha com as variáveis do workspace (usa variáveis pré-definidas e
define variáveis no workspace)
FUNÇ Ã O
Também é uma seqüência de comandos, mas que aceita comandos de entrada, retorna parâmetros de
saída. Utilizam seu pró prio espaç o de memó ria para armazenar suas variáveis locais.
function [ps1, ps2, ..., psn] = nome_da_funcao (pe1, ..., pem)
ps1, ..., psn = Parâmetros de saída
pe1, ..., pem = Parâmetros de entrada
% estat.m - Exemplo 1
% [media, desvio_padrão = stat(x)
% retorna média e desvio padrão dos valores em x
function [media, desvio_padrão = stat(x)
media = mean(x); % media
desvio_padrao = std(x) % desvio padrão
• Interessante aproveitar o cabeç alho para documentar o programa e gerar os textos de auxílio
par o comando help.
• A funç ão e o arquivo m-file devem ter o mesmo nome.
• Variáveis do workspace não são reconhecidas dentro das funç õ es
• Podem ser criadas subfunç õ es dentro de uma funç ão
ESTRUTURAS DE SELEÇ Ã O
If, elseif, else
if I == J
A(I,J) = 2;
elseif abs(I – J) == 1
A(I,J) = -1;
else
A(I,J) = 0;
end;
Switch
switch Val
case 0
A(I,J) = 2;
case 1
A(I,J) = -1;
otherwise
A(I,J) = 0;
end
ESTRUTURAS DE REPETIÇ Ã O
While
while I < J
if I == J
A(I,J) = 2;
elseif abs(I – J) == 1
A(I,J) = -1;
else
A(I,J) = 0;
end
I = I + 1;
end
For
for <Valor> = <inicio>:<incremento>:<fim>
<Expressão1>
...
<Expressão2>
end
for i=1:10000
x(i) = cos(2*pi*i/100);
end;
EXERCÍCIO
1) Calcular o vetor Y = sin(2 * pi * xi /100), x = 1, 2, ..., 10000