apostila algebra matlab

Download Apostila Algebra Matlab

Post on 08-Jul-2015

1.912 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

MATLAB Guia de utilizao Motemt|co Computoc|ono| Fro|. A|exondre Ferre|ro Sontos Fro| Montserrot Fortuny Hered|o Mestrado em Lngenharia de ProcessosNcleo de Desenvolvimento 1ecnolgico RegionalMATLAB Programa de Engenharia de Processos/NDTR/UNITpg.2 CONTEDO Prefcio _____________________________________________________________ 3 1. Conceitos Bsicos de Matrizes e Vetores ________________________________ 4 1.1. Operaes entre matrizes_____________________________________________ 5 1.2. Algumas propriedades fundamentais das matrizes _________________________ 6 1.3. Algumas propriedades fundamentais de operaes entre matrizes _____________ 9 1.4. Valores caractersticos e vetores caractersticos de matrizes quadradas _________ 9 2. Introduo ao Matlab_______________________________________________ 11 2.1. Utilizando strings__________________________________________________ 12 3. Utilizando funes matemticas elementares____________________________ 13 4. Trabalhando com vetores e matrizes __________________________________ 13 4.1. Construindo vetores________________________________________________ 14 4.3. Construindo matrizes_______________________________________________ 16 4.4. Manipulando vetores e matrizes ______________________________________ 16 4.5. Comparando vetores e matrizes_______________________________________ 18 4.6. Realizando operaes matriciais ______________________________________ 19 4.7. Utilizando matrizes especiais ________________________________________ 19 4.8. Ordenando matrizes________________________________________________ 20 4.9. Utilizando matrizes multidimensionais _________________________________ 20 4.10. Utilizando listas __________________________________________________ 21 4.11. Utilizando estruturas ______________________________________________ 22 4.12. Utilizando matrizes esparsas ________________________________________ 22 5. Analisando dados __________________________________________________ 23 6. Trabalhando com polinmios ________________________________________ 24 7. Confeccionando grficos ____________________________________________ 25 7.1. Grficos bidimensionais ____________________________________________ 25 7.2. Grficos tridimensionais ____________________________________________ 28 8. Trabalhando com tempo ____________________________________________ 30 9. Obtendo modelos empricos__________________________________________ 31 9.1. Regresso linear___________________________________________________ 31 10. Iniciando um programa ____________________________________________ 32 11. Utilizando comandos de fluxo e operadores lgicos _____________________ 33 11.1. Utilizando a funo for ___________________________________________ 33 11.2. Utilizando a funo while_________________________________________ 34 11.3. Utilizando a funo if-else-end _________________________________ 35 12. Resolvendo um sistema de equaes algbricas_________________________ 36 13. Resolvendo um sistema de equaes diferenciais _______________________ 37 14. Como saber mais sobre o MATLAB?_________________________________ 38 15. Exerccios resolvidos ______________________________________________ 39 Exerccios___________________________________________________________ 42 MATLAB Programa de Engenharia de Processos/NDTR/UNITpg.3 Prefcio O objetivo deste guia apresentar ao usurio iniciante do MATLAB noes bsicas de utilizao deste aplicativo. Inicialmente, realizada uma rpida reviso dos conceitos de lgebraMatricial.Emseguida,feitaumabrevedescriodosoftware,ondeso apresentadasasprincipaiscaractersticasepotencialidadesdoaplicativo. Posteriormente, separados em itens, so descritos alguns comandos importantes para a utilizaodoMATLAB.NoesdeprogramaoemMATLABtambmso apresentadasnesteguia,bemcomooscomandosempregadosnaresoluode sistemasdeequaesnolinearesedeequaesdiferenciaisordinrias.Sugestes para consultas futuras e alguns exerccios de fixao so apresentados ao final do texto. MATLAB(MATrixLABoratory)umsoftwareinterativodealtaperformancevoltado para o clculo numrico e cientfico.. O MATLAB integra anlise numrica, clculo com matrizes, processamento de sinaise construode grficos em ambiente fcil de usar onde problemas e solues podem ser expressos como eles so escritos na matemtica ounaformadeumalinguagemdeprogramao.NoMATLABoelementobsicode informao uma matriz que no requer dimensionamento, dispensandotarefas como declaraodevariveis,alocaodememria,utilizaodeponteiros,permitindoa resoluodemuitosproblemasnumricosemapenasumafraodotempoquese gastaria para escrever um programa semelhante em linguagem Fortran, Basic ouC. A potencialidade do software est muito alm do que ser mostrado neste guia. Trata-se deumambientedealtonvelquepossuiferramentasavanadasdeanlisee visualizaodedados.Maisdoqueumaplicativo,oMATLABtambmpossui caractersticas de linguagem de programao.AsfunesmatemticasjexistentesnoMATLABsootimizadas,programadasem linguagemMATLABeestoagrupadasdeacordocomareadeinteresseem toolboxes.Assim,ousuriotemacessoaosarquivosdasfunesmatemticasoque possibilitaarealizaodealteraesnasrotinasjexistentes.Todavia,valeressaltar queestasalteraessodesaconselhveisesdevemserrealizadascomoltima alternativa. Aracaju, 10 de Fevereiro de 2005 Alexandre F. Santos Montserrat Fortuny MATLAB Programa de Engenharia de Processos/NDTR/UNITpg.4 1. Conceitos Bsicos de Matrizes e Vetores Os clculos/operaes assim como conceitos envolvendo matrizes e vetores constituem abasedosmtodosnumricosquetratamdasoluodesistemaslineareseno linearesdeequaesalgbricasoudiferenciais.Arepresentaodestessistemasem termosmatriciais/vetoriaisextremamentemaiscompactaecorrentenaliteratura tcnica.Comovisa-senestecaptuloapresentarosconceitosbsicosdesteassunto especialmenterelacionadoscomaplicaesemEngenhariadeProcessos,os elementosdematrizesevetoresseroemprincpionmerosouvariveisreaisano ser quando explicitamente especificados como complexos. Uma matriz um arranjo retangular de nmeros em m linhas e n colunas, mxn, sendo representada como A (letras maisculas em negrito) pertencente a ?mxn, isto : A ?mxn. O elemento da linha i e coluna j de A representado por aij (correspondente letra minscula com o sub-ndice ij ) ou (A)ij . A matriz completa geralmente escrita na forma:A= (((((

mn m2 m12n 22 211n 12 11a a aa a aa a a

,ouemformamaiscompactaporA=(aij),com i=1,...,m e j =1,...,n. Se duas matrizes A e B apresentam o mesmo nmero de linhas e o mesmo nmero de colunas so ditas do mesmo tipo.Se A= (aij ) tal que aij = 0 para todo i e j ento a matriz A dita nula e representada por 0. Se n=m a matriz A dita quadrada. Se n=m e aij = aji para i,j =1,...,n a matriz quadrada A dita simtrica. Exemplo:M= ((((

4 0 20 5 32 3 1

note que a matriz simtrica M tem sua prpria imagem refletida atravs da diagonal principal. MATLAB Programa de Engenharia de Processos/NDTR/UNITpg.5 Se n=1 tem-se um vetor coluna ou simplesmente vetor designado por v (letra minscula em negrito) e representado por:v=(((((

m21vvv

?m. Sem=1tem-seumvetorlinhadesignadoporvT(letraminsculaemnegritocomo sobre-ndice T de transposto) e representada por: vT= (v1v2 v3 ... vn) ?1xn. Se m=n=1 tem-se um escalar (real)(letra minscula grega), ou seja:?.A matriz A ?mxn pode ser parcionada por: a) colunas na forma:A=( )n 2 1a a aondeaj= ((((((

mj2j1jaaa

?mparaj=1,...,nsoosnvetorescolunasda matriz A; b) linhas na forma:A= ((((((

TmT2T1aaa

onde Tia =( )in i2 i1a a a?1xn,parai=1,...,msoosmvetoreslinhas da matriz A. 1.1. Operaes entre matrizes Asoperaesdeadioousubtraosodefinidasapenasparamatrizesdomesmo tipo, assim se A e B so matrizes (m x n ) ento a matriz C , tambm (m x n ), soma ou subtrao de A com B, representada por C = A B, tem como termo geral : cij = aij bijpara i = 1, ... ,m e j = 1, ... ,n . Se um escalar qualquer, a matriz A uma matriz cujo termo geral aij. A operao de multiplicao de matrizes A Bs definida se o nmero de colunas de A (primeiraparceladoproduto)forigualaonmerodelinhasdeB(segundaparcelado produto). Assim, temos: C=A B, onde A (m,n) , B (n,p) e C (m,p) que apresenta como termo geral: MATLAB Programa de Engenharia de Processos/NDTR/UNITpg.6 = =n1 jjk ij ikb a c , para i=1, ..., mek=1,...,p. importanteressaltarquealeidecomutatividadenosatisfeitapeloprodutoentre matrizes, ou seja, em qualquer caso temos a seguinte regra geral: A BB A. AoperaodetransposiodeumamatrizA(m,n)consisteemtrocaraslinhaspelas colunas de A; esta nova matriz chamada de matriz transposta de A, representada por AT, e uma matriz (n,m) cujo termo da linha j e coluna i a ijTija a = , para j=1,...,n e i=1,...,m. Se a matriz A simtrica, ento: A = AT. 1.2. Algumas propriedades fundamentais das matrizes Aspropriedadesqueserodescritasaseguiraplicam-seexclusivamenteamatrizes quadradas (n,n) e a vetores coluna (n,1) e a vetores linha (1,n). Define-se como matriz unitria ou matriz identidade a matriz I cujo elemento geral : ()== =j i que sempre 0j i se apenas 1ij ijI ,ondeijchamadodedeltadeKronecker,deste modoamatrizidentidadeumamatrizdiagonalcujostermosdadiagonalsotodos unitrios,assim:I= (((((

1 0 00 1 00 0 1

,entendendo-secomomatrizdiagonalumamatriz quadradaemqueapenasoselementosdadiagonal(tambmchamadadediagonal principal)sononulos.Umamatrizdiagonalumcasoparticulardematrizesdita esparsas,quesomatrizesqueapresentamumgrandenmerodeelementosnulos, sendo os elementos nonulos mais a exceo do que a regra. Geralmente, uma matriz diagonalD= (((((

n21d 0 00 d 00 0 d

, representada na forma mais compacta: D= diag( )n 2 1d d d. Note que toda matriz diagonal simtrica. Uma propriedade muito importante da matriz identidade : I A = A I = A, isto , a matriz identidade pr-multiplicada ou ps-multiplicada por qualquer matriz quadrada de mesma dimenso no altera o valor de elemento algum desta matriz. MATLAB Programa de Engenharia de Processos/NDTR/UNITpg.7 Asmatrizestriangularessomatrizesqueapresentamtodos