Escolar Documentos
Profissional Documentos
Cultura Documentos
Apostila Mini Curso MATLAB GET EP1 PDF
Apostila Mini Curso MATLAB GET EP1 PDF
Introduo ao MATLAB
Introduo ..........................................................................................................................3
Objetivos.............................................................................................................................3
Histrico..............................................................................................................................3
Layout .................................................................................................................................4
Help ....................................................................................................................................9
Dados ................................................................................................................................ 10
Funes ............................................................................................................................. 17
Grficos ............................................................................................................................. 20
Programao ..................................................................................................................... 24
Introduo
O MATLAB, abreviao para MATrix LABoratory, um software com linguagem simples
e direta, que realiza clculos de engenharia, e por isso possui uma ampla biblioteca de funes
matemticas pr-definidas. Essas funes permitem que problemas de programao sejam
resolvidos de maneira muito mais simples do que com outras linguagens computacionais.
Objetivos
Esta apostila tem como objetivo introduzir o MATLAB como ferramenta de
programao computacional, usando como base o clculo de matrizes. Alm disso, apresenta
algumas de suas aplicaes nesta rea e exemplos para melhor fixao do contedo.
Histrico
A linguagem foi desenvolvida na dcada de 70 por Clever Moler, ento presidente do
departamento de Cincias da Computao da Universidade do Novo Mxico. Pela simplicidade
e facilidade de uso, foi aderida por muitas universidades e logo se destacou na comunidade
matemtica.
Em 1984, em parceria com Steve Bangert e o engenheiro Jack Little, a MathWorks
(detentora dos direitos autorais) foi fundada e o MATLAB foi reescrito na linguagem C.
Por ser um ambiente integrado de modelagem de sistemas e algoritmos, ideal para
implementao de projetos complexos, a ferramenta se tornou um produto lder na rea de
computao numrica e cientfica.
Layout
Pode-se dizer que o MATLAB possui cinco janelas principais. Duas nas quais o usurio
trabalha: Command Window e Editor. E trs que mostram dados importantes: Command
History Window, Workspace e Figure. A seguir, uma descrio detalhada de cada janela.
Command Window
a janela onde so criados cdigos que podem ser salvos como arquivos do
MATLAB. a janela mais utilizada, uma vez que nela podem ser digitados cdigos
completos para s depois serem rodados na Command Window. Alm disso, com o
modo Debug, que ser explicado mais adiante, pode-se rodar o cdigo linha por linha,
para ver todos os passos realizados pelo programa.
Command History Window
A Figure Window a janela que exibe grficos. Estes podem ser criados em
duas ou trs dimenses. Mais adiante, ser explicado como plotar grficos em duas
dimenses.
Help
O comando help consiste em uma ferramenta de ajuda sobre todas as funes,
comandos e operadores existentes no MATLAB. Para acessar, basta digitar na Command
Window:
>>help funo/comando/operador
Salvando um arquivo
Criando Dados
>>x=[];
>>nome_da_varivel=[dados];
Exemplo:
>> a=10;
m=
1 5 10
2 10 30
>> matriz1=[ 2 3 6 7; 8 6 4 0; 5 1 3 9]
matriz1 =
2 3 6 7
8 6 4 0
5 1 3 9
>> matriz1(1,4)
ans =
>> matriz1(3,:)
ans =
5 1 3 9
>> matriz1(end,2)
ans =
>> matriz1(end,end)
ans =
>> matriz1(3,end)
ans =
>> matriz1(1,2:4)
ans =
3 6 7
>> matriz1(:,3)
ans =
6
>>nome_da_varivel
nome_da_varivel = primeiro:incremento:ltimo
>>nome_da_variavel=linspace
nome_da_variavel=linspace (primeiro,ltimo,nmero de elementos)
Exemplos:
>> a=1:2:10
a=
1 3 5 7 9
>> b=linspace(2,10,5)
b=
2 4 6 8 10
>> c=a/b
c=
0.5000
>> c*a
ans =
>> a= [1 2; 3 4]
a=
1 2
3 4
>> a^2
ans =
7 10
15 22
Existem alguns comandos especiais para operaes com matrizes. Veja a tabela
abaixo:
Elemento a elemento:
elemento As operaes so feitas elemento a elemento de
matrizes quadradas. Para isto, basta colocar o sinal de ponto (.) antes do sinal
da operao
rao desejada. Exemplo:
E
>>a =
1 2
3 4
b=
5 67
100 3
>> a.*b
ans =
5 134
300 12
Exemplo:
d=
12 56 78
e=
2 90 22
>> d>e
ans =
1 0 1
>> A
A=
1 2 3
>> B
B=
3 4 5
>> C=[A B]
1 2 3 3 4 5
>> C=[A;B]
C=
1 2 3
3 4 5
>> D=[B(1,1);A(1,2)]
D=
3
2
Funes
Como j foi mencionado anteriormente, existem inmeras funes pr-definidas
pr no
MATLAB. Nesta seo sero apresentadas algumas delas e suas principais aplicaes, alm de
como devem ser manipuladas.
Funes Matemticas
Exemplo:
>> f='2*x^2'
f=
2*x^2
A seguir esto algumas tabelas contendo as principais funes de aproximao,
exponenciais, trigonomtricas e complexas.
Funes de Aproximao
Funes Exponenciais
Funes Trigonomtricas
Funes Complexas
As funes derivada (diff) e integral (int) merecem ateno especial por sua
grande aplicao na matemtica. Como j foi dito, necessrio declarar a funo sobre
a qual se deseja calcular a operao como char. Veja os exemplos abaixo:
>> f=x^2+3
f=
x^2+3
>> derivada=diff(f)
derivada =
2*x
f=
3*x^2 - 15*x + 18
integral =
x^3-15/2*x^2+18*x
Funes Aleatrias
>> matriz=rand(2,2)
matriz =
0.8147 0.1270
0.9058 0.9134
matriz2 =
5 8 1
Grficos
>>plot(y)
Nesta situao, ele plota o grfico na forma padro, que utilizando um vetor
contendo 1, 2, 3, 4... para a varivel que est faltando, e a cor do grfico preto, com a
linha contnua e sem marcao dos pontos.
Plotando uma funo
Uma outra maneira para se plotar um grfico no MATLAB usando o comando
fplot. Ele plota diretamente uma funo dada. Seu formato :
Exemplo:
>> fplot('cos(x)',[0,pi],'green')
Figure: esse comando abre uma nova Figure Window, onde o prximo grfico
plotado ser mostrado.
>>figure
Hold on / Hold off : o comando hold on fixa a ltima Figure Window gerada, e
todos os plots a partir dele at o comando hold off so gerados na mesma
janela. Ou seja, ele possibilita que vrias curvas sejam mostradas num mesmo
grfico.
>>hold on
>>plot(x,y)
>>plot(w,z)
>>hold off
>>plot(x,y)
>>subplot(a,b,p)
>>plot(w,z)
>>title(titulo desejado)
Xlabel: O comando xlabel permite que o eixo das abscissas do grfico seja
identificado.
>>xlabel(identificao abscissas)
Ylabel: O comando ylabel permite que o eixo das ordenadas do grfico seja
identidifcado.
>>ylabel(identificao ordenadas)
>>text(x,y,texto desejado)
Operadores Lgicos
Operador Significado
== Igual a
~= No igual
& Operador e
| Operador ou
~ Operador no
Comandos de Limpeza
Ao programar, para facilitar o entendimento do cdigo quando rodado na
Command Window, existem os recursos de limpeza da tela e das variveis. So eles:
clc, clear all e close all.
Clc: Ao digitar o comando clc na Command Window, ele limpa todos os dados
inseridos anteriormente, porm sem apag-los da memria.
>>clc
Clear all: O comando clear all limpa todos os valores das variveis que foram
armazenados anteriormente.
>>clear all
Close all: O comando close all fecha todas as Figure Windows abertas.
>>close all
Indentao
Processos Iterativos
if(condio1)
expresses1;
elseif(condio2)
expresses2;
else
expressesn;
end
while(condio)
expresses;
end
expresses;
end
Switch-Case: O comando Switch-Case, ou, Escolha, permite que se tenha
diferentes casos para uma determinada varivel. Dependendo do valor que
esta varivel possui, ser executada uma das opes do switch-case. Seu
formato no MATLAB :
switch varivel
case a
expresses;
case b
expresses;
case c
expresses;
otherwise
expresses;
end
Criao de Funes
expresses;
Pode-se tambm criar uma funo que no retorna nenhum valor. Ela apenas
executa o trecho de cdigo correspondente. Seu formato deve ser:
function nome_da_funo(entrada)
expresses;
Tempo de Simulao
tic
toc
Modo Debug
O modo Debug, que pode ser utilizado no Editor, permite que o programador
acompanhe a execuo de determinado trecho do seu cdigo, linha por linha. Desta
forma, pode-se visualizar exatamente todos os passos que o programa segue,
facilitando a correo de erros eventuais. Alm disso, ao posicionar a seta do mouse
sobre cada varivel durante o modo Debug, pode-se ver seu valor e
consequentemente, suas mudanas ao longo da execuo.