You are on page 1of 10

Aula 1: Introduo ao MATLAB Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


2326 de Fevereiro de 2016

Disciplina: ECO 018


Prof. Caio Fernandes de Paula
Prof. Fernando Henrique D. Guaracy
Prof.a Rosimeire Aparecida Jernimo

Objetivo

A proposta desta aula apresentar uma introduo ao ambiente do MATLAB e s


representaes de vetores e matrizes utilizadas no software.

rea de Trabalho do MATLAB

A configurao inicial da rea de trabalho do MATLAB mostrada na Figura 1. Ela


composta por cinco janelas:
Command Window: utilizada para se comunicar com o MATLAB por meio de
instrues de diversos tipos. O prompt (>>) indica que o MATLAB est pronto
para receber instrues.
Current Folder : utilizada para gerenciamento de arquivos. Um duplo clique em
um arquivo com extenso .m faz com que esse arquivo seja aberto no Editor do
MATLAB.
Details: mostra os comentrios associados a arquivos do MATLAB que estejam
selecionados na janela Current Directory.
Workspace: mostra as variveis criadas por meio de instrues digitadas na
Command Window.

Universidade Federal de Itajub Campus Avanado de Itabira


Command History : mostra as instrues anteriormente digitadas na Command
Window. Ao invs de re-digitar uma determinada instruo, pode-se dar um
duplo clique na linha desejada para que a instruo seja executada novamente.

Figura 1: rea de trabalho do MATLAB.

Instrues e Variveis

Os comandos digitados na Command Window so executados aps o pressionamento da tecla Enter. Por exemplo, digite 8/10 e pressione Enter. A instruo digitada
e a resposta do MATLAB assume o seguinte formato:

>> 8/10
ans =
0.8000
O MATLAB usa alta preciso em suas computaes, mas por padro limita a exibio da resposta para quatro casas decimais, com a exceo de quando o resultado
um nmero inteiro. A resposta do comando mais recente armazenada em uma varivel chamada ans. Essa varivel pode ser utilizada em outros clculos, por exemplo:

>> 5*ans
ans =
4
2
Aula 1: Introduo ao MATLAB Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


Ao invs de armazenar o resultado na varivel padro ans, pode-se atribuir o resultado de uma expresso matemtica uma varivel de escolha do usurio, por
exemplo:

>> r=8/10
r =
0.8000
O MATLAB utiliza os smbolos + / para adio, subtrao, multiplicao, diviso e exponenciao de escalares. As expresses so avaliadas a partir da esquerda,
com a exponenciao tendo a maior ordem de precedncia, seguido pela multiplicao e diviso com ordens de precedncia iguais, e finalmente adio e subtrao com
ordens de precedncia iguais. Essa ordem pode ser modificada pela utilizao de
parnteses.
Os smbolos i e j denotam a unidade imaginria, podendo ser utilizados para representar nmeros complexos como em x = 5 + 8i. A Tabela 1 mostra outras constantes e variveis especiais com valores pr-definidos.
Tabela 1: Variveis especiais e constantes.
Comando Descrio
eps
Preciso das operaes
em ponto flutuante.
i,j
Unidade imaginria 1.
Inf
Infinito.
NaN
Resultado numrico indefinido.
pi
Nmero .
Pode-se inserir vrios comandos na mesma linha separando-os por vrgula. Para
suprimir a exibio do resultado de alguma operao, utiliza-se ponto e vrgula. Por
exemplo:

>> x=2;y=6+x,x=y+7
y =
8
x =
15

3.1

Gerenciamento de Sesses

A Tabela 2 apresenta alguns comandos bsicos referentes ao gerenciamento de


uma sesso do MATLAB. A Tabela 3 apresenta os comandos utilizados para salvar a
sesso atual ou algumas de suas variveis e recuper-las posteriormente.

3
Aula 1: Introduo ao MATLAB Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


Tabela 2: Comandos bsicos para gerenciamento de sesso.
Comando
Descrio
clc
Limpa a Command Window.
clear
Remove todas as variveis da memria (Workspace).
clear var1 var2 Remove as variveis var1 e var2 da memria.
exist('nome')
Determina se existe um arquivo ou varivel com o nome nome.
quit
Encerra o MATLAB.
who
Lista todas as variveis atualmente na memria.
whos
Lista as variveis na memria, indicando suas dimenses.

Comando
save
load
save nome
load nome
save nome

Tabela 3: Armazenamento e recuperao de sesso.


Descrio
Salva as variveis do Workspace no arquivo matlab.mat.
Carrega as variveis armazenadas no arquivo matlab.mat.
Salva as variveis do Workspace no arquivo nome.mat.
Carrega as variveis armazenadas no arquivo nome.mat.
var1 var2 Salva as variveis var1 e var2 no arquivo nome.mat.

Arquivos de Script e o Editor do MATLAB


Operaes podem ser realizadas pelo MATLAB de duas maneiras:
1. Digitando os comandos diretamente na Command Window.
2. Executando um programa do MATLAB armazenado em um arquivo de script.
Esse tipo de arquivo contm comandos do MATLAB, de modo que sua execuo equivale digitao dos comandos, um por vez, no prompt da Command
Window. Pode-se executar o script digitando seu nome no prompt da Command
Window.

Os arquivos de script tem extenso .m e podem ser criados no Editor do MATLAB.


O Editor pode ser acessado pelo comando

>> edit
No exemplo a seguir so mostrados os comandos de um script que computa o
quadrado do dobro de um nmero e mostra o resultado:

% Programa Exemplo_1.m
% Isso um comentrio
numero = 3; % Isso tambm um comentrio
x = 2*numero;
y = x^2
A Tabela 4 mostra alguns comandos utilizados para entrada e sada de dados que
podem ser utilizados em scripts para comunicao com o usurio.
4
Aula 1: Introduo ao MATLAB Parte I

Universidade Federal de Itajub Campus Avanado de Itabira

Comando
disp(A)
disp('Texto')
x = input('Texto')

Tabela 4: Entrada e sada de dados.


Descrio
Exibe o contedo da varivel A.
Exibe o texto inserido entre aspas simples.
Exibe o texto inserido entre aspas simples, aguarda entrada
do usurio e armazena o valor na varivel x.

Vetores e matrizes

5.1

Vetores

Para criar um vetor no MATLAB, basta digitar seus elementos entre chaves, separandoos por vrgula ou espao.

>> v = [1, 3, 9]
v =
1
3
9
Para criar um vetor coluna, separe os elementos por ponto e vrgula:

>> v=[1; 5; 25]


v =
1
5
25
Pode-se criar novos vetores pela anexao de vetores pr-existentes. Por exemplo:

>> u=[1,2,3]
u =
1
2

>> v=[4,5,6]
v =
4
5

>> w=[u, v]
w =
1
2

O operador : gera um vetor com elementos regularmente espaados. Digitando-se

>> x = m:q:n
5
Aula 1: Introduo ao MATLAB Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


cria-se um vetor x de valores espaados em q cujo primeiro valor m e o ltimo valor
n se m-n mltiplo inteiro de q. Caso o incremento q seja omitido, o valor padro
utilizado 1. Alguns exemplos:

>> x1 = 0:2:8
x1 =
0
2

>> x2 = 0:2:6
x2 =
0
2

>> y = -3:2
y =
-3
-2

-1

>> y = 10:-2:4
y =
10
8

Um determinado elemento de um vetor pode ser acessado individualmente pela


especificao do seu ndice. Alm disso, o operador : pode ser utilizado para selecionar subvetores. Por exemplo:
v(5) representa o quinto elemento do vetor v.
v(2:5) representa o segundo at o quinto elemento de v, ou seja, v(2), v(3),
v(4), v(5);
v(:) representa todos os elementos de v.

5.2

Matrizes

Matrizes so criadas digitando-se seus elementos linha por linha, separando os


elementos de uma linha por espaos ou vrgulas e separando as linhas por ponto e
vrgula. Por exemplo, digitando-se

>> A = [2, 4, 10; 16, 3, 7];


cria-se a matriz
"
#
2 4 10
A=
.
16 3 7
6
Aula 1: Introduo ao MATLAB Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


Novas matrizes podem ser criadas anexando-se vetores ou matrizes pr-existentes.
Por exemplo:

>> a = [1,3,5];
>> b = [7,9,11];
>> c = [a,b]
c =
1
3
5
>> d = [a;b]
d =
1
3
7
9

11

5
11

A matriz transposta obtida pelo operador 0 (aspas simples). Exemplo:

>> A = [1, -1; 2, 3]


A =
1
-1
2
3
>> A'
ans =
1
-1

2
3

Alguns exemplos de acesso a elementos especficos de uma matriz:


A(:,3) seleciona todos os elementos da terceira coluna da matriz A.
A(3,:) seleciona todos os elementos da terceira linha da matriz A.
A(:,2:5) seleciona todos os elementos da segunda quinta coluna da matriz A.
A(2:3,1:3) seleciona todos os elementos da segunda e terceira linha que tambem estejam na primeira at a terceira coluna.
v = A(:) cria um vetor com os elementos da matriz A.
A(end,:) seleciona a ltima linha da matriz A.
A Tabela 5 mostra algumas matrizes especiais que podem ser criadas de maneira
simplificada pelo MATLAB.

7
Aula 1: Introduo ao MATLAB Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


Tabela 5: Matrizes especiais.
Descrio
Cria uma matriz identidade n n
Cria uma matriz n n em que todos os elementos tem valor 1.
Cria uma matriz m n em que todos os elementos tem valor 1.
Cria uma matriz n n em que todos os elementos tem valor 0.
Cria uma matriz m n em que todos os elementos tem valor 0.

Comando
eye(n)
ones(n)
ones(m,n)
zeros(n)
zeros(m,n)

5.3

Operaes com Vetores e Matrizes

As operaes de adio, subtrao, multiplicao por escalar e diviso por escalar


so, conforme as regras de lgebra convencionais, realizadas elemento por elemento.
Por exemplo:
"
3

2 9
5 7

"
=

6 27
15 21

>> A = [2,9;5,-7];
>> 3*A
ans =
6
27
15 -21
e
"

6 2
10 3

"
+

9
8
12 14

"
=

15 6
2 17

#
.

>> A = [6,-2;10,3];
>> B = [9,8;-12,14];
>> A+B
ans =
15
6
-2
17
A multiplicao de vetores e matrizes segue as regras de lgebra convencionais.
Dessa maneira, deve-se atentar para as dimenses das variveis envolvidas na operao. Por exemplo:

"
#
6 2
(6)(9) + (2)(5) (6)(8) + (2)(12)
64 24
9 8

= (10)(9) + (3)(5) (10)(8) + (3)(12) = 75 116 .


10 3
5 12
4 7
(4)(9) + (7)(5)
(4)(8) + (7)(12)
1 116

>> A = [6,-2;10,3;4,7];
8
Aula 1: Introduo ao MATLAB Parte I

Universidade Federal de Itajub Campus Avanado de Itabira

>> B = [9,8;-5,12];
>> A*B
ans =
64
24
75 116
1 116
O operador . antes dos operadores de multiplicao, diviso e exponenciao indicam que a operao deve ser realizada elemento por elemento. Por exemplo, considere as matrizes
"
#
"
#
11 5
7 8
A=
, B=
.
9 4
6 2
Digitando-se C = A.*B, tem-se
"
C=

11(7) 5(8)
9(6) 4(2)

"
=

77 40
54 8

#
.

>> A=[11,5;-9,4];
>> B=[-7,8;6,2];
>> C = A.*B
C =
-77
40
-54
8

Exerccio Avaliativo

Exerccio 1 A corrente i passando por um resistor de resistncia R com queda de


tenso v dada pela Lei de Ohm, i = v/R. A potncia dissipada no resistor dada
por v 2 /R. A tabela a seguir fornece dados de resistncias e quedas de tenso em
cinco resistores. Utilizando o conhecimento sobre operaes com vetores e matrizes
visto nessa aula, faa um script que calcule (a) a corrente em cada resistor e (b) a
potncia dissipada em cada resistor.
1
2
4
R() 10 2 104
v(V ) 120 80

3
3, 5 104
110

4
5
5
10 2 105
200 350

9
Aula 1: Introduo ao MATLAB Parte I

Universidade Federal de Itajub Campus Avanado de Itabira

Exerccios Propostos

Exerccio 2 Considere a seguinte matriz:

A=

3 7 4 12

5 9 10 2

6 13 8 11

15 5 4 1

1. Obtenha uma matriz B 4 3 a partir dos elementos da segunda at a quarta


coluna de A.
2. Obtenha uma matriz C 34 a partir dos elementos da segunda at a quarta linha
de A.
3. Obtenha uma matriz D 2 3 a partir dos elementos das duas primeiras linhas e
trs ltimas colunas de A.
Exerccio 3 A tabela abaixo mostra os custos por hora de quatro tipos de processos de manufatura. Ela tambm mostra o nmero de horas necessrias para cada
processo produzir trs tipos diferentes de produto. Utilizando o conhecimento sobre
Horas para produzir uma unidade
Processo
Custo por hora ($) Produto 1 Produto 2 Produto 3
Torneamento 10
6
5
4
Polimento
12
2
3
1
Fresagem
14
3
2
5
Soldagem
9
4
0
3
operaes com vetores e matrizes visto nessa aula, faa um script para resolver os
seguintes itens:
1. Determine o custo associado a cada processo para a produo de uma unidade
do Produto 1.
2. Determine o custo para produzir uma unidade de cada produto.
3. Determine o custo total para a produo de 10 unidades do Produto 1, 5 unidades do Produto 2 e 7 unidades do Produto 3.

10
Aula 1: Introduo ao MATLAB Parte I