Buscar

Aula_2

Prévia do material em texto

CCT0885 - Análise numérica
PROFESSOR: LUCAS SAMPAIO LEITE
Agenda
Operações aritméticas:
Escalares;
Vetores;
Matrizes.
 Instalação e utilização do GNU/Octave.
Motivação
Motivação
Problema real Observação e coleta de dados
Síntese:
características, 
variáveis e 
parâmetros
Representação 
matemática
Solução exata ou 
aproximada 
(númerica)
Escalares, vetores e matrizes.
Em matemática, física e informática, uma grandeza escalar é definida 
por ser composta por um único valor numérico, associado a uma unidade 
de medida, para caracterizar uma grandeza física.
Massa (a massa de uma pessoa é aproximadamente 60 kg);
Temperatura (a temperatura da sala de aula é 27 ºC) ;
Tempo (uma aula tem duração de 50 min).
Matriz
Matriz é um conjunto de elementos dispostos em forma retangular, os 
quais podem ser números (reais ou complexos), expressões, ou mesmo 
outras matrizes. 
A dimensão, ou tamanho, de uma matriz é definida pelo seu número de 
linhas e colunas. 
Os elementos de uma matriz são, geralmente, delimitados por 
colchetes ou parênteses
Matriz
Um elemento é referenciado por dois índices: o primeiro indica a linha, 
e o segundo, a coluna onde está o elemento. 
Desse modo, a(3,2) é o elemento da terceira linha e segunda coluna da 
matriz A. 
Tipos de Matrizes
Coluna e linha
Uma matriz de tamanho n × 1 é dita uma matriz coluna ou um vetor 
coluna de tamanho n. Por outro lado, uma matriz de tamanho 1 × m é 
uma matriz linha ou um vetor linha de tamanho m.
Nula
Se todos os elementos de uma matriz A forem iguais a zero, então 
ela é uma matriz nula, ou seja, aij = 0 i, j.
Tipos de Matrizes
Diagonal
Uma matriz quadrada D é dita diagonal se todos os elementos fora 
da diagonal principal forem nulos, isto é, se dij = 0 i ≠ j.
 Identidade
A matriz identidade E é uma matriz diagonal com os elementos da 
diagonal principal iguais a 1, ou seja, eij = 1 i = j e eij = 0 i ≠ j.
Tipos de Matrizes
Triangular
Existem dois tipos de matriz triangular: inferior e superior. 
Uma matriz B triangular inferior tem todos os elementos acima da 
diagonal principal iguais a zero, isto é, bij = 0 i < j. De modo similar, 
uma matriz C triangular superior possui todos os elementos abaixo da 
diagonal principal nulos, ou seja, cij = 0 i > j
Tipos de Matrizes
Simétrica
Uma matriz M é dita simétrica se houver uma simetria dos elementos 
em relação à diagonal principal, isto é, mij = mji i, j.
Operações Matriciais
Transposição
A transposta de uma matriz A, representada por AT , é uma matriz obtida 
trocando-se suas linhas pelas colunas, de modo que a linha i torna-se a coluna 
i e a coluna j transforma-se na linha j.
Operações Matriciais
Transposição
Uma matriz é simétrica se ela for igual à sua transposta, ou seja, M = 
MT .
Operações Matriciais
Adição e subtração
Se A e B forem matrizes de dimensão n × m, então C = A + B também 
será n × m, tal que cij = aij + bij i, j. 
É óbvio que apenas matrizes de mesma dimensão podem ser 
somadas ou subtraídas.
Operações Matriciais
Multiplicação por escalar
O produto de uma matriz A de dimensão n × m por um escalar k resulta 
em uma matriz B = kA de mesma dimensão n × m, tal que bij = kaij i, j.
GNU Octave
GNU Octave é uma linguagem computacional, desenvolvida para 
computação matemática. 
Possui uma interface em linha de comando para a solução de 
problemas numéricos, lineares e não-lineares, também é usada em 
experimentos numéricos. 
Faz parte do projeto GNU, é um software livre sob os termos da licença 
GPL. 
Foi escrito por John W. Eaton. Possui compatibilidade com MATLAB, 
possuindo um grande número de funções semelhantes.
Instalação do Octave
https://www.youtube.com/watch?v=X-
8GVYdvo4E
Escalares, vetores e matrizes.
Para as funções básicas com escalares, 
a l i n g u a g e m M a t l a b / O c t a v e u s a 
comandos semelhantes aos adotados em 
calculadoras gráficas e científicas. 
Por esse motivo, o uso dessas funções 
é bastante intuitivo para quem estiver 
habituado com essas calculadoras. 
Definindo vetores no Octave
Em linguagem Matlab/Octave, define-se um vetor linha 
como uma sequência de valores entre colchetes, separados 
por espaços ou por vírgulas. Por exemplo, suponha um 
vetor linha a com três elementos, correspondentes aos 
números 1, 5 e 7, nessa ordem.
Em linguagem Matlab/Octave isso pode ser escrito como: 
>> a = [1, 5, 7]
>> a = [1 2 3]
Nesse caso, a variável a é definida como um vetor de 
dimensão 1 × 3. 
Definindo vetores no Octave
Para escrever um vetor coluna b cujos elementos fossem 
4, 8 e 12, bastaria escrever entre colchetes os elementos 
separados por ponto-e-vírgula (;). Exemplo:
 >> b = [4; 8; 12]
Os elementos de um vetor coluna também podem ser 
separados por enter, como:
>> b = [4
 8
 12]
Definindo vetores no Octave
 Vetores também podem ser criados a partir de sequências de números, 
usando a notação início:passo:fim. Por exemplo:
>> c=1:2:10
>> d=10:-1:1
Se o valor de passo for 
omitido, será interpretado 
como igual a 1. Exemplo:
>> e=1:5
Definindo vetores no Octave
 O padrão no Octave é imprimir o resultado de um comando no terminal. 
Essa impressão é às vezes inconveniente, principalmente quando o 
resultado de uma operação é um vetor ou matriz com muitos elementos. 
A impressão do resultado pode ser evitada colocando-se um ponto-e-
vírgula (;) no final do comando, como
>> a=1:1000;
Definindo matrizes no Octave
 De forma semelhante ao apresentado para vetores, matrizes são 
definidas escrevendo uma lista de elementos entre colchetes.
Os elementos de cada linha são separados por espaços ou vírgulas, 
enquanto as diferentes linhas são separadas por ponto-e-vírgula. Ex. :
>> a = [2 4 5 7; 8 3 0 1; 0 9 6 7]
Definindo matrizes no Octave
 A separação de linhas também pode ser feita por enter, como no caso 
de vetores:
>> a=[2 4 5 7
 8 3 0 1
 0 9 6 7]
Acesso aos elementos de vetores e 
matrizes no Octave
Para acessar algum elemento específico em um vetor ou matriz, é 
necessário informar sua localização em termos de linha e de coluna 
ocupada. 
Exemplo: para acessar o elemento da segunda linha, quarta coluna, 
basta escrever a(2,4):
>> a(2,4)
Acesso aos elementos de vetores e 
matrizes no Octave
Para acessar algum elemento específico em um vetor ou matriz, é 
necessário informar sua localização em termos de linha e de coluna 
ocupada. 
Exemplo: para acessar o elemento da segunda linha, quarta coluna, 
basta escrever a(2,4):
>> a(2,4)
 Vale lembrar que em Octave, a contagem dos 
elementos das linhas e colunas começa em 1, de 
forma que não existem os elementos a(0,0), a(0,·) 
ou a(·,0). Se o usuário tentar acessar erradamente 
essas posições, o programa acusará erro e o fluxo 
do programa será interrompido.
Acesso aos elementos de vetores e 
matrizes no Octave
Suponha agora que o usuário deseje acessar todas os elementos da 
segunda linha de a. Nesse caso, basta fazer a(2,:):
>> a(2,:)
Quando se usa : no lugar da posição da 
coluna, o programa interpreta os dois pontos 
como sendo “os elementos de todas as 
colunas de a, localizados na linha 2”. O 
mesmo raciocínio pode ser estendido para as 
linhas de A:
Acesso aos elementos de vetores e 
matrizes no Octave
Acesso aos elementos de vetores e 
matrizes no Octave
Suponha que o usuário deseje acessar apenas os elementos das linhas 
2 e 3 de a, nas colunas 1 e 3. Isso pode ser escrito com o comando a(2:3, 
1:2:4).
Transposição de vetores e matrizes no 
Octave
A transposição de matrizes e vetores é uma necessidade recorrente em 
cálculo matricial. Em Octave, a transposição é indicada por um apóstrofo 
(’) colocado após o vetor/matriz que se deseja transpor.
>> b = [2 3; 8 1]
>> b’
Adição e subtração de matrizes no 
Octave
A adição ou subtração entre vetor ou matrizes é realizada pelos 
operadores + e -. Ex.:
Multiplicação por escalar no Octave
A multipl icação de um vetor ou de uma matrizpor um escalar 
simplesmente implica na multiplicação de cada um dos elementos por um 
escalar. Ex.:
Exercícios
1. Assista a seguinte vídeo-aula.
 https://www.youtube.com/watch?v=A1CJDkp1Djw
2. Crie um vetor v1x5 no Octave, gere sua transposta e a multiplique por um escalar a = 2.
3. Crie uma matriz M10x5 no Octave, gere sua transposta e a multiplique por um escalar a = 
3. 
4. Crie uma matriz M2x5 no Octave, e some-a pela sua transposta.
5. Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma matriz diagonal. 
6. Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma matriz identidade. 
7. Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma triangular inferior. 
8. Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma triangular superior. 
9. Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma matriz nula.
Dúvidas???

Continue navegando