Вы находитесь на странице: 1из 20

Matlab Parte1

Prof.Ilton Aula6

TpicosdestaApresentao 1. 2. 3. 4. 5. 6. 7. 8. 9. OqueoMatlab? JanelasdoMatlab VariveiseMatrizes OperadoresnoMatlab (Aritmticos, LgicoseRelacionais) ComandosdeEntradaeSada EstruturasdeControledeFluxo Programao(Arquivos.m) Funes Toolboxes
2/24

OqueoMatlab?
O MATLAB (do ingls Matrix Laboratory) um software de computao numrica de anlise e visualizao de dados. Embora seu nome signifique Laboratrio de Matrizes, seus propsitos atualmente so bem mais amplos. O Matlab nasceu como um programa para operaes matemticas sobre matrizes, mas ao longo dos anos transformouse em um sistema computacional bastante til e flexvel. Seu ambiente de trabalho fcil de ser utilizado, pois os problemas e solues so escritos em linguagem matemtica e no na linguagem de programao tradicional, como muitos outros softwares utilizam. Assim o MATLAB uma ferramenta e uma linguagem de programao de alto nvel, e tem como principais funes: construo de grficos e compilao de funes, manipulao de funes especficas de clculo e variveis simblicas. Alm disso, o MATLAB possui uma grande quantidade de bibliotecas auxiliares (Toolboxes) que otimizam o tempo gasto para realizar tarefas, uma vez que, o usurio poder utilizar muitas funes j definidas, poupando o tempo de cri las. Por outro lado, infelizmente, os programas feitos so difceis de serem executados num ambiente fora do MATLAB.
3/24

OqueoMatlab?
MATLAB uma linguagem de alto nvel que possui toolboxes especializadas para facilitar a vida do programador.

Matlab

Linguagemdealtonvel comoC,Java,Phynton,etc A ferramenta traz tambm muitas facilidades para elaborao de grficos e interfaces para usurio: Telas grficas de programao (botes, menus, radio button, etc;
4/24

Assembly

TeladeEntradadoMatlab

1 JaneladeComandos 2 JaneladasVariveisnaMemria 3 HistricodosComandos

4 PastadeTrabalho 5 MudaaPastadeTrabalho
5/24

Nota:AoiniciarnoMatlab,ajusteasuapastadetrabalho,em5

JanelasnoMatlab

As janelas do Matlab so flexveis, podendo fechar, abrir, mudar o tamanho, mudar o layout, abrir nova janela, etc; Para restaurar a janela padro use o procedimento acima.
6/24

JanelasnoMatlab

Para iniciar a edio de um programa em Matlab v em File / New / Script Ou opcionalmente tecle: CTRL + N.
7/24

ComandosdePropsitogeraledeMemria
Comando
help helpwin ver whatsnew bench who whos clear Pack Save /Load quit What dos

Descrio
Ajuda em tempo real (online). O texto apresentado na tela da linha de comando. Ex: >> help disp Ajuda em tempo real (online). O texto apresentado em uma janela de navegao separada. Ex: helpwin informaasversesdoMATLAB,SIMULINKetoolboxes. Descreveacontibuio nestanovaversodomatlab Realizatestededesempenhono seucomputador listaasvariveisatuaisnamemria listaasvariveisatuais,suasdimensesememriaquecadaumaocupa. limpa toda a memria da rea de trabalho; clear arg exclui a funo ou varivel arg da memria da rea de trabalho. desfragmentaamemriadareadetrabalho. salvaerecuperaasvariveisdamemriadareadetrabalhoemarquivo.Ex:save c:\MATLAB\arqxy encerraasessodetrabalhodoMATLAB. listaosnomesdearquivosdefunesecomandosdeumgrupoespecficodoMATLAB ExecutacomandosdoDOS. 8/24

ComandosdePropsitogeraledeMemria
Comando
edit lookfor type path addpath rmpath echo more diary format cd pwd dir

Descrio
edita arquivo do MATLAB. Ex: >> edit arq busca a palavrachave em todos os arquivos contidos no caminho do MATLAB. Ex: lookfor palavra listaocontedodeumarquivodecomandosdoMATLAB.Ex:type arq verificaoudefineocaminhodediretrios.Exemplo:path;path=c:\usuario\MATLAB; adicionadiretriosaocaminho removeodiretriodescritonastring nomeaocaminhoatual. habilita ou inibe a apresentao dos resultados de comando de um arquivo MATLAB na linha de comando. Ex: echo on; echo off habilitaouinibeapaginaodotextonateladecomandos.Ex:moreon;moreoff salvatodootextodasessodetrabalhoemarquivo. determinaoformatonoqualosdadosseroexpressosnajaneladecomando. alteraodiretriodetrabalhoatual.Ex:cdc:\MATLAB\usuario exibeodiretriodetrabalhoatual. listaosarquivosdodiretrioatual. 9/24

VariveisnoMatlab
int a; double b; float c;

Nonecessriodeclararasvariveis

Todas as variveis so criadas com preciso dupla a menos que especificado, e todas variveis so matrizes;
>>x=int32(555) >>y=[3.678] >>z=40 >>size(y) >>size(x)

Aps estas declaraes, as variveis so matrizes com preciso dupla (double). >>whos
10/24

TiposdedadosnoMatlab
DigiteosseguintescomandosnoMatlab:
>>m='Maria' >>y=[3.678] >>a=int64(56) >>b=int32(a) >>c=int8(y) >>class(a) >>class(b) >>m=[b,77] >>whos >>length(a) >>helpwhos >>x1=[156] >>x3=[2;3] >>roots(x1) >>poly(x3) >>aluno.nome ='Jose >>aluno.idade =20 >>aluno.nota =76 >>whos >>disp(aluno) >>disp(aluno.nome) >>fprintf('\nNomedoaluno:%s\n',aluno.nome) >>size(aluno) >>size(aluno.nome) >>aluno.nota =[aluno.nota 99] >>aluno.nome =[aluno.nome 'daSilva']

11/24

TiposdedadosnoMatlab

>>whos =>dizotipoetamanhodetodasasvariveisnamemria
12/24

MatrizesnoMatlab
Exemplos: >> x = [1 2 5 1] >> x(0) >> x(1) >> x(2) >> y = [1 2 3; 5 1 4; 3 2 -1] >> m = y % transposta >> t =1:10 >> k =2:-0.5:-1 >> B = [1:4; 5:8] >> x1 = zeros(1,3) >> x2 = ones(1,3) >> x3 = rand(2,3) >> x4 = 100*rand(4,2) >> x4(3) >> x4(3,:) >> x4(:,1)

Em Matlab, o ndice das matrizes comea em 1, ao contrrio das demais ferramentas de programao que comea em 0.
>> m4 = [] % matriz vazia >> m4 = [m4 'Maria'] >> m4 = (1) >> m4(10) >> syms x a b f >> f=a*x^2+b*x >>g=x3 + 2x2 + 3x + 4 >> diff (f, x) % derivada >> p = [-1 3 2 -5] %polinmio >> polyval(p, 1)
13/24

Arquivos.MATe.m
As matrizes tambm podem ser definidas atravs de informao armazenada em arquivos. O MATLAB adota o formato com extenso padro MAT.
1. Os arquivos MAT so gerados no MATLAB usando o comando save, que contm o nome do arquivo e as matrizes ou variveis que devem ser salvas. A extenso .mat automaticamente adicionada ao nome do arquivo. Para recuperar estas variveis usado o comando load.
Ex: save arq1 / whos / clear all / whos / load arq1 / whos

2.

Todo programa ou script escrito em Matlab deve possuir a extenso .m. Ao salvar um arquivo de programa, a ferramenta automaticamente adiciona esta extenso. No caso de funes, o nome do arquivo tambm deve ter o mesmo nome da funo.
14/24

OperadorDoisPontos(:)
O uso do operador dois pontos (:) til na criao de matrizes ou vetores. Suponha que queiramos armazenar a primeira coluna da matriz data1 em um vetor x, e a segunda coluna em um vetor y. Dependendo do argumento, pode significar todas as linhas ou todas as colunas da matrizreferncia. >>data1=[0.0,0.0;0.10.2;0.30.6]; >>x=data1(:,1); >>y=data1(:,2); >>z=data1(2,:) >>H=1:8; A matriz H contm os valores 1, 2, 3, 4, 5, 6, 7 e 8. O operador : entre os dois nmeros inteiros gera todos os inteiros entre os dois nmeros especificados. Se for usado para separar trs nmeros, os dois pontos geraro valores entre o primeiro e terceiro nmeros, usando o segundo nmero como incremento. A notao abaixo gera um vetor linha denominado TEMPO que contm os nmeros de 0.0 a 5.0 com incrementos de 0.5 >>TEMPO=0.0:0.5:5.0
15/24

OperadoresemMatlab
Aritmticos/Relacionais/Lgicos: Help / Matlab / Functions / Programming and data Types Help / Matlab / Functions / Mathematics / Arrays / Operators / Arithmetic

&&AND ||OR ~NOT XOR Operadores Binrios Aritmticos Bsicos

< <= > >= == ~= & | ~

menorque; menorouiguala; maiorque; maiorouiguala; iguala; diferentede; e ou no Relacionais(IF)


16/24

FunesMatemticasElementares
abs (x) sqrt(x) round(x) fix(x) floor(x) ceil(x) sign(x) rem(x,y) exp(x) log(x) log10(x) sin(x)/cos(x) Calculaovalorabsolutodex. Calculaaraizquadradadex. Arredondaovalordexparaointeiromaisprximo. Arredondaovalordexparaointeiromaisprximodezero. Arredondaovalordexparaointeiromaisprximode Arredondaovalordexparaointeiromaisprximode+ Se x menor que zero, a funo retorna ao valor 1; se x for igual a zero, retorna ao valor zero; caso contrrio, a funo retorna ao valor 1. Retornaorestodadivisox/y.Porexemplo,rem(25,4)1,erem(100,21)16. Esta funo retorna ao valor de ex, onde e a base para logaritmo natural ou aproximadamente 2.718282 Retornaalnx,ologaritmonaturaldexparaabasee. Retornaalog10x,ouseja,ologaritmodexnabase10. senoecosseno(xemradianos)
17/24

Constantesmatemticas
Constante i inf intmax intmin j nan pi realmax realmin eps Descrio Unidadeimaginria Infinito Maiorvalorparainteiro Smallestvalueofspecifiedintegertype Unidadeimaginria Noumnmero Razoentreacircunfernciadocrculoaseudimetro Maiornmeropositivedepontoflutuante Menornmeropositivedepontoflutuante Precisorelativadepontoflutuante Ex:>>eps
18/24

MANIPULAODEMATRIZES
Constante zeros Descrio zeros(n) cria uma matriz quadrada composta de zeros; zeros(n,m) cria uma matriz n x m composta de zeros; zeros(size(a)) cria um matriz com as mesmas dimenses da matriz a, composta de zeros. Exemplo: zeros(4); zeros(2,3); ones(n)criaumamatrizquadradacompostadeelementosiguaisa1;zeros(n,m) cria umamatriznpormcompostadeelementosiguaisa1;zeros(size(a))criaummatrizcom asmesmasdimensesdamatriza,composta deelementosiguaisa1. Exemplo:ones(4);ones(2,3);ones(size(a)). criaumamatrizidentidadeoumatrizcomdiagonal1. Ex:eye(n);eye(n,m);ones(size(a)); criaumamatrizcomelementosgeradosaleatoriamente. Sintaxe:rand(n);rand(n,m);rand(size(a)); omesmoderand,pormnestecasoadistribuiosegueopadro normal,enquantorand seguepadrouniforme. extraidiagonaisdematrizesecriaumvetorcomesteselementos. Ex:diag(m,k);diag(m); criaumvetorcomelementoslinearmenteespaados. Sintaxe:linspace(x1,x2);y=linspace(x1,x2,N);plot (y) criaumvetorcomelementoslogaritmicamente espaados. Ex:logspace(x1,x2);logspace(x1,x2,N). 19/24

ones

eye rand randn diag linspace logspace

Bibliografia

http://www.ime.usp.br/~pf/algoritmos/index.html http://intranet.deei.fct.ualg.pt/IALP/SLIDES/4Introducao%20programacao.pdf http://pic.dhe.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Frtref%2Fsc41560764.htm http://algs4.cs.princeton.edu/home/ http://webx.ubi.pt/~felippe/texts3/autom_ind_cap1.pdf


http://professor.ucg.br/SiteDocente/admin/arquivosUpload/14485/material/Apostila%20MATLAB%20(Baleeiro).pdf

http://www.del.ufms.br/tutoriais/matlab/apresentacao.htm#apresentacao http://www.compileonline.com/compile_java_online.php http://mit.universia.com.br/18/1806/pdf/matlab.pdf http://www.math.ufl.edu/help/matlabtutorial/ http://ensino.univates.br/~chaet/Materiais/CURSOmatlab52.pdf http://ifgjatai.webcindario.com/MatLab_para_Engenharia.pdf http://www.dcc.unicamp.br/~rdahab/cursos/matlab/#material_didatico http://pt.scribd.com/doc/49964222/FFerrariCCechinelIntroducaoaalgoritmos http://www.javaprogressivo.net/2013/03/ComoprogramaremCCursoCProgressivo.html#more http://people.rit.edu/pnveme/ http://people.rit.edu/pnveme/Matlab6/wk2/Wk2index.html http://amath.colorado.edu/computing/Matlab/ http://people.rit.edu/~pnveme/Matlab6/index.html http://amath.colorado.edu/computing/Matlab/OldTechDocs/ref/ http://w3.ufsm.br/petmatematica/arquivos/Apostila_MATLAB.pdf 20/24

Вам также может понравиться