Slide 1

Slide 1 text

UFRJ Álgebra linear computacional II Prof. Paulo R. G. Bordoni

Slide 2

Slide 2 text

Vamos entender, definitivamente, a atuação de matrizes como transformações lineares.

Slide 3

Slide 3 text

Este programa mostra a ação de uma matriz M num feixe de vetores.

Slide 4

Slide 4 text

A ação da matriz M sobre um feixe de vetores de tamanho unitário é clarificada pela imagem abaixo: A ação é dilatar a componente vertical dos vetores do feixe por um fator de escala = 2 e manter a componente horizontal inalterada.

Slide 5

Slide 5 text

A ação desta outra matriz M é dilatar de = 2.5 a componente dos vetores do feixe mas manter a componente inalterada. Ela é proporcional ao tamanho das componentes e dos vetores do feixe, que varia com a inclinação.

Slide 6

Slide 6 text

Já a ação desta outra matriz M sobre os vetores unitários do feixe é mais complexa: Uma rotação e uma dilatação.

Slide 7

Slide 7 text

Esta 4ª matriz M, além da rotação e dilatação também realiza uma inversão do sentido dos vetores. Notem, pelas cores, que o sentido dos vetores na imagem foi invertido.

Slide 8

Slide 8 text

Agora sim temos uma descrição mais completa do efeito de uma matriz sobre um feixe de vetores.

Slide 9

Slide 9 text

A pergunta que não pode calar: Como descrever matematicamente o efeito de uma matriz M sobre vetores?

Slide 10

Slide 10 text

Percebemos claramente que a matriz A leva a circunferência unitária numa elípse. Sim Mestra, é só olhar para as pontas dos vetores.

Slide 11

Slide 11 text

Então se eu usar apenas a circunferência unitária obterei o mesmo resultado - uma elipse. Exatamente Surfista. Veja o programa que confirma tua fala na próxima transparência.

Slide 12

Slide 12 text

Esse é o programa prometido.

Slide 13

Slide 13 text

Resumindo: A transformação linear : ℝ2 → ℝ2 leva a circunferência unitária numa elipse. Sim, e as medidas 1 , 2 dos semi-eixos da elipse são chamados de valores singulares da matriz . 1 2

Slide 14

Slide 14 text

Ok Mestres. Mas como eu calculo os esses valores singulares 1 , 2 da matriz ?

Slide 15

Slide 15 text

Loirinha, esta é uma das questões mais importantes da Álgebra linear computacional. A resposta é a decomposição em valores singulares da matriz .

Slide 16

Slide 16 text

Voltando ao livro do Trefethen, logo no início está a decomposição em valores singulares

Slide 17

Slide 17 text

O teorema da Decomposição em Valores Singulares (SVD): Seja ∈ ℳ× uma matriz com elementos ∈ ℂ. Então existem matrizes unitárias ∈ ℳ× e ∈ ℳ× tais que = Σ = (1 , 2 , ⋯ , ), com = { , } e 1 ≥ 2 ≥ ⋯ ≥ ≥ 0. Os ′ são chamados de valores singulares. As colunas de U e V são os vetores singulares da esquerda e direita, respectivamente.

Slide 18

Slide 18 text

Para = 3 e = 2: 11 12 21 22 31 32 = 11 12 13 21 22 23 31 32 33 1 0 0 2 0 0 11 12 21 22 Para = 2 e = 3: 11 12 13 21 22 23 = 11 12 21 22 1 0 0 0 2 0 11 12 13 21 22 23 31 32 33 Quando = , todas as matrizes serão quadradas. Abaixo mostrei dois exemplos em que ≠ .

Slide 19

Slide 19 text

Seja ∈ ℳ× uma matriz com elementos reais. Então existem matrizes ortogonais ∈ ℳ× e ∈ ℳ× tais que = Σ = (1 , 2 , ⋯ , ), com = { , } e 1 ≥ 2 ≥ ⋯ ≥ ≥ 0. Vamos nos restringir à matrizes reais ∈ ℝ. Nesse caso o teorema fica:

Slide 20

Slide 20 text

Vejam, lá na scipy.linalg.

Slide 21

Slide 21 text

A continuação A transposta de V.

Slide 22

Slide 22 text

Um programinha simples que recebe uma matriz e devolve sua decomposição SVD:

Slide 23

Slide 23 text

Uma execução do programa:

Slide 24

Slide 24 text

Nesse caso a hiper-esfera unitária foi deformada num hiper-elipsoide com semi-eixos 1 = 6.678 … , 2 = 4.049… , 3 = 2.288 … , 4 = 1.322 … . Perfeitamente, Loirinha!

Slide 25

Slide 25 text

Notem que os vetores 1 , 2 , 3 , 4 , que constituem as colunas da matriz e os vetores 1 , 2 , 3 , 4 que constituem as linhas da matriz são ortonormais. Sim Galileu, uma vez que: • ∙ = , • ∙ = .

Slide 26

Slide 26 text

Lembrem-se, transformações ortogonais representam transformações rígidas: rotações ou reflexões/inversões.

Slide 27

Slide 27 text

Exatamente Surfista! E, se eu entendi, as direções desses semi- eixos são dadas pelos vetores ortonormais 1 , 2 , 3 , 4 , que constituem as colunas da matriz : = 1 2 3 4

Slide 28

Slide 28 text

Só não consegui entender o papel dos vetores ortonormais 1 , 2 , 3 , 4 , que constituem as linhas da matriz : = 1 2 3 4 . É aí que entra a interpretação geométrica da fatoração SVD.

Slide 29

Slide 29 text

O teorema informa que = ∙ Σ ∙ , com ∈ ℳ× , ∈ ℳ× , ∈ ℳ× e Σ ∈ ℳ× . Isto significa que, como transformação linear, : ℝ → ℝ é a composta de três transformações lineares: : ℝ → ℝ, Σ: ℝ → ℝ e : ℝ → ℝ, como mostro na próxima transparência.

Slide 30

Slide 30 text

Veja no gráfico, Loirinha: ℝ ℝ ℝ ℝ Σ Rotação ou inversão Rotação ou inversão Dilatação ou contração

Slide 31

Slide 31 text

Este programa calcula a decomposição SVD de uma matriz 2x2 e mostra o resultado graficamente.

Slide 32

Slide 32 text

Aí estão as diagonais que você tanto pediu, Loirinha.

Slide 33

Slide 33 text

Agora em 3D. A esfera unitária será levada num elipsoide.

Slide 34

Slide 34 text

O Mestre cortou um gomo da laranja para melhorar a visualização. Na realidade uma casca esférica, cortada para olharmos seu interior. A matriz A é diagonal. Note as escalas nos 3 eixos da imagem.

Slide 35

Slide 35 text

Fiz um programa para calcular a decomposição em valores singulares, SVD, de uma matriz A. Depois apliquei-o à matriz do gráfico anterior.

Slide 36

Slide 36 text

Esta outra matriz A é simétrica. Além de deformar a esfera num elipsoide, ela também gira-o entorno da origem!

Slide 37

Slide 37 text

Calculei a SVD dessa matriz. Marquei o tamanho dos semi-eixos do elipsoide para você, Loirinha.

Slide 38

Slide 38 text

Na fórmula acima, fórmula, é qualquer sub matriz de ordem obtida de eliminando-se − linhas e − colunas de . O posto de , anotado () é definido por: = 1 ≤ ≤ min , ≠ 0 } . A definição de posto de uma matriz ∈ ℳ× é a seguinte:

Slide 39

Slide 39 text

O () é o número máximo de vetores coluna de linearmente independentes ou seja é a dimensão da imagem de : = ∈ ℝ y = Ax, x ∈ ℝ } O núcleo de uma matriz ∈ ℳ× é o subespaço ú = ∈ ℝ = 0 }. A dimensão de ú é denominada nulidade de , e anotada .

Slide 40

Slide 40 text

Valem as seguintes igualdades: 1. = posto(), 2. + = . Além disso, as seguintes propriedades são equivalentes: 1. é não-singular, 2. det ≠ 0, 3. ú = 0 , 4. =

Slide 41

Slide 41 text

Para esta matriz A, a esfera vira um disco! Perdemos uma dimensão na imagem. Fiz duas fotos para vocês conferirem. Uma de perfil e, a outra, quase de frente.

Slide 42

Slide 42 text

Também calculei a SVD da minha matriz. Marquei o valor do determinante e o tamanho dos semieixos do elipsoide. Vejam que tanto o determinante como o valor de um semieixo é zero. O posto da matriz é 2 e seu espaço nulo é unidimensional

Slide 43

Slide 43 text

Com esta outra matriz perdemos duas dimensões! A imagem da esfera vira um segmento de reta.

Slide 44

Slide 44 text

Loirinha, repeti seus cálculos para esta última matriz A. Agora o det() e dois dos valores singulares de A são nulos. Neste caso = 1 e = 2.

Slide 45

Slide 45 text

Agora passaremos a formalizar o conceito de norma de uma matriz.

Slide 46

Slide 46 text

Uma norma matricial é uma função ∙ ∶ ℳ× → ℝ satisfazendo: Para , ∈ ℳ× e ∈ ℝ, 1. ≥ 0, 2. = 0 se e somente se = 0, 3. = , 4. + ≤ + .

Slide 47

Slide 47 text

Uma norma matricial ∙ é compatível com uma norma vetorial ∙ quando ≤ , ∀ ∈ ℝ. Uma norma matricial ∙ é dita sub multiplicativa quando ≤ , ∀, ∈ ℳ× .

Slide 48

Slide 48 text

A norma de Frobenius é definida por: = ෍ ,=1 2 = () Surfista, prove que é uma norma matricial.

Slide 49

Slide 49 text

Prova-se que se ∙ é uma norma vetorial, então a função definida por = sup ≠0 É uma norma matricial. Essa norma é denominada norma matricial induzida (pela norma vetorial ∙ ) ou ainda norma matricial natural.

Slide 50

Slide 50 text

A demonstração:

Slide 51

Slide 51 text

A norma é definida por: = max ≠0 Quando = 2, temos a norma euclidiana.

Slide 52

Slide 52 text

As normas ∙ 1 , e ∙ ∞ são facilmente calculáveis a partir de: 1 = max =1,⋯, ෍ =1 ∞ = max =1,⋯, ෍ =1 Prove essas duas afirmações, Surfista.

Slide 53

Slide 53 text

Agora entendi, Galileu, porque este conjunto de transparências começou mostrando a ação de uma matriz A sobre a bola unitária. Prova-se que 2 = 1 , onde 1 é o maior valor singular de A.

Slide 54

Slide 54 text

Apresento novamente a scipi.linalg.norm().

Slide 55

Slide 55 text

Agora vamos calcular normas matriciais.

Slide 56

Slide 56 text

Especificamente, vamos calcular as normas ∙ , ∙ 2 , ∙ 1 , ∙ ∞ de uma matriz e conferir a igualdade 2 = 1 .

Slide 57

Slide 57 text

Vejam:

Slide 58

Slide 58 text

Uma fatoração pouco divulgada nos cursos de Cálculo Numérico é a fatoração = . Nela, a matriz é ortogonal e a matriz é triangular superior. Sabendo que = , para resolver um sistema linear = , basta resolver o sistema triangular superior = .

Slide 59

Slide 59 text

Apresento a scipi.linalg.qr().

Slide 60

Slide 60 text

A continuação da QR:

Slide 61

Slide 61 text

Eis o algoritmo e o programa feito pelo Mestre: 1. Receber uma matriz e um termo independente , 2. Calcular a fatoração = , 3. Conferir que é ortogonal, 4. Resolver o sistema linear = , 5. Calcular = e conferir que = via ( ).

Slide 62

Slide 62 text

Um exemplo do meu programa:

Slide 63

Slide 63 text

A fatoração QR é extremamente importante em Álgebra Linear Computacional. Loirinhas, Surfistas e Cabelos de Fogo, procurem informações sobre ela em livros (o do Trefethen é uma boa dica) ou na Internet e façam a tarefa que o Tio vai mandar.

Slide 64

Slide 64 text

Após encontrar a informações sobre a fatoração QR discutam sobre sua importância e descubram as conexões entre ela: 1. E o processo de ortogonalização de Gram- Schmidt. 2. E a triangularização de Householder. 3. Qual dos processos é mais estável?

Slide 65

Slide 65 text

Mestres, quando deveremos apresentar a tarefa ordenada pelo Tio? Apresente tua resposta impreterivelmente na próxima semana, senão mandarei o Tribunal da Inquisição te condenar como bruxa!

Slide 66

Slide 66 text

Torquinho, como deveremos entregar esses exercícios? Como antes, em papel almaço pautado, com nome, DRE e turma. Manuscrito!

Slide 67

Slide 67 text

Outro tópico fundamental em Álgebra linear computacional e nas Ciências e Engenharias são os autovalores e autovetores.

Slide 68

Slide 68 text

Surfista, para revisar autovalores e autovetores, consulte o livro:

Slide 69

Slide 69 text

O livro do Trefethen dedica todo um capítulo à autovalores e autovetores. Marquei no índice.

Slide 70

Slide 70 text

Vou recordar as definições de autovalores e autovetores: Seja ∈ ℳ× uma matriz de ordem n. de números reais ou complexos. Um vetor não-nulo ∈ ℂ é um autovetor de A e ∈ ℂ o autovalor correspondente quando = . O conjunto de todos os autovalores de A é chamado de espectro de A e anotado ().

Slide 71

Slide 71 text

Mestres, = ⟺ − = 0. Você é show, Loirinha! E, a única chance de termos ≠ 0 é quando det − = 0

Slide 72

Slide 72 text

é um autovalor de A ⟺ é uma raiz do polinômio característico de A, isto é, = 0 Da definição de autovalores e autovetores, é imediato que (prove Loirinha): O polinômio característico de uma matriz A é definido por = det( − ). Ele é um polinômio mônico.

Slide 73

Slide 73 text

Uma consequência importante desse resultado é que autovalores de uma matriz A podem ser complexos, mesmo que a matriz A seja real.

Slide 74

Slide 74 text

Uma outra consequência é que: • Uma matriz ∈ ℳ × possui no máximo n autovalores, contadas as multiplicidades algébricas. • Se todas as raízes do polinômio característico forem raízes simples, então A possuirá n autovalores distintos.

Slide 75

Slide 75 text

Uma dica: Assuma que 1 ≠ 2 são autovalores correspondentes aos autovetores 1 e 2 . Suponha, por absurdo, que 1 e 2 são LD, isto é 1 = 2 , ≠ 0. Conclua! Autovalores distintos garantem que os autovetores correspondentes são linearmente independentes. Prove isto como exercício, Surfista!

Slide 76

Slide 76 text

A ideia subjacente aos conceitos de autovalores e autovetores é que: A ação de A em determinados subespaços S de ℝ imita a multiplicação por fator de escala, = . Na figura abaixo os subespaços são os eixos e já que a matriz A é diagonal!

Slide 77

Slide 77 text

Concordo Mestra, no eixo- (um dos subespaços) temos uma dilatação de = 1.5 e no outro (o eixo-) uma contração de = 0.5.

Slide 78

Slide 78 text

É, aplicando essa matriz a vetores sobre o eixo-, o resultado é claro. Idem para vetores sobre o eixo-. Vejam: Vetores sobre o eixo- continuam no eixo- 1.5 0 0 0.5 0 = 1.5 0 , só aumentam em 50%. E, vetores sobre o eixo- continuam sobre o eixo- 1.5 0 0 0.5 0 = 0.5 0 , só diminuem à metade.

Slide 79

Slide 79 text

Eis o que há na scipy.linalg sobre autovalores e autovetores

Slide 80

Slide 80 text

Uma matriz ∈ ℳ × é diagonalizável, quando existirem matrizes , ∈ ℳ × , sendo V inversível e D diagonal, tais que = −1. Quando é diagonalizável, os elementos 1 , 2 , … , da diagonal de D são os autovalores de e as colunas 1 , 2 , … , de V de são os autovetores correspondentes. Um definição semelhante ao teorema da decomposição SVD:

Slide 81

Slide 81 text

Prova-se que é diagonalizável se, e somente se, seus autovetores 1 , 2 , … , são linearmente independentes. Sim Mestra, pois vetores 1 , 2 , … , são linearmente independentes se, e somente se a matriz = 1 2 … é inversível.

Slide 82

Slide 82 text

Este é um dos resultados mais importantes da Álgebra Linear. A Mestra vai mostrar, como ele aparece na scipy.linalg Em particular, se A é simétrica, então seus autovalores são reais e seus autovetores são ortogonais: =

Slide 83

Slide 83 text

É claro, quando é simétrica, temos uma interpretação geométrica semelhante à da SVD: ℝ ℝ ℝ ℝ Rotação ou inversão Rotação ou inversão contrária Dilatação ou contração

Slide 84

Slide 84 text

Para matrizes reais o h em eigh é a simetria de A.

Slide 85

Slide 85 text

Os valores de retorno:

Slide 86

Slide 86 text

Muito fácil também, Mestres. Vejam o programinha que fiz. Vou entrar com uma matriz simétrica 3x3.

Slide 87

Slide 87 text

Tudo muito simples. Só não conferi se os autovetores são ortogonais. Faça isso Loirinha!

Slide 88

Slide 88 text

Cuidado, o fato de D ser diagonal, não garante = . Experimente com o programa:

Slide 89

Slide 89 text

Sim Loirinha, e se os autovetores correspondentes forem LI (linearmente independentes) o subespaço gerado por eles possuirá dimensão maior que 1. A dimensão desse subespaço é conhecida como multiplicidade geométrica de . Mestres, existe a possibilidade de alguns dos autovalores 1 , 2 , ⋯ , em serem iguais?

Slide 90

Slide 90 text

Equações polinomiais podem possuir raízes com multiplicidade maior que 1. É a mesma coisa que a multiplicidade geométrica do autovalor? Não Loirinha, trata-se da multiplicidade algébrica do autovalor .

Slide 91

Slide 91 text

Podemos provar que: A multiplicidade algébrica de um autovalor é maior ou, quando muito, igual à sua multiplicidade geométrica. No caso da multiplicidade algébrica de um autovalor ser maior que sua multiplicidade geométrica, ele é dito defectivo.

Slide 92

Slide 92 text

Surfista, as matrizes A e B abaixo possuem o mesmo polinômio característico, = ( − 2)3. Portanto ambas possuem apenas um autovalor = 2, com multiplicidade algébrica 3. = 2 2 2 = 2 1 2 1 2

Slide 93

Slide 93 text

Claramente, no caso da matriz A, 1 = 1 0 0 , 2 = 0 1 0 , 3 = 0 0 1 são autovetores associados a = 2. Assim a dimensão geométrica do autoespaço associado a = 2 é 3. = 2 2 2

Slide 94

Slide 94 text

= 2 1 2 1 2 É, mas para a matriz B só conseguimos um autovetor = 1 0 0 linearmente independente. Assim, a dimensão do autoespaço associado ao autovalor = 2 é 1 e ele é um autovalor defectivo.

Slide 95

Slide 95 text

Para sacramentar esse papo: Uma matriz A é diagonalizável se,e somente se, ela é não defectiva. Em outras palavras: existem matrizes V e , com V inversível e diagonal, tais que = −1 quando, e apenas quando, A é não defectiva.

Slide 96

Slide 96 text

Esta rotina calcula, apenas, os autovalores de A.

Slide 97

Slide 97 text

Estupidamente fácil de usar Mestres, vejam o programinha que fiz. Entrei com uma matriz 3x3, e obtive três autovalores distintos e reais.

Slide 98

Slide 98 text

O mesmo programa. Tornei a entrar com uma matriz real, agora 4x4, mas obtive um par de autovalores complexos e dois autovalores reais.

Slide 99

Slide 99 text

Esta rotina fornece os autovalores os autovetores.

Slide 100

Slide 100 text

Os valores de retorno:

Slide 101

Slide 101 text

Eis aqui meu programa, Surfista!

Slide 102

Slide 102 text

Apliquei-o à matriz 3x3 do seu 1º exemplo, Surfista.

Slide 103

Slide 103 text

Tchau, até a próxima aula!

Slide 104

Slide 104 text

No content

Slide 105

Slide 105 text

No content

Slide 106

Slide 106 text

No content

Slide 107

Slide 107 text

No content

Slide 108

Slide 108 text

No content

Slide 109

Slide 109 text

No content

Slide 110

Slide 110 text

No content