SlideShare uma empresa Scribd logo
Conceitos Básicos
Rodolfo Maduro Almeida
O que é o MATLAB?
MATrix LABoratory é um software para
resolução de problemas numéricos e
visualização computacional.
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
O que é o MATLAB?
• Desenvolvido pela Mathworks Inc., sede em
Natick, Massachusetts, EUA.
http://www.mathworks.com/
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Características
• Software multiplataforma: Distribuições para
Windows, Linux/Unix e Mac.
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Características
• Possui ambiente interativo e uma linguagem
simples, de alto nível cujos recursos permitem
ganho no tempo de implementação.
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Vantagens
• Seu ambiente de desenvolvimento permite
interação do MATLAB com outras linguagens
como C/C++, Java, Fortran. Isto permite o
desenvolvimento de toolboxes: extensões de
sua linguagem para solução de problemas
específicos.
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Toolbox de
Otimização
Toolbox de
Redes Neurais
Toolbox de Proc. de Imagens
Desvantagens
• Não aconselhável para solução de problemas
complexos que exijam elevado esforço
computacional: por ser baseado em uma
linguagem de programação interpretada.
• Você tem que pagar para usá-lo (05/05/09):
Versão Estudante: U$ 99.00
Cada toolbox: U$ 59.00
Alternativas ao MATLAB
• SciLab: software livre que possui os mesmas
características do MATLAB anteriormente
mencionadas. Nos últimos anos vem ganhando espaço
no meio acadêmico. Possui distribuições para Windows
e Linux.
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Alternativas ao MATLAB
Inicializando o MATLAB
Iniciar > Executar > “matlab” <enter>
Iniciar > Programas > MATLAB > MATLAB
Pelo prompt de comando do MS-DOS:
> “matlab” <enter>
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
O Ambiente do MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
O Ambiente do MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Diretório de trabalho
O Ambiente do MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Current directory: Exibe o
conteúdo do diretório de trabalho
O Ambiente do MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Janela de comandos
O Ambiente do MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
O Ambiente do MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
O Ambiente do MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Workspace: Exibe
informações acerca das
variáveis carregadas na
memória
O Ambiente do MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Command history:
Exibe informações
acerca do histórico de
comandos
O Ambiente MATLAB
Os comandos do MATLAB são definidos em
uma linguagem própria.
Suas instruções podem ser interpretadas:
• via janela de comandos
• via arquivos com um conjunto de instruções (script)
editado com o MATLAB Editor e salvo em um arquivo de
extensão “.m”.
O bom uso do MATLAB exige um melhor
domínio da sintaxe de sua linguagem.
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Declaração de variáveis
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
• Variável: Elemento de um programa que é
declarado e armazenado na memória, cujo
valor pode ser modificado ao longo de sua
execução.
• Declaração de uma variável no MATLAB: usa-
se o operador atribuição “=”.
>> variavel = valor;
• Tipos de valores:
Os tipos podem ser numérico (real ou inteiro),
complexo ou caractere.
Declaração de variáveis
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Regras para nomes Comentário e exemplos
Case sensitive Custo, CustO, CuStO e CUSTO são variáveis
diferentes no MATLAB
Devem conter no
máximo 31 caracteres
CustoTotalAnoAnterior = 10
CustoTotalEstimadoProximoAno = 4
Não deve começar com
número e nem conter
pontuações ou espaços
Valor_Estimado = 3
Valor1 = 9.2
X123 = 2.5
Declaração de variáveis
Representação das
variáveis: matrizes
Escalar String
Matrizes
numéricas
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
X = 3
Matriz
(1x1)
BALTAM
nome = „MATLAB‟
Vetor linha
01
10
B
101B
1
0
1
B
Declaração de variáveis
• Declarando matrizes no MATLAB:
1. Os elementos devem ser declarados entre [ ]
2. Os elementos de uma mesma linha numa matriz
são separados por espaço(s) ou vírgula
3. ponto-e-vírgula(;) indica o final de uma linha de
uma matriz ou final de uma expressão
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
452
906
841
A A = [1 4 8; 6 0 9; 2 4 5]
Operadores aritméticos
matriciais
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Operação Símbolo
Adição +
Subtração -
Multiplicação *
Divisão /
Potenciação ^
Matriz transposta „
Operadores aritméticos
>> a = 4
a = 4
>> b = 3
b = 3
>> c = a + b
c = 7
>> c1 = a – b
c1 = 1
>> c2 = b / a
c2 = 0.7500
>> c3 = a^2 + b^2
c3 = 25
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Operadores aritméticos
>> A = [1 2; 3 4]
A =
1 2
3 4
>> B = [5 6; 7 8]
B =
5 6
7 8
>> C = A + B
C =
6 8
10 12
>> C1 = A – B
C1 =
-4 -4
-4 -4
>> C2 = A^(-1) %=(inv(A))
C2 =
-2.0000 1.0000
1.5000 -0.5000
>> C3 = A/B %=(A*inv(B))
C3 =
3.0000 -2.0000
2.0000 -1.0000
>> C4 = A^2 + B^2
C4 =
74 88
106 128
>> C5 = A’
C5 =
1 3
2 4
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Operadores aritméticos
ponto-a-ponto
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Operação Símbolo
Multiplicação .*
Divisão ./
Potenciação .^
Operador ponto-a-ponto: Executa a operações entre (ou sobre) os
elementos da matriz. Quando envolver duas matrizes, as suas dimensões
devem ser as mesmas.
Operadores aritméticos
>> A = [1 2; 3 4]
A =
1 2
3 4
>> B = [5 6; 7 8]
B =
5 6
7 8
>> C1 = A * B
C =
19 22
43 50
>> C1 = A .* B
C2 =
5 12
21 32
>> D1 = A/B
C3 =
3.0000 -2.0000
2.0000 -1.0000
>> D2 = A./B
D1 =
0.2000 0.3333
0.4286 0.5000
>> E1 = A^3
E1 =
37 54
81 118
>> E2 = A.^3
E2 =
1 8
27 64
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Operador dois-pontos (:)
É um dos operadores mais úteis do MATLAB.
Cria vetores e serve para manipular índices de
matrizes.
Criando vetores:
>> vetor = valor_inicial:incremento:valor_final
>> vetor = valor_inicial:valor_final (incremento=1)
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Operador dois-pontos (:)
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
>> C = 1:2:11
C =
1 3 5 7 9 11
>> E = [1:1:3;4:1:6;7:1:9]
E =
1 2 3
4 5 6
7 8 9
>> D = 0 : 0.5 : 3
D =
0 0.5 1.0 1.5 2.0 2.5 3.0
>> A = [1 : 2 : 15]
A =
1 3 5 7 9 11 13 15
>> A(1,5)
ans =
9
>> B = [1:1:3;2:2:6;5:2:9]
B =
1 2 3
2 4 6
5 7 9
>> b = [10 20 30]
b =
10 20 30
>> B = [B;b]
B =
1 2 3
2 4 6
5 7 9
10 20 30
>> B(1:3,2)
ans =
2
4
7
>> B(3,:)
ans =
5 7 9
>> B([2 3],[1 2])
ans =
2 4
5 7
>> B(end,:)
ans =
10 20 30
Manipulação de Matrizes
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Manipulação de matrizes
>> A = ones(3,3)
A =
1 1 1
1 1 1
1 1 1
>> B = zeros(4,3)
B =
0 0 0
0 0 0
0 0 0
0 0 0
>> I = eye(4,4)
I =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
>> C = rand(3,3)
C =
0.8147 0.9134 0.2785
0.9058 0.6324 0.5469
0.1270 0.0975 0.9575
>> rand('seed',0)
>> D = rand(3,3)
D =
0.2190 0.6793 0.5194
0.0470 0.9347 0.8310
0.6789 0.3835 0.0346
>> E = diag(D)
E =
0.2190
0.9347
0.0346
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Manipulação de matrizes
>> A = ones(3,3)
A =
1 1 1
1 1 1
1 1 1
>> dimA = size(A)
dimA =
2 3
>> A1 = diag(A)
A1 =
1
1
1
>> maxdimA = length(A)
maxdimA =
3
>> B = diag(5 * A1)
B =
5 0 0
0 5 0
0 0 5
>> rand('seed',10)
>> C = rand(size(A))
C =
0.1291 0.9505 0.1597
0.6048 0.3367 0.7808
0.5040 0.0924 0.6925
>> C1 = triu(C)
C1 =
0.1291 0.9505 0.1597
0 0.3367 0.7808
0 0 0.6925
>> C2 = tril(C)
C2 =
0.1291 0 0
0.6048 0.3367 0
0.5040 0.0924 0.6925
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Exercícios
Defina as matrizes e efetue as seguintes
operações:
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
índicesdemaisospara3,
ímparesepara,2
paresepara,1
)( 99
ji
ji
bB ij
índicesdemaisospara3,
parímparpara,2
ímparparpara,6
)( 99
jei
jei
aA ij
a) A * A‟
b) B^2
c) B.^2
d) A * B
e) A .^B
f) A./B
Exercícios
>> A = 3 * ones(9,9)
>> A(2:2:end,1:2:end)=6
>> A(1:2:end,2:2:end)=2
>> disp(A)
3 2 3 2 3 2 3 2 3
6 3 6 3 6 3 6 3 6
3 2 3 2 3 2 3 2 3
6 3 6 3 6 3 6 3 6
3 2 3 2 3 2 3 2 3
6 3 6 3 6 3 6 3 6
3 2 3 2 3 2 3 2 3
6 3 6 3 6 3 6 3 6
3 2 3 2 3 2 3 2 3
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Exercícios
>> B = 3 * ones(9,9)
>> B(2:2:end,2:2:end)=1
>> B(1:2:end,1:2:end)=2
>> disp(B)
2 3 2 3 2 3 2 3 2
3 1 3 1 3 1 3 1 3
2 3 2 3 2 3 2 3 2
3 1 3 1 3 1 3 1 3
2 3 2 3 2 3 2 3 2
3 1 3 1 3 1 3 1 3
2 3 2 3 2 3 2 3 2
3 1 3 1 3 1 3 1 3
2 3 2 3 2 3 2 3 2
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Operadores lógicos e
relacionais
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Operador
relacional
Símbolo
Igual ==
Diferente ~=
Maior >
Menor <
Maior ou igual >=
Menor ou igual <=
Operador
lógico
Símbolo
E &
Ou |
Não ~
1: True – Verdadeiro
0: False - Falso
Operadores lógicos e
relacionais
>> 2 == 3
ans = 0
>> 2 <= 3
ans = 1
>> (2 == 3) & (2 <= 3)
ans = 0
>> ~(2 == 3) & (2 <= 3)
ans = 1
>> (2 ~= 3) & (2 <= 3)
ans = 1
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Trabalhando com scripts
• O que é um script?
o conjunto de instruções do MATLAB que podem ser
executadas sistematicamente.
• Para que serve?
o Sintetiza os comandos freqüentemente digitados
em um único comando (o script com os comandos é
executado)
o Aplicável a problemas mais extensos onde é exigido
mais comandos
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Editando scripts
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Outra opção: File > New M-File
Programando em MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Programando em MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Salvar o script em
um diretório de sua
preferência
Executar o script.
Atalho: F5
Entrada e Saída (tela)
• Comando de entrada: input
R = input(‘Forneca o valor de entrada:')
>>
Forneca o valor de entrada: <digitar valor> <enter>
• Comando de saida: disp
disp(X)
Mostra o valor de X na janela de comandos.
disp('Ola Mundo!')
>>
Ola Mundo!
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Entrada e Saída (tela)
clc
A = input('Forneca uma matriz 2 x 2: ');
B = input('Forneca uma matriz 2 x 2: ');
C1 = A + B;
C2 = A * B;
disp('Soma entre as duas matrizes: ');
disp(C1)
disp('Produto entre as duas matrizes: ');
disp(C2)
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Entrada e Saída (arquivos)
• Comando de entrada: load
Formato ASCII:
>> x = load('arquivo.txt');
Formato binário do MATLAB:
>> load arquivo.mat
• Comando de saída: save
Formato ASCII:
>> save „arquivo.txt‟ variaveis –ascii
Formato binário do MATLAB:
>> save „arquivo.mat‟ variaveis
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Entrada e Saída (arquivos)
dados = load('lorenz_xyz.txt');
t = dados(:,1);
x = dados(:,2);
y = dados(:,3);
z = dados(:,4);
save lorenz_xyz.mat t x y z;
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Obtenha o arquivo: http://br.geocities.com/rodmaduro/lorenz_xyz.txt
Controladores de fluxo
if expressao_1
instrucoes_1
else
instrucoes_2
end
if expressao_1
instrucoes_1
elseif expressao_2
instrucoes_2
else
instrucoes_3
end
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
if: cria caminhos alternativos na execução de
um script.
Controladores de fluxo
disp('Script que compara dois numeros')
a = input('Forneca um numero: ');
b = input('Forneca outro numero: ');
if a > b
disp(['Numero maior: ' num2str(a)])
disp(['Numero menor: ' num2str(b)])
else
disp(['Numero maior: ' num2str(b)])
disp(['Numero menor: ' num2str(a)])
end
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Controladores de fluxo
disp('Script que compara dois numeros')
a = input('Forneca um numero: ');
b = input('Forneca outro numero: ');
if a > b
disp(['Numero maior: ' num2str(a)])
disp(['Numero menor: ' num2str(b)])
elseif a < b
disp(['Numero maior: ' num2str(b)])
disp(['Numero menor: ' num2str(a)])
else
disp(['Os dois numeros sao iguais a '
num2str(a)])
end
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Controladores de fluxo
for variavel = valor_inicial:passo:valor_final
instrucoes;
end
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
for: permite que um grupo de instruções se
repitam por um número especificado de vezes.
Controladores de fluxo
N = input('Forneca a dimensao da matriz: ');
A = zeros(N,N);
for i = 1:N
for j=1:N
A(i,j) = 2 * i - 3 * j;
end
end
disp(A)
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
jiaA NNij 32)(
Controladores de fluxo
clc
N = input('Forneca a dimensao da matriz: ');
A = zeros(N,N);
for i = 1:N
for j=1:N
if (mod(i,2) == 0) & (mod(j,2) == 1)
A(i,j) = 6;
elseif (mod(i,2) == 1) & (mod(j,2) == 0)
A(i,j) = 2;
else
A(i,j) = 3;
end
end
end
disp(A)
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
índicesdemaisospara3,
parímparpara,2
ímparparpara,6
)( 99
jei
jei
aA ij
Controladores de fluxo
while (expressao de controle)
instrucoes;
end
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
while: permite que um grupo de instruções se
repitam enquanto uma determinada expressão
de controle for verdadeira.
Controladores de fluxo
EPS = 2;
while (1+EPS) > 1
EPS = EPS/2;
end
disp(EPS)
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
EPS é o maior número que adicionado a 1 torna seu valor igual a 1.
Isso acontece porque o computador um utiliza número fixo de dígitos
para representar os números. O MATLAB usa 16 dígitos de precisão,
nesse caso o valor de EPS será próximo de 10^(-16):
>> EPS
EPS =
1.1102e-016
>> 1 + EPS == 1
ans =
1
Controladores de fluxo
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
break: encerra a execução de um laço de
repetição (for ou while).
EPS = 1;
for num = 1 : 1000
EPS = EPS / 2;
if ~((1+EPS) > 1)
break
end
end
disp(EPS)
EPS = 1;
while (1+EPS) > 1
EPS = EPS/2;
end
disp(EPS)
Visualizando figuras
• Comando plot: gera um gráfico 2D
>> plot(x,y)
y: vetor linha ou vetor coluna
y: vetor linha ou vetor coluna
• Exemplo:
x = -pi:0.001:pi;
y = sin(x);
plot(x,y)
axis([-pi pi -1 1])
xlabel('x')
ylabel('sin(x)')
title('Grafico da Função Seno')
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Visualizando figuras
• Comando plot3: gera um gráfico 3D
>> plot3(x,y,z)
y: vetor linha ou vetor coluna
y: vetor linha ou vetor coluna
z: vetor linha ou vetor coluna
• Exemplo:
t = 0 : pi/50 :10*pi;
plot3(sin(t) ,cos(t) ,t)
axis([-1 1 -1 1 0 40])
xlabel('x')
ylabel(„y')
zlabel(„z')
grid on
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Salvando figuras
• Comando print:
print(gcf,formato,nome_da_figura)
Formatos mais comuns:
-dpng: salva figura em PNG
-deps: salva em Encapsulated PostScript
-depsc: salva Encapsulated Color PostScript
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Salvando figuras
clc; close all;
dados = load('lorenz_xyz.txt');
t = dados(:,1);
x = dados(:,2);
y = dados(:,3);
z = dados(:,4);
figure;
subplot(3,1,1)
plot(t,x)
xlabel('t')
ylabel('x(t)')
subplot(3,1,2)
plot(t,y)
xlabel('t')
ylabel('z(t)')
subplot(3,1,3)
plot(t,z)
xlabel('t')
ylabel('z(t)‘)
print(gcf,'-dpng',‘lorenz_xyz.png')
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Para baixar o aquivo 'lorenz_xyz.txt'
clique aqui.
Salvando figuras
clc; close all;
dados = load('lorenz_xyz.txt');
t = dados(:,1);
x = dados(:,2);
y = dados(:,3);
z = dados(:,4);
figure;
plot3(x,y,z)
xlabel('x(t)')
ylabel('x(t)')
zlabel('z(t)')
grid on
print(gcf,'-dpng',‘lorenz3d.png')
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Funções em MATLAB
• Uma função é um trecho de código que admite
parâmetros de entrada e retorna valores.
• Arquivos “.m” podem ser tanto scripts quanto
funções.
• Os comandos nativos do MATLAB são funções
criadas na sua própria linguagem.
function variavel_retorno = nome_da_funcao(variaveis_entrada)
instrucoes para obter variavel_retorno;
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Criando uma função no
MATLAB
function distancia = calcula_distancia(x,y)
diferenca = x - y;
distancia = sqrt(diferenca*transpose(diferenca));
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Exemplo: Função que calcula a distancia euclidiana entre
dois vetores do Rn. Crie e salve o seguinte arquivo “.m”:
• Para executar essa função, vá a janela de
comando e proceda da seguinte forma:
>> p = [1 0 0];
>> q = [0 1 0];
>> d = calcula_distancia(p, q)
• Ou:
>> d = calcula_distancia([1 0 0], [0 1 0])
Criando uma função no
MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Como aprender mais
e mais sobre MATLAB?
• Acessando sua documentação:
Comando doc:
>> doc
• Acessando scripts demonstrativos:
Comando demo:
>> demo
• Maiores esclarecimentos sobre algum comando:
>> help comando
Exemplo:
>> help plot
>> doc plot
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Como aprender mais
mais sobre MATLAB?
• Livros sobre MATLAB
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
Como aprender mais
e mais sobre MATLAB?
• Google:
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida

Mais conteúdo relacionado

Mais procurados

Placas de rede
Placas de redePlacas de rede
Placas de rede
Patrícia Morais
 
Manutenção
ManutençãoManutenção
Manutenção
Carla Lopes
 
Exercícios Resolvidos: Taxa relacionada
Exercícios Resolvidos: Taxa relacionadaExercícios Resolvidos: Taxa relacionada
Exercícios Resolvidos: Taxa relacionada
Diego Oliveira
 
Exercícios Resolvidos: Distribuição Binomial
Exercícios Resolvidos: Distribuição BinomialExercícios Resolvidos: Distribuição Binomial
Exercícios Resolvidos: Distribuição Binomial
Diego Oliveira
 
Apostila festo pneumatica
Apostila festo pneumaticaApostila festo pneumatica
Apostila festo pneumatica
oantu
 
5ª aula pratica com inversor de frequencia
5ª aula pratica com inversor de frequencia5ª aula pratica com inversor de frequencia
5ª aula pratica com inversor de frequencia
AnaMacedoeletrical
 
Tabela derivadas-e-integrais
Tabela derivadas-e-integraisTabela derivadas-e-integrais
Tabela derivadas-e-integrais
mariasousagomes
 
Matemática - PA e PG
Matemática - PA e PGMatemática - PA e PG
Matemática - PA e PG
Thiago Santiago
 
Trigonometria
TrigonometriaTrigonometria
Trigonometria
Bruno Araújo Oliveira
 
Questoes resolvidas de termodinmica
Questoes resolvidas de termodinmicaQuestoes resolvidas de termodinmica
Questoes resolvidas de termodinmica
sjfnet
 
14 produto misto volume paralelepipedo
14 produto misto volume paralelepipedo14 produto misto volume paralelepipedo
14 produto misto volume paralelepipedo
Rodrigo da Silva
 
Componentes Eletrônicos.pdf
Componentes Eletrônicos.pdfComponentes Eletrônicos.pdf
Componentes Eletrônicos.pdf
clientedaescola
 
C++ Funções
 C++ Funções C++ Funções
C++ Funções
Odair Soares
 
Aula 09 Medidas de Tendencia Central de Dados Agrupados
Aula 09   Medidas de Tendencia Central de Dados AgrupadosAula 09   Medidas de Tendencia Central de Dados Agrupados
Algoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetiçãoAlgoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetição
Alex Camargo
 
Regras de inferência
Regras de inferênciaRegras de inferência
Regras de inferência
Isaque Tomé
 
Funcoes trigonometricas.ppt
Funcoes trigonometricas.pptFuncoes trigonometricas.ppt
Funcoes trigonometricas.ppt
Rodrigo Carvalho
 
Algoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso CompletoAlgoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso Completo
thomasdacosta
 
Séries fourier cap_3 Exemplos de Séries de Fourier
Séries fourier cap_3 Exemplos de Séries de FourierSéries fourier cap_3 Exemplos de Séries de Fourier
Séries fourier cap_3 Exemplos de Séries de Fourier
Ciro Marcus
 
Exercicios de Algoritimos
 Exercicios de Algoritimos Exercicios de Algoritimos
Exercicios de Algoritimos
sandra avenia
 

Mais procurados (20)

Placas de rede
Placas de redePlacas de rede
Placas de rede
 
Manutenção
ManutençãoManutenção
Manutenção
 
Exercícios Resolvidos: Taxa relacionada
Exercícios Resolvidos: Taxa relacionadaExercícios Resolvidos: Taxa relacionada
Exercícios Resolvidos: Taxa relacionada
 
Exercícios Resolvidos: Distribuição Binomial
Exercícios Resolvidos: Distribuição BinomialExercícios Resolvidos: Distribuição Binomial
Exercícios Resolvidos: Distribuição Binomial
 
Apostila festo pneumatica
Apostila festo pneumaticaApostila festo pneumatica
Apostila festo pneumatica
 
5ª aula pratica com inversor de frequencia
5ª aula pratica com inversor de frequencia5ª aula pratica com inversor de frequencia
5ª aula pratica com inversor de frequencia
 
Tabela derivadas-e-integrais
Tabela derivadas-e-integraisTabela derivadas-e-integrais
Tabela derivadas-e-integrais
 
Matemática - PA e PG
Matemática - PA e PGMatemática - PA e PG
Matemática - PA e PG
 
Trigonometria
TrigonometriaTrigonometria
Trigonometria
 
Questoes resolvidas de termodinmica
Questoes resolvidas de termodinmicaQuestoes resolvidas de termodinmica
Questoes resolvidas de termodinmica
 
14 produto misto volume paralelepipedo
14 produto misto volume paralelepipedo14 produto misto volume paralelepipedo
14 produto misto volume paralelepipedo
 
Componentes Eletrônicos.pdf
Componentes Eletrônicos.pdfComponentes Eletrônicos.pdf
Componentes Eletrônicos.pdf
 
C++ Funções
 C++ Funções C++ Funções
C++ Funções
 
Aula 09 Medidas de Tendencia Central de Dados Agrupados
Aula 09   Medidas de Tendencia Central de Dados AgrupadosAula 09   Medidas de Tendencia Central de Dados Agrupados
Aula 09 Medidas de Tendencia Central de Dados Agrupados
 
Algoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetiçãoAlgoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetição
 
Regras de inferência
Regras de inferênciaRegras de inferência
Regras de inferência
 
Funcoes trigonometricas.ppt
Funcoes trigonometricas.pptFuncoes trigonometricas.ppt
Funcoes trigonometricas.ppt
 
Algoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso CompletoAlgoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso Completo
 
Séries fourier cap_3 Exemplos de Séries de Fourier
Séries fourier cap_3 Exemplos de Séries de FourierSéries fourier cap_3 Exemplos de Séries de Fourier
Séries fourier cap_3 Exemplos de Séries de Fourier
 
Exercicios de Algoritimos
 Exercicios de Algoritimos Exercicios de Algoritimos
Exercicios de Algoritimos
 

Semelhante a Matlab - Conceitos Básicos

Introdução ao matlab
Introdução ao matlabIntrodução ao matlab
Introdução ao matlab
Ramon Mayor Martins
 
Aula6 programação
Aula6 programaçãoAula6 programação
Aula6 programação
IFPB
 
Guia Matlab
Guia MatlabGuia Matlab
Guia Matlab
Rodrigo Silva
 
Curso matlab
Curso matlabCurso matlab
Curso matlab
Lázaro Lima
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
Flavio Borges
 
4-Introducao programacao-convertido.pptx
4-Introducao programacao-convertido.pptx4-Introducao programacao-convertido.pptx
4-Introducao programacao-convertido.pptx
Patrícia Melo
 
Apostila_MATLAB.pdf
Apostila_MATLAB.pdfApostila_MATLAB.pdf
Apostila_MATLAB.pdf
LucasCardoso162679
 
Apostila matlab
Apostila matlabApostila matlab
Apostila matlab
Rafael Santana
 
Map, filter e reduce
Map, filter e reduceMap, filter e reduce
Map, filter e reduce
Jackson Veroneze
 
apostila matlab
apostila matlabapostila matlab
apostila matlab
Flávia Martins
 
Apostila matlab
Apostila matlabApostila matlab
Apostila matlab
Daniel Natividade
 
Apostila 20 matlab
Apostila 20 matlabApostila 20 matlab
Apostila 20 matlab
Jéssica Carolina
 
Introdução à programação
Introdução à programaçãoIntrodução à programação
Introdução à programação
12anogolega
 
Introdução aos algoritmos e à algoritmia.pptx
Introdução aos algoritmos e à algoritmia.pptxIntrodução aos algoritmos e à algoritmia.pptx
Introdução aos algoritmos e à algoritmia.pptx
Paulo Cardoso
 
Minicurso Matlab IVSEE 2013 UERJ
Minicurso Matlab IVSEE 2013 UERJMinicurso Matlab IVSEE 2013 UERJ
Minicurso Matlab IVSEE 2013 UERJ
Renan Prata
 
Aula 3-lógica.pptx
Aula 3-lógica.pptxAula 3-lógica.pptx
Aula 3-lógica.pptx
GustavoBarrosLins1
 
Tutorial Octave Matlab
Tutorial Octave MatlabTutorial Octave Matlab
Tutorial Octave Matlab
blogmaxima
 
Programacao de macros_com_libre_office_basic_slideshare
Programacao de macros_com_libre_office_basic_slideshareProgramacao de macros_com_libre_office_basic_slideshare
Programacao de macros_com_libre_office_basic_slideshare
Marcio Junior Vieira
 
Programação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice BasicProgramação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice Basic
Marcio Junior Vieira
 
Programação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice BasicProgramação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice Basic
Ambiente Livre
 

Semelhante a Matlab - Conceitos Básicos (20)

Introdução ao matlab
Introdução ao matlabIntrodução ao matlab
Introdução ao matlab
 
Aula6 programação
Aula6 programaçãoAula6 programação
Aula6 programação
 
Guia Matlab
Guia MatlabGuia Matlab
Guia Matlab
 
Curso matlab
Curso matlabCurso matlab
Curso matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
4-Introducao programacao-convertido.pptx
4-Introducao programacao-convertido.pptx4-Introducao programacao-convertido.pptx
4-Introducao programacao-convertido.pptx
 
Apostila_MATLAB.pdf
Apostila_MATLAB.pdfApostila_MATLAB.pdf
Apostila_MATLAB.pdf
 
Apostila matlab
Apostila matlabApostila matlab
Apostila matlab
 
Map, filter e reduce
Map, filter e reduceMap, filter e reduce
Map, filter e reduce
 
apostila matlab
apostila matlabapostila matlab
apostila matlab
 
Apostila matlab
Apostila matlabApostila matlab
Apostila matlab
 
Apostila 20 matlab
Apostila 20 matlabApostila 20 matlab
Apostila 20 matlab
 
Introdução à programação
Introdução à programaçãoIntrodução à programação
Introdução à programação
 
Introdução aos algoritmos e à algoritmia.pptx
Introdução aos algoritmos e à algoritmia.pptxIntrodução aos algoritmos e à algoritmia.pptx
Introdução aos algoritmos e à algoritmia.pptx
 
Minicurso Matlab IVSEE 2013 UERJ
Minicurso Matlab IVSEE 2013 UERJMinicurso Matlab IVSEE 2013 UERJ
Minicurso Matlab IVSEE 2013 UERJ
 
Aula 3-lógica.pptx
Aula 3-lógica.pptxAula 3-lógica.pptx
Aula 3-lógica.pptx
 
Tutorial Octave Matlab
Tutorial Octave MatlabTutorial Octave Matlab
Tutorial Octave Matlab
 
Programacao de macros_com_libre_office_basic_slideshare
Programacao de macros_com_libre_office_basic_slideshareProgramacao de macros_com_libre_office_basic_slideshare
Programacao de macros_com_libre_office_basic_slideshare
 
Programação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice BasicProgramação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice Basic
 
Programação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice BasicProgramação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice Basic
 

Mais de Rodolfo Almeida

Geoprocessamento aplicado a estudos ambientais
Geoprocessamento aplicado a estudos ambientaisGeoprocessamento aplicado a estudos ambientais
Geoprocessamento aplicado a estudos ambientais
Rodolfo Almeida
 
Classificação não-supervisionada de imagens de sensoriamento remoto utilizand...
Classificação não-supervisionada de imagens de sensoriamento remoto utilizand...Classificação não-supervisionada de imagens de sensoriamento remoto utilizand...
Classificação não-supervisionada de imagens de sensoriamento remoto utilizand...
Rodolfo Almeida
 
Introdução à Modelagem Ambiental
Introdução à Modelagem AmbientalIntrodução à Modelagem Ambiental
Introdução à Modelagem Ambiental
Rodolfo Almeida
 
Ricardo Mendes de Freitas - Modelagem Matemática em Ecologia de Populações
Ricardo Mendes de Freitas - Modelagem Matemática em Ecologia de PopulaçõesRicardo Mendes de Freitas - Modelagem Matemática em Ecologia de Populações
Ricardo Mendes de Freitas - Modelagem Matemática em Ecologia de Populações
Rodolfo Almeida
 
Criando uma base cartográfica a partir de dados de Sensoriamento Remoto
Criando uma base cartográfica a partir de dados de Sensoriamento RemotoCriando uma base cartográfica a partir de dados de Sensoriamento Remoto
Criando uma base cartográfica a partir de dados de Sensoriamento Remoto
Rodolfo Almeida
 
Introdução à Computação Aplicada
Introdução à Computação AplicadaIntrodução à Computação Aplicada
Introdução à Computação Aplicada
Rodolfo Almeida
 
Sensoriamento Remoto dos Recursos Naturais - Aula 01
Sensoriamento Remoto dos Recursos Naturais - Aula 01Sensoriamento Remoto dos Recursos Naturais - Aula 01
Sensoriamento Remoto dos Recursos Naturais - Aula 01
Rodolfo Almeida
 
Orientações básicas para a elaboração de projetos
Orientações básicas para a elaboração de projetosOrientações básicas para a elaboração de projetos
Orientações básicas para a elaboração de projetos
Rodolfo Almeida
 
Introdução às Geotecnologias - GPS (Global Positioning System)
Introdução às Geotecnologias - GPS (Global Positioning System)Introdução às Geotecnologias - GPS (Global Positioning System)
Introdução às Geotecnologias - GPS (Global Positioning System)
Rodolfo Almeida
 
Cálculo numérico aula 04 - resolução de sistemas de equações lineares - mét...
Cálculo numérico   aula 04 - resolução de sistemas de equações lineares - mét...Cálculo numérico   aula 04 - resolução de sistemas de equações lineares - mét...
Cálculo numérico aula 04 - resolução de sistemas de equações lineares - mét...
Rodolfo Almeida
 
Cálculo Numérico - Aula01: Introdução aos métodos numéricos
Cálculo Numérico - Aula01: Introdução aos métodos numéricosCálculo Numérico - Aula01: Introdução aos métodos numéricos
Cálculo Numérico - Aula01: Introdução aos métodos numéricos
Rodolfo Almeida
 
Cálculo Numérico - Aula 02: Introdução ao SCILAB
Cálculo Numérico - Aula 02: Introdução ao SCILABCálculo Numérico - Aula 02: Introdução ao SCILAB
Cálculo Numérico - Aula 02: Introdução ao SCILAB
Rodolfo Almeida
 
Cálculo Numérico - Aula 03: Zeros de funções
Cálculo Numérico - Aula 03: Zeros de funçõesCálculo Numérico - Aula 03: Zeros de funções
Cálculo Numérico - Aula 03: Zeros de funções
Rodolfo Almeida
 

Mais de Rodolfo Almeida (13)

Geoprocessamento aplicado a estudos ambientais
Geoprocessamento aplicado a estudos ambientaisGeoprocessamento aplicado a estudos ambientais
Geoprocessamento aplicado a estudos ambientais
 
Classificação não-supervisionada de imagens de sensoriamento remoto utilizand...
Classificação não-supervisionada de imagens de sensoriamento remoto utilizand...Classificação não-supervisionada de imagens de sensoriamento remoto utilizand...
Classificação não-supervisionada de imagens de sensoriamento remoto utilizand...
 
Introdução à Modelagem Ambiental
Introdução à Modelagem AmbientalIntrodução à Modelagem Ambiental
Introdução à Modelagem Ambiental
 
Ricardo Mendes de Freitas - Modelagem Matemática em Ecologia de Populações
Ricardo Mendes de Freitas - Modelagem Matemática em Ecologia de PopulaçõesRicardo Mendes de Freitas - Modelagem Matemática em Ecologia de Populações
Ricardo Mendes de Freitas - Modelagem Matemática em Ecologia de Populações
 
Criando uma base cartográfica a partir de dados de Sensoriamento Remoto
Criando uma base cartográfica a partir de dados de Sensoriamento RemotoCriando uma base cartográfica a partir de dados de Sensoriamento Remoto
Criando uma base cartográfica a partir de dados de Sensoriamento Remoto
 
Introdução à Computação Aplicada
Introdução à Computação AplicadaIntrodução à Computação Aplicada
Introdução à Computação Aplicada
 
Sensoriamento Remoto dos Recursos Naturais - Aula 01
Sensoriamento Remoto dos Recursos Naturais - Aula 01Sensoriamento Remoto dos Recursos Naturais - Aula 01
Sensoriamento Remoto dos Recursos Naturais - Aula 01
 
Orientações básicas para a elaboração de projetos
Orientações básicas para a elaboração de projetosOrientações básicas para a elaboração de projetos
Orientações básicas para a elaboração de projetos
 
Introdução às Geotecnologias - GPS (Global Positioning System)
Introdução às Geotecnologias - GPS (Global Positioning System)Introdução às Geotecnologias - GPS (Global Positioning System)
Introdução às Geotecnologias - GPS (Global Positioning System)
 
Cálculo numérico aula 04 - resolução de sistemas de equações lineares - mét...
Cálculo numérico   aula 04 - resolução de sistemas de equações lineares - mét...Cálculo numérico   aula 04 - resolução de sistemas de equações lineares - mét...
Cálculo numérico aula 04 - resolução de sistemas de equações lineares - mét...
 
Cálculo Numérico - Aula01: Introdução aos métodos numéricos
Cálculo Numérico - Aula01: Introdução aos métodos numéricosCálculo Numérico - Aula01: Introdução aos métodos numéricos
Cálculo Numérico - Aula01: Introdução aos métodos numéricos
 
Cálculo Numérico - Aula 02: Introdução ao SCILAB
Cálculo Numérico - Aula 02: Introdução ao SCILABCálculo Numérico - Aula 02: Introdução ao SCILAB
Cálculo Numérico - Aula 02: Introdução ao SCILAB
 
Cálculo Numérico - Aula 03: Zeros de funções
Cálculo Numérico - Aula 03: Zeros de funçõesCálculo Numérico - Aula 03: Zeros de funções
Cálculo Numérico - Aula 03: Zeros de funções
 

Matlab - Conceitos Básicos

  • 2. O que é o MATLAB? MATrix LABoratory é um software para resolução de problemas numéricos e visualização computacional. MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 3. O que é o MATLAB? • Desenvolvido pela Mathworks Inc., sede em Natick, Massachusetts, EUA. http://www.mathworks.com/ MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 4. Características • Software multiplataforma: Distribuições para Windows, Linux/Unix e Mac. MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 5. Características • Possui ambiente interativo e uma linguagem simples, de alto nível cujos recursos permitem ganho no tempo de implementação. MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 6. Vantagens • Seu ambiente de desenvolvimento permite interação do MATLAB com outras linguagens como C/C++, Java, Fortran. Isto permite o desenvolvimento de toolboxes: extensões de sua linguagem para solução de problemas específicos. MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Toolbox de Otimização Toolbox de Redes Neurais Toolbox de Proc. de Imagens
  • 7. Desvantagens • Não aconselhável para solução de problemas complexos que exijam elevado esforço computacional: por ser baseado em uma linguagem de programação interpretada. • Você tem que pagar para usá-lo (05/05/09): Versão Estudante: U$ 99.00 Cada toolbox: U$ 59.00
  • 8. Alternativas ao MATLAB • SciLab: software livre que possui os mesmas características do MATLAB anteriormente mencionadas. Nos últimos anos vem ganhando espaço no meio acadêmico. Possui distribuições para Windows e Linux. MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 10. Inicializando o MATLAB Iniciar > Executar > “matlab” <enter> Iniciar > Programas > MATLAB > MATLAB Pelo prompt de comando do MS-DOS: > “matlab” <enter> MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 11. O Ambiente do MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 12. O Ambiente do MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Diretório de trabalho
  • 13. O Ambiente do MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Current directory: Exibe o conteúdo do diretório de trabalho
  • 14. O Ambiente do MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Janela de comandos
  • 15. O Ambiente do MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 16. O Ambiente do MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 17. O Ambiente do MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Workspace: Exibe informações acerca das variáveis carregadas na memória
  • 18. O Ambiente do MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Command history: Exibe informações acerca do histórico de comandos
  • 19. O Ambiente MATLAB Os comandos do MATLAB são definidos em uma linguagem própria. Suas instruções podem ser interpretadas: • via janela de comandos • via arquivos com um conjunto de instruções (script) editado com o MATLAB Editor e salvo em um arquivo de extensão “.m”. O bom uso do MATLAB exige um melhor domínio da sintaxe de sua linguagem. MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 20. Declaração de variáveis MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida • Variável: Elemento de um programa que é declarado e armazenado na memória, cujo valor pode ser modificado ao longo de sua execução. • Declaração de uma variável no MATLAB: usa- se o operador atribuição “=”. >> variavel = valor; • Tipos de valores: Os tipos podem ser numérico (real ou inteiro), complexo ou caractere.
  • 21. Declaração de variáveis MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Regras para nomes Comentário e exemplos Case sensitive Custo, CustO, CuStO e CUSTO são variáveis diferentes no MATLAB Devem conter no máximo 31 caracteres CustoTotalAnoAnterior = 10 CustoTotalEstimadoProximoAno = 4 Não deve começar com número e nem conter pontuações ou espaços Valor_Estimado = 3 Valor1 = 9.2 X123 = 2.5
  • 22. Declaração de variáveis Representação das variáveis: matrizes Escalar String Matrizes numéricas MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida X = 3 Matriz (1x1) BALTAM nome = „MATLAB‟ Vetor linha 01 10 B 101B 1 0 1 B
  • 23. Declaração de variáveis • Declarando matrizes no MATLAB: 1. Os elementos devem ser declarados entre [ ] 2. Os elementos de uma mesma linha numa matriz são separados por espaço(s) ou vírgula 3. ponto-e-vírgula(;) indica o final de uma linha de uma matriz ou final de uma expressão MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida 452 906 841 A A = [1 4 8; 6 0 9; 2 4 5]
  • 24. Operadores aritméticos matriciais MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Operação Símbolo Adição + Subtração - Multiplicação * Divisão / Potenciação ^ Matriz transposta „
  • 25. Operadores aritméticos >> a = 4 a = 4 >> b = 3 b = 3 >> c = a + b c = 7 >> c1 = a – b c1 = 1 >> c2 = b / a c2 = 0.7500 >> c3 = a^2 + b^2 c3 = 25 MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 26. Operadores aritméticos >> A = [1 2; 3 4] A = 1 2 3 4 >> B = [5 6; 7 8] B = 5 6 7 8 >> C = A + B C = 6 8 10 12 >> C1 = A – B C1 = -4 -4 -4 -4 >> C2 = A^(-1) %=(inv(A)) C2 = -2.0000 1.0000 1.5000 -0.5000 >> C3 = A/B %=(A*inv(B)) C3 = 3.0000 -2.0000 2.0000 -1.0000 >> C4 = A^2 + B^2 C4 = 74 88 106 128 >> C5 = A’ C5 = 1 3 2 4 MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 27. Operadores aritméticos ponto-a-ponto MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Operação Símbolo Multiplicação .* Divisão ./ Potenciação .^ Operador ponto-a-ponto: Executa a operações entre (ou sobre) os elementos da matriz. Quando envolver duas matrizes, as suas dimensões devem ser as mesmas.
  • 28. Operadores aritméticos >> A = [1 2; 3 4] A = 1 2 3 4 >> B = [5 6; 7 8] B = 5 6 7 8 >> C1 = A * B C = 19 22 43 50 >> C1 = A .* B C2 = 5 12 21 32 >> D1 = A/B C3 = 3.0000 -2.0000 2.0000 -1.0000 >> D2 = A./B D1 = 0.2000 0.3333 0.4286 0.5000 >> E1 = A^3 E1 = 37 54 81 118 >> E2 = A.^3 E2 = 1 8 27 64 MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 29. Operador dois-pontos (:) É um dos operadores mais úteis do MATLAB. Cria vetores e serve para manipular índices de matrizes. Criando vetores: >> vetor = valor_inicial:incremento:valor_final >> vetor = valor_inicial:valor_final (incremento=1) MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 30. Operador dois-pontos (:) MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida >> C = 1:2:11 C = 1 3 5 7 9 11 >> E = [1:1:3;4:1:6;7:1:9] E = 1 2 3 4 5 6 7 8 9 >> D = 0 : 0.5 : 3 D = 0 0.5 1.0 1.5 2.0 2.5 3.0
  • 31. >> A = [1 : 2 : 15] A = 1 3 5 7 9 11 13 15 >> A(1,5) ans = 9 >> B = [1:1:3;2:2:6;5:2:9] B = 1 2 3 2 4 6 5 7 9 >> b = [10 20 30] b = 10 20 30 >> B = [B;b] B = 1 2 3 2 4 6 5 7 9 10 20 30 >> B(1:3,2) ans = 2 4 7 >> B(3,:) ans = 5 7 9 >> B([2 3],[1 2]) ans = 2 4 5 7 >> B(end,:) ans = 10 20 30 Manipulação de Matrizes MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 32. Manipulação de matrizes >> A = ones(3,3) A = 1 1 1 1 1 1 1 1 1 >> B = zeros(4,3) B = 0 0 0 0 0 0 0 0 0 0 0 0 >> I = eye(4,4) I = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 >> C = rand(3,3) C = 0.8147 0.9134 0.2785 0.9058 0.6324 0.5469 0.1270 0.0975 0.9575 >> rand('seed',0) >> D = rand(3,3) D = 0.2190 0.6793 0.5194 0.0470 0.9347 0.8310 0.6789 0.3835 0.0346 >> E = diag(D) E = 0.2190 0.9347 0.0346 MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 33. Manipulação de matrizes >> A = ones(3,3) A = 1 1 1 1 1 1 1 1 1 >> dimA = size(A) dimA = 2 3 >> A1 = diag(A) A1 = 1 1 1 >> maxdimA = length(A) maxdimA = 3 >> B = diag(5 * A1) B = 5 0 0 0 5 0 0 0 5 >> rand('seed',10) >> C = rand(size(A)) C = 0.1291 0.9505 0.1597 0.6048 0.3367 0.7808 0.5040 0.0924 0.6925 >> C1 = triu(C) C1 = 0.1291 0.9505 0.1597 0 0.3367 0.7808 0 0 0.6925 >> C2 = tril(C) C2 = 0.1291 0 0 0.6048 0.3367 0 0.5040 0.0924 0.6925 MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 34. Exercícios Defina as matrizes e efetue as seguintes operações: MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida índicesdemaisospara3, ímparesepara,2 paresepara,1 )( 99 ji ji bB ij índicesdemaisospara3, parímparpara,2 ímparparpara,6 )( 99 jei jei aA ij a) A * A‟ b) B^2 c) B.^2 d) A * B e) A .^B f) A./B
  • 35. Exercícios >> A = 3 * ones(9,9) >> A(2:2:end,1:2:end)=6 >> A(1:2:end,2:2:end)=2 >> disp(A) 3 2 3 2 3 2 3 2 3 6 3 6 3 6 3 6 3 6 3 2 3 2 3 2 3 2 3 6 3 6 3 6 3 6 3 6 3 2 3 2 3 2 3 2 3 6 3 6 3 6 3 6 3 6 3 2 3 2 3 2 3 2 3 6 3 6 3 6 3 6 3 6 3 2 3 2 3 2 3 2 3 MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 36. Exercícios >> B = 3 * ones(9,9) >> B(2:2:end,2:2:end)=1 >> B(1:2:end,1:2:end)=2 >> disp(B) 2 3 2 3 2 3 2 3 2 3 1 3 1 3 1 3 1 3 2 3 2 3 2 3 2 3 2 3 1 3 1 3 1 3 1 3 2 3 2 3 2 3 2 3 2 3 1 3 1 3 1 3 1 3 2 3 2 3 2 3 2 3 2 3 1 3 1 3 1 3 1 3 2 3 2 3 2 3 2 3 2 MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 37. Operadores lógicos e relacionais MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Operador relacional Símbolo Igual == Diferente ~= Maior > Menor < Maior ou igual >= Menor ou igual <= Operador lógico Símbolo E & Ou | Não ~ 1: True – Verdadeiro 0: False - Falso
  • 38. Operadores lógicos e relacionais >> 2 == 3 ans = 0 >> 2 <= 3 ans = 1 >> (2 == 3) & (2 <= 3) ans = 0 >> ~(2 == 3) & (2 <= 3) ans = 1 >> (2 ~= 3) & (2 <= 3) ans = 1 MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 39. Trabalhando com scripts • O que é um script? o conjunto de instruções do MATLAB que podem ser executadas sistematicamente. • Para que serve? o Sintetiza os comandos freqüentemente digitados em um único comando (o script com os comandos é executado) o Aplicável a problemas mais extensos onde é exigido mais comandos MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 40. Editando scripts MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Outra opção: File > New M-File
  • 41. Programando em MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 42. Programando em MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Salvar o script em um diretório de sua preferência Executar o script. Atalho: F5
  • 43. Entrada e Saída (tela) • Comando de entrada: input R = input(‘Forneca o valor de entrada:') >> Forneca o valor de entrada: <digitar valor> <enter> • Comando de saida: disp disp(X) Mostra o valor de X na janela de comandos. disp('Ola Mundo!') >> Ola Mundo! MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 44. Entrada e Saída (tela) clc A = input('Forneca uma matriz 2 x 2: '); B = input('Forneca uma matriz 2 x 2: '); C1 = A + B; C2 = A * B; disp('Soma entre as duas matrizes: '); disp(C1) disp('Produto entre as duas matrizes: '); disp(C2) MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 45. Entrada e Saída (arquivos) • Comando de entrada: load Formato ASCII: >> x = load('arquivo.txt'); Formato binário do MATLAB: >> load arquivo.mat • Comando de saída: save Formato ASCII: >> save „arquivo.txt‟ variaveis –ascii Formato binário do MATLAB: >> save „arquivo.mat‟ variaveis MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 46. Entrada e Saída (arquivos) dados = load('lorenz_xyz.txt'); t = dados(:,1); x = dados(:,2); y = dados(:,3); z = dados(:,4); save lorenz_xyz.mat t x y z; MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Obtenha o arquivo: http://br.geocities.com/rodmaduro/lorenz_xyz.txt
  • 47. Controladores de fluxo if expressao_1 instrucoes_1 else instrucoes_2 end if expressao_1 instrucoes_1 elseif expressao_2 instrucoes_2 else instrucoes_3 end MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida if: cria caminhos alternativos na execução de um script.
  • 48. Controladores de fluxo disp('Script que compara dois numeros') a = input('Forneca um numero: '); b = input('Forneca outro numero: '); if a > b disp(['Numero maior: ' num2str(a)]) disp(['Numero menor: ' num2str(b)]) else disp(['Numero maior: ' num2str(b)]) disp(['Numero menor: ' num2str(a)]) end MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 49. Controladores de fluxo disp('Script que compara dois numeros') a = input('Forneca um numero: '); b = input('Forneca outro numero: '); if a > b disp(['Numero maior: ' num2str(a)]) disp(['Numero menor: ' num2str(b)]) elseif a < b disp(['Numero maior: ' num2str(b)]) disp(['Numero menor: ' num2str(a)]) else disp(['Os dois numeros sao iguais a ' num2str(a)]) end MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 50. Controladores de fluxo for variavel = valor_inicial:passo:valor_final instrucoes; end MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida for: permite que um grupo de instruções se repitam por um número especificado de vezes.
  • 51. Controladores de fluxo N = input('Forneca a dimensao da matriz: '); A = zeros(N,N); for i = 1:N for j=1:N A(i,j) = 2 * i - 3 * j; end end disp(A) MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida jiaA NNij 32)(
  • 52. Controladores de fluxo clc N = input('Forneca a dimensao da matriz: '); A = zeros(N,N); for i = 1:N for j=1:N if (mod(i,2) == 0) & (mod(j,2) == 1) A(i,j) = 6; elseif (mod(i,2) == 1) & (mod(j,2) == 0) A(i,j) = 2; else A(i,j) = 3; end end end disp(A) MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida índicesdemaisospara3, parímparpara,2 ímparparpara,6 )( 99 jei jei aA ij
  • 53. Controladores de fluxo while (expressao de controle) instrucoes; end MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida while: permite que um grupo de instruções se repitam enquanto uma determinada expressão de controle for verdadeira.
  • 54. Controladores de fluxo EPS = 2; while (1+EPS) > 1 EPS = EPS/2; end disp(EPS) MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida EPS é o maior número que adicionado a 1 torna seu valor igual a 1. Isso acontece porque o computador um utiliza número fixo de dígitos para representar os números. O MATLAB usa 16 dígitos de precisão, nesse caso o valor de EPS será próximo de 10^(-16): >> EPS EPS = 1.1102e-016 >> 1 + EPS == 1 ans = 1
  • 55. Controladores de fluxo MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida break: encerra a execução de um laço de repetição (for ou while). EPS = 1; for num = 1 : 1000 EPS = EPS / 2; if ~((1+EPS) > 1) break end end disp(EPS) EPS = 1; while (1+EPS) > 1 EPS = EPS/2; end disp(EPS)
  • 56. Visualizando figuras • Comando plot: gera um gráfico 2D >> plot(x,y) y: vetor linha ou vetor coluna y: vetor linha ou vetor coluna • Exemplo: x = -pi:0.001:pi; y = sin(x); plot(x,y) axis([-pi pi -1 1]) xlabel('x') ylabel('sin(x)') title('Grafico da Função Seno') MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 57. Visualizando figuras • Comando plot3: gera um gráfico 3D >> plot3(x,y,z) y: vetor linha ou vetor coluna y: vetor linha ou vetor coluna z: vetor linha ou vetor coluna • Exemplo: t = 0 : pi/50 :10*pi; plot3(sin(t) ,cos(t) ,t) axis([-1 1 -1 1 0 40]) xlabel('x') ylabel(„y') zlabel(„z') grid on MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 58. Salvando figuras • Comando print: print(gcf,formato,nome_da_figura) Formatos mais comuns: -dpng: salva figura em PNG -deps: salva em Encapsulated PostScript -depsc: salva Encapsulated Color PostScript MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 59. Salvando figuras clc; close all; dados = load('lorenz_xyz.txt'); t = dados(:,1); x = dados(:,2); y = dados(:,3); z = dados(:,4); figure; subplot(3,1,1) plot(t,x) xlabel('t') ylabel('x(t)') subplot(3,1,2) plot(t,y) xlabel('t') ylabel('z(t)') subplot(3,1,3) plot(t,z) xlabel('t') ylabel('z(t)‘) print(gcf,'-dpng',‘lorenz_xyz.png') MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Para baixar o aquivo 'lorenz_xyz.txt' clique aqui.
  • 60. Salvando figuras clc; close all; dados = load('lorenz_xyz.txt'); t = dados(:,1); x = dados(:,2); y = dados(:,3); z = dados(:,4); figure; plot3(x,y,z) xlabel('x(t)') ylabel('x(t)') zlabel('z(t)') grid on print(gcf,'-dpng',‘lorenz3d.png') MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 61. Funções em MATLAB • Uma função é um trecho de código que admite parâmetros de entrada e retorna valores. • Arquivos “.m” podem ser tanto scripts quanto funções. • Os comandos nativos do MATLAB são funções criadas na sua própria linguagem. function variavel_retorno = nome_da_funcao(variaveis_entrada) instrucoes para obter variavel_retorno; MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 62. Criando uma função no MATLAB function distancia = calcula_distancia(x,y) diferenca = x - y; distancia = sqrt(diferenca*transpose(diferenca)); MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida Exemplo: Função que calcula a distancia euclidiana entre dois vetores do Rn. Crie e salve o seguinte arquivo “.m”:
  • 63. • Para executar essa função, vá a janela de comando e proceda da seguinte forma: >> p = [1 0 0]; >> q = [0 1 0]; >> d = calcula_distancia(p, q) • Ou: >> d = calcula_distancia([1 0 0], [0 1 0]) Criando uma função no MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 64. Como aprender mais e mais sobre MATLAB? • Acessando sua documentação: Comando doc: >> doc • Acessando scripts demonstrativos: Comando demo: >> demo • Maiores esclarecimentos sobre algum comando: >> help comando Exemplo: >> help plot >> doc plot MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 65. Como aprender mais mais sobre MATLAB? • Livros sobre MATLAB MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 66. Como aprender mais e mais sobre MATLAB? • Google: MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida
  • 67. MATLAB: Conceitos Básicos - Rodolfo Maduro Almeida