Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Apostila Algebra Matlab, Notas de estudo de Computação Aplicada

Apostila para uso do sistema Matlab

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 29/08/2010

marilia-moura-pupo-8
marilia-moura-pupo-8 🇧🇷

1 documento

1 / 43

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b

Pré-visualização parcial do texto

Baixe Apostila Algebra Matlab e outras Notas de estudo em PDF para Computação Aplicada, somente na Docsity!

MATLAB

Guia de utilização

                    

CONTEÚDO

  • Prefácio _____________________________________________________________
    1. Conceitos Básicos de Matrizes e Vetores ________________________________
  • 1.1. Operações entre matrizes_____________________________________________
  • 1.2. Algumas propriedades fundamentais das matrizes _________________________
  • 1.3. Algumas propriedades fundamentais de operações entre matrizes _____________
  • 1.4. Valores característicos e vetores característicos de matrizes quadradas _________
    1. Introdução ao Matlab_______________________________________________
  • 2.1. Utilizando strings__________________________________________________
    1. Utilizando funções matemáticas elementares____________________________
    1. Trabalhando com vetores e matrizes __________________________________
  • 4.1. Construindo vetores________________________________________________
  • 4.3. Construindo matrizes_______________________________________________
  • 4.4. Manipulando vetores e matrizes ______________________________________
  • 4.5. Comparando vetores e matrizes_______________________________________
  • 4.6. Realizando operações matriciais ______________________________________
  • 4.7. Utilizando matrizes especiais ________________________________________
  • 4.8. Ordenando matrizes________________________________________________
  • 4.9. Utilizando matrizes multidimensionais _________________________________
  • 4.10. Utilizando listas __________________________________________________
  • 4.11. Utilizando estruturas ______________________________________________
  • 4.12. Utilizando matrizes esparsas ________________________________________
    1. Analisando dados __________________________________________________
    1. Trabalhando com polinômios ________________________________________
    1. Confeccionando gráficos ____________________________________________
  • 7.1. Gráficos bidimensionais ____________________________________________
  • 7.2. Gráficos tridimensionais ____________________________________________
    1. Trabalhando com tempo ____________________________________________
    1. Obtendo modelos empíricos__________________________________________
  • 9.1. Regressão linear___________________________________________________
    1. Iniciando um programa ____________________________________________
    1. Utilizando comandos de fluxo e operadores lógicos _____________________
  • 11.1. Utilizando a função for ___________________________________________
  • 11.2. Utilizando a função while_________________________________________
  • 11.3. Utilizando a função if-else-end _________________________________
    1. Resolvendo um sistema de equações algébricas_________________________
    1. Resolvendo um sistema de equações diferenciais _______________________
    1. Como saber mais sobre o MATLAB?_________________________________
    1. Exercícios resolvidos ______________________________________________
  • Exercícios___________________________________________________________

1. Conceitos Básicos de Matrizes e Vetores

Os cálculos/operações assim como conceitos envolvendo matrizes e vetores constituem a base dos métodos numéricos que tratam da solução de sistemas lineares e não lineares de equações algébricas ou diferenciais. A representação destes sistemas em termos matriciais/vetoriais é extremamente mais compacta e é corrente na literatura técnica. Como visa-se neste capítulo apresentar os conceitos básicos deste assunto especialmente relacionados com aplicações em Engenharia de Processos, os elementos de matrizes e vetores serão em princípio números ou variáveis reais a não ser quando explicitamente especificados como complexos. Uma matriz é um arranjo retangular de números em m linhas e n colunas, mxn, sendo

representada como A (letras maiúsculas em negrito) pertencente a mxn, isto é:

A ∈ mxn. O elemento da linha i e coluna j de A é representado por aij (correspondente

letra minúscula com o sub-índice ij ) ou ( A )ij. A matriz completa é geralmente escrita na

forma: A =

m1 m2 mn

21 22 2n

11 12 1n

a a a

a a a

a a a

, ou em forma mais compacta por A = (aij ), com

i=1,...,m e j =1,...,n. Se duas matrizes A e B apresentam o mesmo número de linhas e o mesmo número de colunas são ditas do mesmo tipo. Se A = (aij ) é tal que aij = 0 para todo i e j então 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 simétrica.

Exemplo: M =

note que a matriz simétrica M tem sua própria imagem refletida através da diagonal principal.

Se n=1 tem-se um vetor coluna ou simplesmente vetor designado por v (letra minúscula

em negrito) e representado por: v =

m

2

1

v

v

v

 ∈^ 

m.

Se m=1 tem-se um vetor linha designado por v T^ (letra minúscula em negrito com o

sobre-índice T de transposto) e representada por: v T^ = (v 1 v 2 v 3 ... vn) ∈ 1xn.

Se m=n=1 tem-se um escalar (real)  (letra minúscula grega), ou seja:  ∈.

A matriz A ∈ mxn^ pode ser parcionada por:

a) colunas na forma:

A = ( a 1 a 2  an)onde aj =

mj

2j

1j

a

a

a

 ∈^ 

m (^) para j=1,...,n são os n vetores colunas da

matriz A ; b) linhas na forma:

A =

Tm

T 2 1 T

a

a

a

onde aTi = ( a (^) i1 ai2  ain)∈ 1xn, para i=1,...,m são os m vetores linhas

da matriz A.

1.1. Operações entre matrizes

As operações de adição ou subtração são definidas apenas para matrizes do mesmo tipo, assim se A e B são matrizes ( m x n ) então a matriz C , também ( m x n ), soma ou subtração de A com B, representada por C = A ± B , tem como termo geral : cij = aij ± bij para i = 1, ... , m e j = 1, ... , n. Se  é um escalar qualquer, a matriz  A é uma matriz cujo termo geral é aij.

A operação de multiplicação de matrizes A ⋅⋅⋅⋅ B só é definida se o número de colunas de A

(primeira parcela do produto) for igual ao número de linhas de B (segunda parcela do produto). Assim, temos: C=A ⋅⋅⋅⋅ B , onde A é ( m,n ) , B é ( n,p ) e C é ( m,p ) que apresenta como termo geral:

As matrizes triangulares são matrizes que apresentam todos os elementos sob (ou sobre) a diagonal nulos, podendo assumir as seguintes classificações: matriz triangular superior ou matriz U , com U ij =0 se i>j matriz triangular inferior ou matriz L , com L ij =0 se j>i

Exemplo: U =

Exemplo: L =

Matriz U é triangular superior Matriz L é triangular inferior

O traço de uma matriz quadrada A é a soma dos elementos de sua diagonal, isto é:

= =

n i 1 ii

tr ( A ) a

Uma matriz quadrada A pode receber as seguintes classificações quando inserida em

uma forma quadrática como se segue: f( x ) = xT  A 

1- P ositiva definida se xT  A  > 0 para todo vetor x  0 (isto é, não nulo). 2- Positiva semidefinida se xT  A   0 para todo vetor x. 3- Negativa definida se xT  A  < 0 para todo vetor x  0. 4- Negativa semidefinida se xT  A   0 para todo vetor x. 5- Indefinida se xT  A  assume tanto valores positivos quanto negativos.

O determinante de uma matriz A é um escalar obtido através da soma de todos os produtos possíveis envolvendo um elemento de cada linha e cada coluna da matriz, com o sinal positivo ou negativo conforme o número de permutações dos índices seja par ou ímpar. Sua obtenção e sua representação, apesar de ser um dos conceitos mais preliminares envolvendo matrizes, não são tarefas triviais e o conceito de determinante será utilizado nestas notas apenas como base de outras propriedades de matrizes quadradas. Assim, o determinante de A designado por det( A ) pode ser representado

por: det( A ) = (^) ±a1,i 1 ⋅a2,i 2 ⋅⋅⋅⋅⋅an,in ou então através do conceito de cofator do

elemento ij da matriz A (representado por Aij) que é o determinante da matriz obtida cancelando a linha i e a coluna j da matriz A com o sinal mais ou menos conforme i+j seja par ou ímpar, assim:

A ij = (− 1 )i+j⋅det(Λij )

onde Λij representa a matriz quadrada (n-1, n-1) obtida pela eliminação da linha i e a coluna j de A. Tem-se então:

= = ⋅

n j 1 ij^ ij

det( A ) a A

Na prática, entretanto é praticamente impossível calcular o determinante de matrizes através destas regras gerais por envolver um número muito grande de termos (na realidade n!, assim mesmo com matrizes relativamente pequenas como com n=10 tem- se 3 milhões de termos). Felizmente, para os nossos propósitos, apenas as regras a seguir serão suficientes: 1- O determinante de uma matriz A mantém-se inalterado se somarem-se a todos os elementos de qualquer linha (ou coluna) os correspondentes elementos de uma outra linha (ou coluna) multiplicados pela mesma constante ;

2- se aij é o único elemento não nulo da linha i ou da coluna j então: det( A )=aij ⋅Aij

3- A = 

c d

a b então: a d b c

c d

det( ) a b = ⋅ − ⋅

A =

Da regra (1)verifica-se que se det( A ) = 0, então A apresenta duas linhas (ou colunas) proporcionais entre si. De uma forma mais geral, pode-se afirmar que uma linha (ou coluna) de A pode ser escrita como combinação linear de alguma(s) linha(s) (ou colunas) da mesma matriz. Da regra (2) demonstra-se que se A for uma matriz triangular então det( A ) é simplesmente o produto dos elementos de sua diagonal. Se det( A ) = 0 diz-se que a matriz A é singular , e caso det( A )  0, então A é dita regular. Se C=A ⋅⋅⋅⋅ B , então det( C )= det( A )⋅⋅⋅⋅det( B ). Se B = A T^ então det( B )= det( A ), isto é det ( A T) = det ( A ).

A matriz adjunta de uma matriz A corresponde à transposta da matriz obtida substituindo cada elemento da matriz A pelo seu correspondente cofator, isto é, se à é a matriz adjunta de A então o elemento da linha i e coluna j de à é A ji. A propriedade mais importante da matriz adjunta diz respeito ao produto: A ⋅⋅⋅⋅ Ã=à ⋅⋅⋅⋅ A = det( A )⋅⋅⋅⋅ I. Se det( A )0 ( A é regular) define-se a inversa de A como:

A −^1 =det(^1 A )⋅ A ~ que tem como propriedade:

A ⋅⋅⋅⋅ A-1^ = A-1 ⋅⋅⋅⋅ A = I que existe apenas se det( A )  0.

( A −λ I  v = 0 , transformando-se assim em um sistema linear e homogêneo de

equações que apresenta solução apenas se a matriz ( A −λ I  for singular, isto é:

det ( A −λ I  =

n1 n2 nn

21 22 2n

11 12 1n

a a a

a a a

a a a

=p(λ)=0, que é o polinômio de grau n em

λ chamado de polinômio característico de A , cujas n raízes são os valores característicos ou autovalores de A. Verifica-se, pela expansão deste determinante, que o único termo de grau n e ( n-1 ) em λ

é o correspondente ao produto da diagonal principal de A −λ I , isto é :

(a 11 гλ)(a 22 гλ)(ann гλ) sendo todos os demais termos de grau inferior a ( n- 1), além

disto como p(0)=det( A ) o termo independente de λem p(λ) é det( A ), permirtindo assim concluir que p(λ) = (гλ)n^ +(a 11 + a 22 +...^ + ann) (-λ)n-1^ +...^ +det( A )=

Multiplicando-se membro a membro por (-1)n^ , tem-se: p(λ) = λn^ г (a 11 + a 22 +...^ + ann) λn-1^ +...^ +(-1)n^ det( A )= (note que apesar de ter-se multiplicado membro a membro da expressão por (-1)n, manteve-se a notação p(λ) para designar o polinômio característico, já que o mesmo está igualado a zero sendo assim irrelevante seu sinal). Pela expressão de p(λ) deduz- se que:

(a) λ 1 +λ 2 +...^ +λn = a 11 + a 22 +...^ + ann ou seja: (^) 

n i 1 i^

tr( A )

(b) λ 1 λ 2...^ λn = det( A ) ou seja: det( )

n i 1 i^ ∏λ = A =

(c) como p(λ) = det ( A −λ I    se A for singular tem-se det( A )=0; desta forma

p(0)=det( A )=0, isto é, se A for singular λ=0 é necessariamente valor característico de A.

Exemplo: Encontre todos os autovalores da matriz A = 

Calculando p(λ) = det ( A −λ I  

det ( A −λ I  det 

3 1 = (3−λ)(3−λ) − 1= λ 2 гλ 

Solução do polinômio: λ=2 e λ=4 (autovalores de A ).

2. Introdução ao Matlab

No MATLAB os nomes das variáveis devem ser palavras únicas, sem a inclusão de espaços e não devem conter acentos. As regras básicas para nomes de variáveis são apresentadas na Tabela 2.1.

Tabela2.1: Regras básicas para nomes de variáveis no MATLAB. As variáveis são sensíveis a letras maiúsculas e minúsculas

Itens, itens e ITENS São entendidas como diferentes variáveis. As variáveis podem possuir até 31 caracteres. Os caracteres além do 31º são ignorados.

Oquevoceachadestenomedevariavel Pode ser usado como nome de variável. O nome da variável deve começar com uma letra, seguida de qualquer número, letra ou sublinhado.

O_que_voce_acha_deste_nome e X podem ser utilizados como nome de variáveis.

Existem algumas variáveis especiais que o MATLAB utiliza que são apresentadas na Tabela 2.2. Se o usuário redefine estas variáveis, o MATLAB passa a atribuir a nova função às mesmas.

Tabela 2.2: Variáveis especiais utilizadas pelo MATLAB Variável Significado Ans (^) Variável padrão usada para resultados. Pi (^) Razão entre o perímetro da circunferência e seu diâmetro. Eps Precisão relativa da máquina. Inf Infinito NaN nan Não numérico

i j i =j= − 1

Nargin (^) Número de argumentos de entrada de uma função. Nargout (^) Número de argumentos de saída de uma função. Realmin (^) Menor número real positivo utilizável pela máquina. Realmax (^) Maior número real positivo utilizável pela máquina.

Caso o usuário necessite apagar alguma variável da memória do MATLAB, isto pode ser realizado utilizando-se o comando “clear”. Por exemplo: » a=10; » a a = 10 » clear a » a ??? Undefined function or variable 'a'.

Se a necessidade do usuário for de apagar todas as variáveis que estão sendo utilizadas deve-se utilizar o comando “clear all”. Se por outro lado, o usuário deseja a

3. Utilizando funções matemáticas elementares

A Tabela 3.1 apresenta uma listagem das principais funções matemáticas que o MATLAB possui. Vale ressaltar que o MATLAB trabalha apenas com radianos (2π radianos = 360º).

Tabela 3.1: Principais funções matemáticas utilizadas pelo MATLAB. Função Significado acos(x) (^) Arco coseno. acosh(x) (^) Arco coseno hiperbólico. asin(x) (^) Arco seno. asinh(x) (^) Arco seno hiperbólico. atan(x) (^) Arco tangente. atanh(x) (^) Arco tangente hiperbólico. cos(x) (^) Coseno cosh(x) (^) Coseno hiperbólico. exp(x) (^) Exponencial: ex gcd(x,y) (^) Máximo divisor comum entre os inteiros x e y. log(x) (^) Logaritmo natural. log10(x) (^) Logaritmo na base 10. rem(x,y) (^) Resto da divisão de x por y. round(x) (^) Arredondamento para o número inteiro mais próximo. sign(x) (^) Função sinal. Retorna o sinal do argumento x. sin(x) (^) Seno sinh(x) (^) Seno hiperbólico. sqrt(x) (^) Raiz quadrada. tan(x) (^) Tangente tanh(x) (^) Tangente hiperbólica.

4. Trabalhando com vetores e matrizes O MATLAB foi desenvolvido especialmente para trabalhar com representações matriciais. Desta forma, o usuário deve dar preferência para este tipo de representação quanto estiver utilizando o MATLAB, já que isto significa a realização de cálculos com maior eficiência. O MATLAB manipula vetores de uma maneira simples e intuitiva. Considere que se deseja calcular a função y = sen(x) em 0 <x ≤ π. O primeiro passo é criar um vetor com todos os valores de x para os quais se deseja calcular y. Uma vez definido o vetor, calculam-se os valores correspondentes de y. Ou seja: »x=[0 0.1pi 0.2pi 0.3pi 0.4pi 0.5pi 0.6pi 0.7pi .8pi .9*pi pi] x = Columns 1 through 7 0 0.3142 0.6283 0.9425 1.2566 1.5708 1. Columns 8 through 11 2.1991 2.5133 2.8274 3.

» y=sin(x) y = Columns 1 through 7 0 0.3090 0.5878 0.8090 0.9511 1.0000 0. Columns 8 through 11 0.8090 0.5878 0.3090 0.

Para se resgatar um determinado elemento do vetor, basta indicar entre parênteses a localização do mesmo. Ou seja:

» x=[0 0.1pi 0.2pi 0.3pi 0.4pi 0.5pi 0.6pi 0.7pi 0.8pi 0.9*pi pi]; » x(1) ans = 0 » x(11) ans =

»

Para ter acesso a blocos de componentes ao mesmo tempo, o MATLAB utiliza a notação de dois pontos. Ou seja:

  • componentes de x, do primeiro ao quinto elemento: » x(1:5) ans = 0 0.3142 0.6283 0.9425 1.
  • componentes de x, iniciando do sétimo e indo até o final: » x(7:end) ans = 1.8850 2.1991 2.5133 2.8274 3. »
  • componentes de x, iniciando do terceiro, contanto regressivamente de um em um e parando no primeiro: » x(3:-1:1) ans = 0.6283 0.3142 0 »

4.1. Construindo vetores

Existem formas para construção de vetores que dispensam a tarefa de digitar termo a termo. São elas:

  • cria um vetor que começa em zero e vai até o valor π, incrementado 0,1*π:

Além da forma de transposição vista anteriormente ( ‘ ), o MATLAB tem o recurso de transposição pontuada ( .’). Este comando é interpretado como a transposição sem a operação de conjugação complexa. Isto porque quando um vetor é complexo, o operador de transposição ( ‘ ) nos dá a transposição do complexo conjugado, isto é, o sinal da parte imaginária é mudado como parte da operação de transposição. Já o operador de transposição pontuada ( .’) transpõe o vetor mas não o conjuga. Vale ressaltar que para vetores reais estes operadores são equivalentes. Ou seja:

>> a=(-4)^.5; b=[a a a] b = 0.00 + 2.00i 0.00 + 2.00i 0.00 + 2.00i >> b=[a a a]' b = 0.00 - 2.00i 0.00 - 2.00i 0.00 - 2.00i >> b=[a a a].' b = 0.00 + 2.00i 0.00 + 2.00i 0.00 + 2.00i >>

4.3. Construindo matrizes

Para a construção de matrizes no MATLAB utilizam-se ponto e vírgula para separar os elementos de uma linha da outra:

» g=[1 2 3 4; 5 6 7 8] g = 1 2 3 4 5 6 7 8 »

4.4. Manipulando vetores e matrizes

Considerando-se vetores ou matrizes, a adição, a subtração, a multiplicação e a divisão por um escalar simplesmente aplica a operação a todos os elementos do vetor. Ou seja:

» g=[1 2 3 4; 5 6 7 8]; » 2*g- ans = 1 3 5 7 9 11 13 15 » g/2+ ans = 1.5000 2.0000 2.5000 3. 3.5000 4.0000 4.5000 5. »

Já as operações entre vetores e/ou matrizes não são tão simples. Quando dois vetores ou matrizes possuem a mesma dimensão, a adição e a subtração são realizadas elemento a elemento pelo MATLAB. Ou seja:

» g=[1 2 3 4; 5 6 7 8]; » h=[1 1 1 1; 2 2 2 2]; » g+h ans = 2 3 4 5 7 8 9 10 » g-h ans = 0 1 2 3 3 4 5 6 »

Quando se deseja multiplicar duas matrizes, elemento por elemento, deve-se utilizar o símbolo de multiplicação escalar pontuada (.*). O ponto que precede o asterisco, símbolo padrão de multiplicação, diz ao MATLAB para fazer a multiplicação elemento por elemento. A multiplicação sem o ponto significa multiplicação matricial. Ou seja:

» g=[1 2; 5 6]; » h=[1 1; 2 2]; » g.h ans = 1 2 10 12 » gh ans = 5 5 17 17 »

Para a divisão de matrizes, elemento por elemento, deve-se utilizar o símbolo de divisão escalar pontuada ./. Novamente o ponto que precede o símbolo padrão de divisão diz ao MATLAB para fazer a divisão elemento por elemento. A divisão sem o ponto significa divisão matricial. Ou seja:

» g=[1 2; 5 6]; » h=[1 8; 2 4]; » g./h ans = 1.0000 0. 2.5000 1. » g/h ans = 0 0. -0.6667 2. »

É possível elevar cada elemento de uma matriz a uma dada potência. Para isto aplica- se o operador .^n, onde n é potência que se deseja aplicar a cada elemento da matriz. Ou seja:

4.6. Realizando operações matriciais

A Tabela 4.6.1 fornece as principais funções matriciais existentes no MATLAB.

Tabela 4.6.1: Principais funções matriciais existentes no MATLAB. Função Significado Exemplo Considere em todos os exemplos: (^)     

=  3 4 A^12 det(A) (^) Calcula o determinante da matriz A. » det(A) ans =

d=eig(A) » [V,D]=eig(A) Determina os autovalores e autovetores deA.^ »d^ d=eig(A)= -0.

» [V,D]=eig(A) V = -0.8246 -0. 0.5658 -0. D = -0.3723 0 0 5. » inv(A) (^) Calcula a matriz inversa da matriz » inv(A) ans = -2.0000 1. 1.5000 -0. poly(A) » Calcula a equação característica de A.

» poly(A) ans = 1.00 -5.00 -2. » rank(A) (^) Determina o número de linhas e colunas linearmente independentes de A.

» rank(A) ans = 2 svd(A) » Calcula a decomposição em valores singulares.

» svd(A) ans =

»

4.7. Utilizando matrizes especiais

A Tabela 4.7.1 fornece algumas matrizes especiais existentes no MATLAB.

Tabela 4.7.1: Matrizes especiais existentes no MATLAB. Função Significado Exemplo eye (^) Matriz identidade. » eye(3) ans = 1 0 0 0 1 0 0 0 1 » ones (^) Matriz onde todos os elementos são iguais a 1.

» ones(2) ans = 1 1 1 1 rand » Matriz com elementos aleatórios distribuídos entre 0 e 1.

» rand(2) ans = 0.9501 0.

0.2311 0. » randn (^) Matriz com elementos aleatórios distribuídos que seguem a distribuição normal e têm média zero e variância igual a 1

» rand(3) ans = 0.8913 0.0185 0. 0.7621 0.8214 0. 0.4565 0.4447 0. » zeros (^) Matriz onde todos os elementos são iguais a 0.

» zeros(2) ans = 0 0 0 0 »

4.8. Ordenando matrizes

A ordenação dos elementos de um vetor ou de uma matriz pode ser realizada utilizando o comando “sort”. A utilização deste comando possibilita ainda o armazenamento da localização original dos dados. Assim:

>> a=rand(1,3) a = 0.04389532534714 0.02718512299667 0. >> sort(a) ans = 0.02718512299667 0.04389532534714 0. >> a=rand(4,3) a = 0.01286257467300 0.03533832396916 0. 0.38396728849430 0.61239548137302 0. 0.68311596780460 0.60854036122399 0. 0.09284246174092 0.01575981791975 0. >> [a_ordenado_l,ord]=sort(a(1,:)), % ordena a linha 1 de "a" a_ordenado_l = 0.01286257467300 0.01635493355000 0. ord = 1 3 2 >> [a_ordenado_c,ord]=sort(a(:,2)), % ordena a coluna 2 de "a" a_ordenado_c =

ord = 4 1 3 2

4.9. Utilizando matrizes multidimensionais

Para a utilização de matrizes multidimensionais são necessários 3 índices ao invés dos 2 adotados durante a utilização de matrizes bidimensionais. A Figura 4.8.1 mostra a forma visual de interpretar matrizes multidimensionais.