Baixe o app para aproveitar ainda mais
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???
Compartilhar