Astrolábio · Matrizes
Matemática A · 12.º ano · Aprendizagens Essenciais

Matrizes

Uma tabela de números sobre a qual se sabe fazer contas — e que, por causa disso, move figuras no plano. Conceito de matriz, operações e casos de impossibilidade, e as transformações geométricas que estão por trás de tudo o que se anima num ecrã. Um dos três temas opcionais das Aprendizagens Essenciais. Teoria, laboratórios interativos e exercícios com resolução passo a passo.

\begin{bmatrix} a & b \\ c & d \end{bmatrix}\begin{bmatrix} x \\ y \end{bmatrix} As colunas da matriz dizem para onde vão os dois vetores.
0exercícios
3laboratórios interativos
9secções
0%concluído
R

Revisão · Vetores e o plano

As matrizes só se tornam interessantes quando começam a mexer em figuras, e isso é a secção 3. Para lá chegar é preciso ter à mão o que o 10.º e o 11.º já deram: coordenadas, vetores, e as transformações geométricas vistas antes de existir matriz nenhuma.

Aprendizagens Essenciais
  • Identificar matrizes e operações com matrizes em situações concretas — retomando as noções de vetor e de transformação geométrica do plano.

1 · Pontos, vetores e coordenadas

Num referencial ortonormado, um ponto fica determinado por duas coordenadas, e um vetor também. A diferença é o que cada um significa: o ponto é um sítio; o vetor é um deslocamento.

Do ponto ao vetor, e de volta

\overrightarrow{AB} = B - A, coordenada a coordenada: chegada menos partida. \vec{u}+\vec{v} e k\vec{u} fazem-se coordenada a coordenada. \left\|\vec{u}\right\| = \sqrt{u_{1}^{2}+u_{2}^{2}}, que é o teorema de Pitágoras.

2 · Os dois vetores que geram tudo

Sejam \vec{e_{1}}(1,\,0) e \vec{e_{2}}(0,\,1). Qualquer vetor do plano se escreve à custa deles, e os coeficientes são as próprias coordenadas:

\vec{u}(u_{1},\,u_{2}) = u_{1}\,\vec{e_{1}} + u_{2}\,\vec{e_{2}}.
Porque é que isto vai importar

Guarda esta igualdade. Se uma transformação respeitar somas e múltiplos — e todas as da secção 3 respeitam —, então saber para onde vão \vec{e_{1}} e \vec{e_{2}} chega para saber para onde vai tudo. É esse o motivo de as matrizes funcionarem.

3 · Transformações, antes de haver matrizes

TransformaçãoEfeito em (x,\,y)O que se conserva
Translação de \vec{u}(x+u_{1},\ y+u_{2})tudo: forma, tamanho e orientação
Reflexão em Ox(x,\ -y)forma e tamanho; inverte a orientação
Rotação de 90° na origem(-y,\ x)forma e tamanho
Homotetia de razão k(kx,\ ky)a forma; a área fica k^{2} vezes maior

Nenhuma destas precisa de matrizes para se descrever. O que as matrizes trazem é uma linguagem só para todas — e, com ela, a possibilidade de as compor multiplicando.

Exemplo 1 Uma transformação sem matriz

Uma transformação do plano leva \vec{e_{1}}(1,\,0) a (2,\,1) e \vec{e_{2}}(0,\,1) a (0,\,3), e respeita somas e múltiplos. Determina a imagem de P(3,\,-1).

  1. Decompor o ponto: (3,\,-1) = 3\,\vec{e_{1}} - 1\,\vec{e_{2}}.
  2. Transportar para as imagens, que é o que «respeitar somas e múltiplos» autoriza: 3(2,\,1) - 1(0,\,3) = (6,\,3) - (0,\,3) = (6,\,0).
  3. A imagem é P'(6,\,0).Duas imagens conhecidas chegaram para responder sobre um ponto qualquer. Na secção 3, essas duas imagens vão ser as colunas de uma matriz — e esta conta vai passar a chamar-se «multiplicar».
RespostaP'(6,\,0)
Exemplo 2 A área numa homotetia

Um retângulo tem vértices (0,0), (3,0), (3,2) e (0,2). Aplica-se-lhe a homotetia de centro na origem e razão 3.

Determina a área da imagem e compara-a com a original.

  1. Os vértices da imagem, multiplicando as duas coordenadas por 3: (0,0), (9,0), (9,6), (0,6).
  2. As áreas: 3 \times 2 = 6 antes; 9 \times 6 = 54 depois.
  3. A razão: \dfrac{54}{6} = 9 = 3^{2}.
  4. Numa homotetia de razão k, os comprimentos multiplicam-se por k e as áreas por k^{2}.Vale a pena reter o expoente. No laboratório da secção 3, o número que aparece como «a área fica multiplicada por» é exatamente isto — e explica por que razão duplicar uma fotografia a quadruplica em papel.
RespostaÁrea 54, nove vezes a original
Python Transformar um polígono, sem matrizes
def area(pol):
    s = 0
    for k in range(len(pol)):
        x1, y1 = pol[k]
        x2, y2 = pol[(k + 1) % len(pol)]
        s += x1*y2 - x2*y1
    return abs(s) / 2

quadrado = [(0, 0), (1, 0), (1, 1), (0, 1)]

transformacoes = {
    'identidade':   lambda x, y: (x, y),
    'homotetia 3':  lambda x, y: (3*x, 3*y),
    'cisalhamento': lambda x, y: (x + y, y),
    'reflexao Ox':  lambda x, y: (x, -y),
}

for nome, t in transformacoes.items():
    imagem = [t(x, y) for x, y in quadrado]
    print('%-14s area = %.2f' % (nome, area(imagem)))

A homotetia multiplica a área por 9; o cisalhamento e a reflexão deixam-na igual. Acrescenta lambda x, y: (2*x, y) e adivinha o resultado antes de correr.

Exercícios propostos

Doze exercícios de revisão. Os últimos quatro são a secção 3 disfarçada: fazem, sem matrizes, exatamente o que as matrizes vão passar a fazer.

A cor do título dá o grau de dificuldade: verde, aplicação direta · amarelo, exige uma ideia intermédia · vermelho, justificação ou generalização, ao nível do Exame.

Exercício 1§R · coordenadas

Num referencial o.n. xOy, considera A(2,\,-1) e B(5,\,3).

a) Determina as coordenadas de \overrightarrow{AB}.b) Determina \left\|\overrightarrow{AB}\right\|.

Exercício 2§R · vetores

Sendo \vec{u}(2,\,-3) e \vec{v}(-1,\,4), determina \vec{u}+\vec{v} e 2\vec{u}-\vec{v}.

Exercício 3§R · translação

Determina a imagem do ponto P(-2,\,4) pela translação associada ao vetor \vec{u}(5,\,-1).

Exercício 4§R · vetores unitários

Escreve o vetor \vec{w}(4,\,-7) como combinação dos vetores \vec{e_{1}}(1,\,0) e \vec{e_{2}}(0,\,1).

Exercício 5§R · transformações

Determina a imagem de P(3,\,-5) pela reflexão em relação:

a) ao eixo Ox;b) ao eixo Oy;c) à origem.

Exercício 6§R · transformações

Um triângulo tem vértices A(0,\,0), B(2,\,0) e C(0,\,3).

Determina os vértices da imagem pela homotetia de centro na origem e razão 2, e compara as áreas.

Exercício 7§R · vetores

Determina k real de modo que os vetores \vec{u}(3,\,k) e \vec{v}(6,\,4) sejam colineares.

Exercício 8§R · coordenadas

Determina as coordenadas do ponto M, ponto médio de \left[AB\right], sendo A(-3,\,6) e B(7,\,-2).

Exercício 9§R · transformações

Determina a imagem de P(2,\,5) pela rotação de 90° em torno da origem, no sentido positivo, usando apenas o desenho e a simetria.

Exercício 10§R · vetores unitários

Sabendo que uma transformação do plano leva \vec{e_{1}}(1,\,0) a (3,\,1) e \vec{e_{2}}(0,\,1) a (-1,\,2), e que respeita somas e múltiplos, determina a imagem de P(4,\,-2).

Exercício 11§R · transformações

Um quadrado tem vértices (0,0), (1,0), (1,1) e (0,1). Aplica-se-lhe a transformação (x,\,y) \mapsto (x+y,\,y).

a) Determina as imagens dos quatro vértices.b) Determina a área da imagem.

Exercício 12§R · coordenadas

Considera A(1,\,2), B(5,\,4) e C(3,\,8).

Determina as coordenadas do ponto D de modo que \left[ABCD\right] seja um paralelogramo, por esta ordem dos vértices.

As coordenadas do vetor são «chegada menos partida». A norma sai do teorema de Pitágoras.

  1. a) \overrightarrow{AB} = B - A = (5-2,\,3-(-1)) = (3,\,4).
  2. b) \left\|\overrightarrow{AB}\right\| = \sqrt{3^{2}+4^{2}} = \sqrt{25} = 5.
Resposta(3,\,4) · 5

Coordenada a coordenada — exatamente como se vai somar matrizes na secção 2.

  1. \vec{u}+\vec{v} = (2-1,\,-3+4) = (1,\,1).
  2. 2\vec{u} = (4,\,-6), logo 2\vec{u}-\vec{v} = (4+1,\,-6-4) = (5,\,-10).Somar vetores é somar coordenada a coordenada, e multiplicar por um número é multiplicar todas. As matrizes vão fazer exatamente o mesmo — uma matriz coluna é um vetor.
Resposta(1,\,1) · (5,\,-10)

Transladar é somar o vetor às coordenadas do ponto.

  1. P' = P + \vec{u} = (-2+5,\,4-1) = (3,\,3).
RespostaP'(3,\,3)

As coordenadas são os coeficientes da combinação. É quase uma definição.

  1. \vec{w} = 4\,\vec{e_{1}} - 7\,\vec{e_{2}}.
  2. Verificação: 4(1,0) - 7(0,1) = (4,0)+(0,-7) = (4,-7). ✓É esta decomposição que faz a secção 3 funcionar: se se souber para onde vão \vec{e_{1}} e \vec{e_{2}}, sabe-se para onde vai tudo o resto.
Resposta\vec{w} = 4\vec{e_{1}} - 7\vec{e_{2}}

Refletir no eixo Ox muda o sinal da ordenada; no eixo Oy, o da abcissa.

  1. a) (3,\,5).
  2. b) (-3,\,-5).
  3. c) (-3,\,5) — os dois sinais mudam.A reflexão na origem é o mesmo que uma rotação de 180°. Na secção 3 vai ver-se que as duas têm mesmo a mesma matriz.
Resposta(3,\,5) · (-3,\,-5) · (-3,\,5)

Uma homotetia de centro na origem multiplica as duas coordenadas pela razão. E a área não cresce na mesma proporção.

  1. Os vértices: A'(0,0), B'(4,0), C'(0,6).
  2. As áreas: \frac{2 \times 3}{2} = 3 antes; \frac{4 \times 6}{2} = 12 depois.
  3. A área ficou multiplicada por 4 = 2^{2}, e não por 2.Guarda o resultado: numa ampliação de razão k, a área multiplica-se por k^{2}. O laboratório da secção 3 mostra isso a acontecer.
Resposta(0,0), (4,0), (0,6); a área passa de 3 a 12

Dois vetores são colineares quando um é múltiplo do outro. Compara as primeiras coordenadas para descobrir o múltiplo.

  1. O múltiplo, pelas primeiras coordenadas: 6 = 2 \times 3, logo \vec{v} = 2\vec{u} se forem colineares.
  2. As segundas: 4 = 2k \iff k = 2.
  3. Verificação: \vec{u}(3,\,2) e \vec{v}(6,\,4) = 2\vec{u}. ✓A colinearidade das duas colunas de uma matriz é exatamente o que faz o plano colapsar numa reta — é o exercício 12 da secção 3.
Respostak = 2

O ponto médio tem por coordenadas as médias das coordenadas dos extremos.

  1. M\left(\frac{-3+7}{2},\ \frac{6-2}{2}\right) = M(2,\,2).
RespostaM(2,\,2)

Desenha o ponto e roda-o um quarto de volta no sentido contrário ao dos ponteiros do relógio. Repara no que acontece às duas coordenadas.

  1. Rodar 90° no sentido positivo leva o eixo Ox ao eixo Oy e o eixo Oy ao semieixo negativo Ox.
  2. Portanto (x,\,y) \mapsto (-y,\,x), e P(2,\,5) \mapsto P'(-5,\,2).
  3. Confirma-se pela norma: \sqrt{4+25} = \sqrt{25+4}. Uma rotação não muda distâncias.A regra (x,y)\mapsto(-y,x) vai reaparecer na secção 3 como uma matriz. Vale a pena chegar lá já a saber o resultado.
RespostaP'(-5,\,2)

Decompõe P como 4\vec{e_{1}} - 2\vec{e_{2}} e transporta a decomposição para as imagens.

  1. Decompor: (4,\,-2) = 4\,\vec{e_{1}} - 2\,\vec{e_{2}}.
  2. Transportar, porque a transformação respeita somas e múltiplos: 4(3,\,1) - 2(-1,\,2) = (12,\,4) - (-2,\,4) = (14,\,0).
  3. A imagem é (14,\,0).Este exercício é a secção 3, escrito sem uma única matriz. Quando a matriz aparecer, as imagens de \vec{e_{1}} e \vec{e_{2}} vão ser as suas colunas — e a conta é esta.
Resposta(14,\,0)

Faz o desenho. A base não se mexe — só o topo é que desliza.

  1. a) (0,0) \mapsto (0,0); (1,0) \mapsto (1,0); (1,1) \mapsto (2,1); (0,1) \mapsto (1,1).
  2. b) A imagem é um paralelogramo de base 1 (o segmento de (0,0) a (1,0)) e altura 1: área 1.
  3. A área é a mesma do quadrado de partida.É um cisalhamento, e a área nunca muda num cisalhamento — a figura escorrega, mas não se estica nem se encolhe.
Resposta(0,0), (1,0), (2,1), (1,1); área 1

Num paralelogramo \left[ABCD\right] tem-se \overrightarrow{AB} = \overrightarrow{DC}. Escreve os dois vetores e iguala.

  1. O vetor conhecido: \overrightarrow{AB} = (4,\,2).
  2. A condição: \overrightarrow{DC} = \overrightarrow{AB}, ou seja C - D = (4,\,2).
  3. Resolver: D = C - (4,\,2) = (3-4,\,8-2) = (-1,\,6).
  4. Verificação: \overrightarrow{AD} = (-2,\,4) e \overrightarrow{BC} = (-2,\,4). ✓A ordem dos vértices manda. Com \left[ABDC\right] a condição seria outra, e o ponto sairia noutro sítio.
RespostaD(-1,\,6)
01

O conceito de matriz

Uma tabela de números com dois índices. Dito assim parece pouco — e é mesmo pouco. O que faz das matrizes uma das ferramentas mais poderosas que se inventaram são as operações que se definem sobre elas, e isso é a secção seguinte.

Aprendizagens Essenciais
  • Identificar matrizes e operações com matrizes em situações concretas.
  • Entender o conceito de matriz e conhecer alguns casos particulares, nomeadamente matriz retangular, matriz quadrada, matriz linha, matriz coluna, matriz diagonal e matriz identidade.

1 · De uma tabela a uma matriz

Uma escola tem duas turmas e regista, para cada uma, quantos alunos escolheram cada uma de três disciplinas de opção:

FísicaEconomiaDesenho
Turma A1285
Turma B9143

Se ficar combinado que a primeira linha é a turma A, a segunda a turma B, e as colunas seguem aquela ordem, os cabeçalhos deixam de ser precisos. Sobram os números — e é isso a matriz:

\begin{bmatrix} 12 & 8 & 5\\ 9 & 14 & 3 \end{bmatrix}
Definição · matriz

Chama-se matriz do tipo m \times n a um quadro de m \times n números reais dispostos em m linhas e n colunas. Representa-se por

A = \left[a_{ij}\right], \quad i = 1,\ldots,m, \quad j = 1,\ldots,n,

onde a_{ij} é o elemento da linha i e da coluna j.

Primeiro a linha, depois a coluna

Em a_{23}, o 2 é a linha e o 3 é a coluna — e o mesmo no tipo, m \times n: linhas primeiro. Não é convenção que se possa inverter: é ela que faz o produto da secção 2 encaixar.

2 · Os casos particulares que têm nome

Casos particulares

Retangular — o caso geral, com m \neq n. Quadrada de ordem n — tantas linhas como colunas. Os elementos a_{11}, a_{22}, \ldots, a_{nn} formam a diagonal principal. Linha — uma só linha, tipo 1 \times n. Coluna — uma só coluna, tipo m \times 1. Diagonal — quadrada, com zeros em todas as posições fora da diagonal principal. Identidade I_{n} — diagonal, com 1 em toda a diagonal principal.

\underbrace{\begin{bmatrix} 4 & 0 & 0\\ 0 & -2 & 0\\ 0 & 0 & 7 \end{bmatrix}}_{\text{diagonal}} \qquad \underbrace{\begin{bmatrix} 1 & 0\\ 0 & 1 \end{bmatrix}}_{I_{2}} \qquad \underbrace{\begin{bmatrix} 3\\ -1 \end{bmatrix}}_{\text{coluna}}

A matriz coluna parece a menos interessante das cinco. É a mais importante deste capítulo: é assim que um ponto do plano se escreve para poder ser multiplicado por uma matriz, na secção 3.

3 · Quando duas matrizes são iguais

Igualdade de matrizes

Duas matrizes são iguais quando têm o mesmo tipo e os elementos coincidem posição a posição: a_{ij} = b_{ij} para todo o i e todo o j.

Uma igualdade é um sistema

Igualar duas matrizes 2 \times 3 é escrever seis equações de uma vez. É por isso que as matrizes e os sistemas de equações andam sempre juntos — e é essa a razão pela qual foram inventadas.

Um pouco de história

O nome matriz é de James Joseph Sylvester (1814-1897), em 1850: chamou-lhe assim — «matriz», no sentido de molde, aquilo de onde saem os determinantes. Foi o amigo Arthur Cayley (1821-1895) quem, em 1858, deu o passo decisivo: definiu as operações e tratou as matrizes como objetos com álgebra própria. Até aí eram tabelas; a partir daí passaram a ser números de um novo tipo. Hoje são o que está por trás de um motor de busca, de um modelo de linguagem e de cada fotograma de um filme de animação.

Exemplo 3 Da situação para a matriz

Um ginásio tem três modalidades e regista as inscrições em dois meses. Em janeiro: 30 em natação, 22 em ténis, 18 em judo. Em fevereiro: 26, 31 e 20.

Escreve a matriz A com uma linha por mês, indica o seu tipo e o significado de a_{12}.

  1. Fixar a leitura. Linha 1 = janeiro, linha 2 = fevereiro; colunas por ordem natação, ténis, judo.
  2. A matriz: A = \begin{bmatrix} 30 & 22 & 18\\ 26 & 31 & 20 \end{bmatrix}.
  3. O tipo é 2 \times 3: duas linhas, três colunas.
  4. O elemento a_{12} está na linha 1 e na coluna 2: a_{12} = 22, as inscrições em ténis em janeiro.O primeiro passo — dizer o que é cada linha e cada coluna — não é formalidade. Sem ele, a_{12} é um número sem significado, e a matriz não representa coisa nenhuma.
RespostaTipo 2 \times 3; a_{12} = 22, o ténis em janeiro
Exemplo 4 Uma igualdade que é um sistema

Determina x, y e z, reais, tais que

\begin{bmatrix} x+y & 4\\ z & 2x \end{bmatrix} = \begin{bmatrix} 5 & 4\\ -3 & 6 \end{bmatrix}.
  1. Mesmo tipo — as duas são 2 \times 2, logo a igualdade faz sentido.
  2. Posição a posição, ignorando as que já coincidem: \begin{cases} x+y = 5\\ z = -3\\ 2x = 6 \end{cases}
  3. Resolver. Da terceira, x = 3; substituindo na primeira, y = 2. E z = -3.
  4. Verificação: 3+2 = 5 ✓ e 2 \times 3 = 6 ✓.Começar pela equação que tem uma só incógnita — aqui a terceira — poupa todo o trabalho de substituição. Vale sempre a pena olhar para o sistema todo antes de escolher por onde começar.
Respostax = 3, y = 2, z = -3
Python Uma matriz é uma lista de listas
A = [[12, 8, 5],
     [9, 14, 3]]

print('tipo:', len(A), 'x', len(A[0]))
print('a[1][2] =', A[0][1])

print()
print('totais por turma:')
for i, linha in enumerate(A):
    print('  turma', i + 1, '->', sum(linha))

print('totais por disciplina:')
for j in range(len(A[0])):
    print('  disciplina', j + 1, '->', sum(A[i][j] for i in range(len(A))))

Repara no desencontro dos índices: o a_{12} da matemática é o A[0][1] do Python, porque as listas começam em 0. É a primeira fonte de erros de quem passa de uma linguagem para a outra.

Exercícios propostos

Doze exercícios sobre o conceito, os casos particulares e a igualdade. Nos que trazem contexto, a primeira coisa a fazer é dizer o que é cada linha e cada coluna.

A cor do título dá o grau de dificuldade: verde, aplicação direta · amarelo, exige uma ideia intermédia · vermelho, justificação ou generalização, ao nível do Exame.

Exercício 13§1 · ler uma matriz

Considera a matriz A = \begin{bmatrix} 2 & -1 & 0\\ 5 & 3 & -4 \end{bmatrix}.

a) Indica o tipo de A.b) Indica a_{12} e a_{23}.

Exercício 14§1 · casos particulares

Classifica cada matriz: quadrada, linha, coluna, diagonal ou identidade.

a) \begin{bmatrix} 3 & 0\\ 0 & -2 \end{bmatrix}b) \begin{bmatrix} 1 & 4 & 7 \end{bmatrix}c) \begin{bmatrix} 1 & 0\\ 0 & 1 \end{bmatrix}d) \begin{bmatrix} 2\\ -5 \end{bmatrix}

Exercício 15§1 · construir uma matriz

Escreve a matriz A = \left[a_{ij}\right], do tipo 2 \times 3, definida por a_{ij} = i + 2j.

Exercício 16§1 · igualdade

Determina x e y de modo que

\begin{bmatrix} 2 & x\\ -1 & 5 \end{bmatrix} = \begin{bmatrix} 2 & 7\\ y & 5 \end{bmatrix}.
Exercício 17§1 · matrizes em contexto

Uma pastelaria vende três produtos em duas lojas. Na loja L_{1} vendeu 40 bolos, 25 tartes e 60 pastéis; na loja L_{2}, 30 bolos, 45 tartes e 50 pastéis.

a) Organiza os dados numa matriz V, com uma linha por loja.b) Indica o significado de v_{21}.

Exercício 18§1 · matrizes em contexto

Quatro cidades — A, B, C e D — estão ligadas por estradas diretas do seguinte modo: AB, AC, BC e CD.

Constrói a matriz M, do tipo 4 \times 4, em que m_{ij} = 1 se houver estrada direta entre a cidade i e a cidade j, e m_{ij} = 0 caso contrário.

Exercício 19§1 · igualdade

Determina x e y, reais, de modo que

\begin{bmatrix} x^{2} & 3\\ 0 & y \end{bmatrix} = \begin{bmatrix} 9 & 3\\ 0 & y^{2}-6 \end{bmatrix}.
Exercício 20§1 · construir uma matriz

Escreve a matriz B = \left[b_{ij}\right], quadrada de ordem 3, definida por b_{ij} = 1 se i = j e b_{ij} = 0 caso contrário.

Que matriz é esta?

Exercício 21§1 · ler uma matriz

Uma matriz A é do tipo 3 \times 5.

a) Quantos elementos tem?b) A pode ser diagonal? Justifica.

Exercício 22§1 · construir uma matriz

Considera a matriz C = \left[c_{ij}\right], quadrada de ordem 3, definida por c_{ij} = (-1)^{i+j}.

a) Escreve C.b) Justifica que C é simétrica, isto é, que c_{ij} = c_{ji}.

Exercício 23§1 · matrizes em contexto

Uma fábrica produz dois modelos de mochila, M_{1} e M_{2}. Cada M_{1} leva 2 m de tecido, 1 fecho e 4 rebites; cada M_{2} leva 3 m de tecido, 2 fechos e 2 rebites.

a) Escreve a matriz N das necessidades, com uma linha por modelo.b) Escreve a matriz coluna Q que representa uma encomenda de 50 mochilas M_{1} e 80 M_{2}, e explica que tipo teria de ter para poder multiplicar-se por N.

Exercício 24§1 · igualdade

Sejam A = \begin{bmatrix} a+b & 2\\ 1 & a-b \end{bmatrix} e B = \begin{bmatrix} 7 & 2\\ 1 & 1 \end{bmatrix}.

Determina a e b de modo que A = B.

O tipo é «linhas \times colunas», por essa ordem. E em a_{ij} o primeiro índice é a linha.

  1. a) A tem 2 linhas e 3 colunas: é do tipo 2 \times 3.
  2. b) a_{12} é o elemento da linha 1, coluna 2: a_{12} = -1. E a_{23} = -4.A ordem dos índices não é convenção arbitrária que se possa trocar: é ela que faz o produto de matrizes funcionar, na secção 2.
RespostaTipo 2 \times 3 · a_{12} = -1 · a_{23} = -4

Uma matriz pode caber em mais do que uma classificação — a identidade é diagonal e quadrada ao mesmo tempo.

  1. a) Quadrada 2 \times 2 e diagonal: fora da diagonal principal só há zeros.
  2. b) Matriz linha, do tipo 1 \times 3.
  3. c) Quadrada, diagonal e identidade: a diagonal só tem uns.
  4. d) Matriz coluna, do tipo 2 \times 1.As matrizes coluna são as que interessam na secção 3: é assim que se escreve um ponto do plano para o poder multiplicar por uma matriz.
Respostadiagonal · linha · identidade · coluna

Percorre as posições por ordem: linha 1 com j = 1, 2, 3; depois linha 2.

  1. Linha 1 (i = 1): 1+2 = 3, 1+4 = 5, 1+6 = 7.
  2. Linha 2 (i = 2): 2+2 = 4, 2+4 = 6, 2+6 = 8.
  3. A = \begin{bmatrix} 3 & 5 & 7\\ 4 & 6 & 8 \end{bmatrix}.
Resposta\begin{bmatrix} 3 & 5 & 7\\ 4 & 6 & 8 \end{bmatrix}

Duas matrizes são iguais quando têm o mesmo tipo e os elementos coincidem posição a posição.

  1. As duas são 2 \times 2, logo pode comparar-se posição a posição.
  2. Da posição (1,2): x = 7. Da posição (2,1): y = -1.
Respostax = 7, y = -1

Uma linha por loja e uma coluna por produto. Depois lê o elemento pedido no contexto, e não como número solto.

  1. a) Com as colunas por ordem bolos, tartes, pastéis: V = \begin{bmatrix} 40 & 25 & 60\\ 30 & 45 & 50 \end{bmatrix}.
  2. b) v_{21} = 30: é o número de bolos vendidos na loja L_{2}.A matriz só tem sentido depois de se dizer o que é cada linha e o que é cada coluna. Sem essa legenda, é uma tabela de números sem significado.
RespostaV = \begin{bmatrix} 40 & 25 & 60\\ 30 & 45 & 50 \end{bmatrix} · 30 bolos em L_{2}

Uma estrada liga nos dois sentidos, o que faz a matriz simétrica. E uma cidade não tem estrada para si própria.

  1. Com as cidades por ordem A, B, C, D: M = \begin{bmatrix} 0 & 1 & 1 & 0\\ 1 & 0 & 1 & 0\\ 1 & 1 & 0 & 1\\ 0 & 0 & 1 & 0 \end{bmatrix}.
  2. A diagonal é toda de zeros, e a matriz é simétrica em relação a ela.Chamam-se matrizes de adjacência, e são a forma como um mapa, uma rede social ou um circuito entram num computador. É por aí que as matrizes deixam de ser tabelas e passam a ser ferramenta.
Resposta\begin{bmatrix} 0 & 1 & 1 & 0\\ 1 & 0 & 1 & 0\\ 1 & 1 & 0 & 1\\ 0 & 0 & 1 & 0 \end{bmatrix}

Cada posição dá uma equação. A primeira tem duas soluções; a segunda também.

  1. Posição (1,1): x^{2} = 9 \iff x = -3 \lor x = 3.
  2. Posição (2,2): y = y^{2}-6 \iff y^{2}-y-6 = 0 \iff y = -2 \lor y = 3.
  3. As restantes posições já coincidem. Há portanto quatro pares (x,\,y) possíveis.A igualdade de matrizes dá um sistema, uma equação por posição — e o número de soluções é o das combinações, não o de uma equação só.
Respostax \in \{-3,\,3\} e y \in \{-2,\,3\}

Escreve-a e compara com os casos particulares da secção.

  1. B = \begin{bmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 1 \end{bmatrix}.
  2. É a matriz identidade de ordem 3, que se representa por I_{3}.Na secção 2 vai-se ver que I faz na multiplicação de matrizes o que o 1 faz na dos números: multiplicar por ela não muda nada.
RespostaI_{3}, a matriz identidade de ordem 3

O número de elementos é o produto do tipo. E uma matriz diagonal tem de ser, antes de mais, quadrada.

  1. a) 3 \times 5 = 15 elementos.
  2. b) Não. Uma matriz diagonal é, por definição, quadrada — e 3 \neq 5.Vale a pena reparar que «ter muitos zeros» não faz uma matriz diagonal. A definição começa por exigir que seja quadrada.
Resposta15 elementos · não pode ser diagonal, por não ser quadrada

Na alínea b) não é preciso olhar para a matriz: basta reparar em que i+j e j+i são o mesmo número.

  1. a) O expoente i+j é par na diagonal e alterna à volta: C = \begin{bmatrix} 1 & -1 & 1\\ -1 & 1 & -1\\ 1 & -1 & 1 \end{bmatrix}.
  2. b) Como a adição é comutativa, i+j = j+i, logo c_{ij} = (-1)^{i+j} = (-1)^{j+i} = c_{ji}.
  3. A justificação vale para qualquer ordem, e não só para 3.Provar a partir da fórmula, e não da tabela escrita, é o que faz a demonstração valer para todas as ordens de uma vez.
RespostaC como acima; simétrica porque i+j = j+i

Na alínea b), pensa em que ordem as duas matrizes teriam de aparecer para que os «modelos» se encontrassem uns com os outros.

  1. a) Colunas por ordem tecido, fechos, rebites: N = \begin{bmatrix} 2 & 1 & 4\\ 3 & 2 & 2 \end{bmatrix}.
  2. b) A encomenda é Q = \begin{bmatrix} 50 & 80 \end{bmatrix}, uma matriz linha 1 \times 2.
  3. Para o produto QN fazer sentido, o número de colunas de Q tem de ser igual ao número de linhas de N: 2 = 2. ✓ O resultado será 1 \times 3 — o total de cada material.É a secção 2 a bater à porta: o produto só existe quando os «modelos» de uma matriz encontram os «modelos» da outra. O tipo não é burocracia, é o que garante que a conta tem significado.
RespostaN = \begin{bmatrix} 2 & 1 & 4\\ 3 & 2 & 2 \end{bmatrix} · Q = \begin{bmatrix} 50 & 80 \end{bmatrix}, do tipo 1 \times 2

Duas das quatro posições já coincidem. As outras duas dão um sistema.

  1. As posições (1,2) e (2,1) já coincidem.
  2. As outras duas dão o sistema \begin{cases} a+b = 7\\ a-b = 1 \end{cases}
  3. Somando as duas equações: 2a = 8 \iff a = 4. Substituindo, b = 3.
  4. Verificação: 4+3 = 7 ✓ e 4-3 = 1 ✓.É aqui que se vê porque é que as matrizes e os sistemas andam juntos: uma igualdade de matrizes é um sistema, escrito de outra maneira.
Respostaa = 4, b = 3
02

Operações com matrizes

Somar é fácil e faz-se posição a posição. Multiplicar é que não: a regra é estranha à primeira vista, obriga os tipos a encaixar e — ao contrário de tudo o que se conhece — depende da ordem. A secção 3 explica porquê.

Aprendizagens Essenciais
  • Operações elementares com matrizes: adição, subtração, multiplicação (multiplicação por um escalar e multiplicação de duas matrizes).
  • Analisar as propriedades da adição e da multiplicação de matrizes e os casos de impossibilidade (associados à dimensão das matrizes).

1 · Adição, subtração e produto por um escalar

Definição · adição e produto por um escalar

Sendo A e B matrizes do mesmo tipo e k \in \mathbb{R}:

\left(A+B\right)_{ij} = a_{ij} + b_{ij}, \qquad \left(kA\right)_{ij} = k\,a_{ij}.

A subtração é A - B = A + (-1)B.

O primeiro caso de impossibilidade

Somar exige o mesmo tipo. Uma matriz 2 \times 3 e uma 3 \times 2 não se somam — não há sequer posições que se correspondam.

Com esta definição, a adição herda tudo o que a adição de números tem: é comutativa, é associativa, tem elemento neutro (a matriz nula, toda de zeros) e cada matriz tem simétrica. Nada aqui surpreende.

2 · O produto de duas matrizes

Aqui a regra deixa de ser «posição a posição». Cada elemento do produto resulta de uma linha inteira da primeira matriz encontrar uma coluna inteira da segunda.

Definição · produto de matrizes

Sendo A do tipo m \times p e B do tipo p \times n, o produto AB é a matriz do tipo m \times n cujo elemento (i,j) é

\left(AB\right)_{ij} = a_{i1}b_{1j} + a_{i2}b_{2j} + \cdots + a_{ip}b_{pj}.

O produto só existe quando o número de colunas de A é igual ao número de linhas de B.

A regra dos tipos, num relance \left(m \times \underbrace{p}_{\text{tem de bater}}\right)\left(\underbrace{p}_{\text{certo}} \times n\right) = m \times n

O p do meio desaparece — é a dimensão que se soma. As duas de fora sobram e dão o tipo do resultado.

Laboratório · O produto, célula a célula

interativo

Carrega numa célula do resultado. Acende-se a linha da primeira matriz e a coluna da segunda — e aparece em baixo a soma de produtos que a produziu. Repara que a linha e a coluna têm sempre o mesmo comprimento: é o p do meio, e é por isso que ele tem de bater certo.

3 · As propriedades — e a que falta

Propriedades do produto

Associativa: (AB)C = A(BC). Distributiva em relação à adição: A(B+C) = AB + AC e (A+B)C = AC + BC. Elemento neutro: A I_{n} = I_{m} A = A, com as identidades do tipo adequado. Escalares atravessam: k(AB) = (kA)B = A(kB).

A propriedade que não existe

O produto de matrizes não é comutativo: em geral AB \neq BA. Muitas vezes uma das duas nem sequer existe — se A for 2 \times 3 e B for 3 \times 4, há AB mas não há BA. E mesmo entre quadradas da mesma ordem, os dois produtos costumam dar resultados diferentes.

Há uma segunda ausência, tão importante como a primeira: o produto de duas matrizes não nulas pode ser a matriz nula. Nos números reais isso é impossível; nas matrizes acontece. É por isso que não se «corta» uma matriz dos dois lados de uma igualdade.

Exemplo 5 Verificar o tipo antes de multiplicar

Sendo A = \begin{bmatrix} 1 & -2 & 0\\ 3 & 1 & 4 \end{bmatrix} e B = \begin{bmatrix} 2 & 1\\ 0 & -3\\ 5 & 2 \end{bmatrix}, calcula AB. Existe BA?

  1. O tipo, primeiro. A é 2 \times 3 e B é 3 \times 2: o 3 bate certo, e AB é 2 \times 2.
  2. Linha 1 de A pelas colunas de B: 1(2)+(-2)(0)+0(5) = 2, \qquad 1(1)+(-2)(-3)+0(2) = 7.
  3. Linha 2 de A: 3(2)+1(0)+4(5) = 26, \qquad 3(1)+1(-3)+4(2) = 8.
  4. AB = \begin{bmatrix} 2 & 7\\ 26 & 8 \end{bmatrix}.
  5. E BA? Seria (3 \times 2)(2 \times 3): o 2 bate certo, logo existe — e é 3 \times 3. Note-se que AB e BA nem sequer têm o mesmo tipo.Quando os dois produtos existem mas têm tipos diferentes, a não comutatividade é evidente. O caso interessante é o das matrizes quadradas, onde os dois têm o mesmo tipo e mesmo assim diferem.
RespostaAB = \begin{bmatrix} 2 & 7\\ 26 & 8 \end{bmatrix}; BA existe e é 3 \times 3
Exemplo 6 A ordem importa

Sejam A = \begin{bmatrix} 0 & 1\\ 0 & 0 \end{bmatrix} e B = \begin{bmatrix} 0 & 0\\ 1 & 0 \end{bmatrix}. Calcula AB e BA.

  1. Primeiro produto: AB = \begin{bmatrix} 0(0)+1(1) & 0(0)+1(0)\\ 0(0)+0(1) & 0(0)+0(0) \end{bmatrix} = \begin{bmatrix} 1 & 0\\ 0 & 0 \end{bmatrix}.
  2. Segundo produto: BA = \begin{bmatrix} 0(0)+0(0) & 0(1)+0(0)\\ 1(0)+0(0) & 1(1)+0(0) \end{bmatrix} = \begin{bmatrix} 0 & 0\\ 0 & 1 \end{bmatrix}.
  3. Ambos existem, ambos são 2 \times 2 — e são diferentes.Este par é o exemplo mínimo: duas matrizes com um único 1 cada uma, e os produtos caem em cantos opostos da diagonal. Guarda-o para quando precisares de um contraexemplo rápido.
RespostaAB = \begin{bmatrix} 1 & 0\\ 0 & 0 \end{bmatrix} · BA = \begin{bmatrix} 0 & 0\\ 0 & 1 \end{bmatrix}
Python O produto em cinco linhas, e o teste da comutatividade
def produto(A, B):
    if len(A[0]) != len(B):
        return None
    return [[sum(A[i][k]*B[k][j] for k in range(len(B)))
             for j in range(len(B[0]))] for i in range(len(A))]

A = [[1, 2], [0, -1]]
B = [[3, 1], [4, -2]]

print('AB =', produto(A, B))
print('BA =', produto(B, A))
print('iguais?', produto(A, B) == produto(B, A))

C = [[1, -2, 0], [3, 1, 4]]
print('AC =', produto(A, C))
print('CA =', produto(C, A))

A última linha imprime None: o produto CA não existe. Troca as matrizes e procura um par em que AB = BA — vais precisar de sorte, ou de escolher uma delas igual à identidade.

Exercícios propostos

Doze exercícios. Antes de multiplicar, escreve os tipos: metade dos erros deste tema são produtos que nem sequer existem.

Exercício 25§2 · adição e escalar

Sendo A = \begin{bmatrix} 2 & -1\\ 0 & 3 \end{bmatrix} e B = \begin{bmatrix} 1 & 4\\ -2 & 5 \end{bmatrix}, calcula A+B e A-B.

Exercício 26§2 · adição e escalar

Com A = \begin{bmatrix} 1 & 0 & -2\\ 3 & 5 & 1 \end{bmatrix}, calcula 3A e -\dfrac{1}{2}A.

Exercício 27§2 · o tipo do produto

Indica, quando existir, o tipo do produto. Se não existir, justifica.

a) A do tipo 2 \times 3 e B do tipo 3 \times 4: AB. b) A do tipo 2 \times 3 e B do tipo 2 \times 3: AB. c) A do tipo 3 \times 1 e B do tipo 1 \times 3: AB.

Exercício 28§2 · produto

Calcula AB, sendo A = \begin{bmatrix} 1 & 2\\ 0 & -1 \end{bmatrix} e B = \begin{bmatrix} 3 & 1\\ 4 & -2 \end{bmatrix}.

Exercício 29§2 · não comutatividade

Com as matrizes do exercício anterior, calcula BA e compara com AB.

Exercício 30§2 · produto

Calcula AB, sendo A = \begin{bmatrix} 2 & 0 & 1\\ -1 & 3 & 2 \end{bmatrix} e B = \begin{bmatrix} 1 & 4\\ 0 & -2\\ 3 & 1 \end{bmatrix}.

Exercício 31§2 · identidade

Sendo A = \begin{bmatrix} 4 & -3\\ 1 & 2 \end{bmatrix}, calcula A I_{2} e I_{2} A.

Exercício 32§2 · adição e escalar

Determina a matriz X, do tipo 2 \times 2, tal que

2X + \begin{bmatrix} 1 & 0\\ -3 & 4 \end{bmatrix} = \begin{bmatrix} 7 & -2\\ 1 & 10 \end{bmatrix}.
Exercício 33§2 · produto em contexto

Uma oficina monta dois modelos de bicicleta. Cada modelo M_{1} leva 2 rodas e 1 selim; cada M_{2} leva 2 rodas e 2 selins. Uma roda custa 15 € e um selim 8 €.

Escreve as matrizes adequadas e determina, por multiplicação, o custo de material de cada modelo.

Exercício 34§2 · não comutatividade

Sejam A = \begin{bmatrix} 1 & 1\\ 0 & 1 \end{bmatrix} e B = \begin{bmatrix} 1 & 0\\ 1 & 1 \end{bmatrix}.

Mostra que (A+B)^{2} \neq A^{2} + 2AB + B^{2}.

Exercício 35§2 · produto

Sejam A = \begin{bmatrix} 1 & 2\\ 2 & 4 \end{bmatrix} e B = \begin{bmatrix} 2 & -4\\ -1 & 2 \end{bmatrix}, ambas diferentes da matriz nula.

Calcula AB e comenta o resultado.

Exercício 36§2 · produto em contexto

Retoma a matriz de estradas do exercício 6 da secção 1, com as cidades A, B, C e D, e chama-lhe M.

Sabendo que o elemento (i,j) de M^{2} conta os caminhos de i para j com exatamente duas estradas, determina quantos caminhos desses há de A para D.

Posição a posição. As duas são 2 \times 2, logo a soma existe.

  1. A+B = \begin{bmatrix} 3 & 3\\ -2 & 8 \end{bmatrix}, \qquad A-B = \begin{bmatrix} 1 & -5\\ 2 & -2 \end{bmatrix}.
Resposta\begin{bmatrix} 3 & 3\\ -2 & 8 \end{bmatrix} · \begin{bmatrix} 1 & -5\\ 2 & -2 \end{bmatrix}

Multiplicar por um escalar é multiplicar todos os elementos por esse número.

  1. 3A = \begin{bmatrix} 3 & 0 & -6\\ 9 & 15 & 3 \end{bmatrix}.
  2. -\frac{1}{2}A = \begin{bmatrix} -0{,}5 & 0 & 1\\ -1{,}5 & -2{,}5 & -0{,}5 \end{bmatrix}.Todos os elementos, incluindo os zeros — que ficam zeros. É diferente do produto de matrizes, onde um zero pode desaparecer numa soma.
Resposta\begin{bmatrix} 3 & 0 & -6\\ 9 & 15 & 3 \end{bmatrix} · \begin{bmatrix} -0{,}5 & 0 & 1\\ -1{,}5 & -2{,}5 & -0{,}5 \end{bmatrix}

A regra é uma só: as colunas da primeira têm de ser tantas como as linhas da segunda. O que sobra dá o tipo do produto.

  1. a) 3 = 3 ✓. O produto existe e é do tipo 2 \times 4.
  2. b) Colunas de A: 3. Linhas de B: 2. Como 3 \neq 2, o produto não existe.
  3. c) 1 = 1 ✓. O produto existe e é do tipo 3 \times 3.Na alínea c) duas matrizes com três elementos cada uma dão uma matriz com nove. O produto não é «elemento a elemento» — nunca foi.
Resposta2 \times 4 · não existe · 3 \times 3

Cada elemento do produto é a soma dos produtos de uma linha de A por uma coluna de B.

  1. Posição (1,1): linha 1 de A por coluna 1 de B: 1 \times 3 + 2 \times 4 = 11.
  2. Posição (1,2): 1 \times 1 + 2 \times (-2) = -3.
  3. Posição (2,1): 0 \times 3 + (-1) \times 4 = -4.
  4. Posição (2,2): 0 \times 1 + (-1) \times (-2) = 2.
  5. AB = \begin{bmatrix} 11 & -3\\ -4 & 2 \end{bmatrix}.
Resposta\begin{bmatrix} 11 & -3\\ -4 & 2 \end{bmatrix}

Faz a conta toda outra vez, agora com B à esquerda. Não se pode reaproveitar nada.

  1. Posição a posição: 3 \times 1 + 1 \times 0 = 3; 3 \times 2 + 1 \times (-1) = 5; 4 \times 1 + (-2) \times 0 = 4; 4 \times 2 + (-2)\times(-1) = 10.
  2. BA = \begin{bmatrix} 3 & 5\\ 4 & 10 \end{bmatrix} \neq \begin{bmatrix} 11 & -3\\ -4 & 2 \end{bmatrix} = AB.
  3. A multiplicação de matrizes não é comutativa.Não é uma esquisitice da conta: na secção 3 vê-se o significado geométrico — rodar e depois esticar não dá o mesmo que esticar e depois rodar.
RespostaBA = \begin{bmatrix} 3 & 5\\ 4 & 10 \end{bmatrix} \neq AB

Confirma primeiro o tipo: 2 \times 3 por 3 \times 22 \times 2. Cada elemento é uma soma de três produtos.

  1. Tipo: (2 \times 3)(3 \times 2) = 2 \times 2. ✓
  2. (1,1): 2(1) + 0(0) + 1(3) = 5.   (1,2): 2(4) + 0(-2) + 1(1) = 9.
  3. (2,1): -1(1) + 3(0) + 2(3) = 5.   (2,2): -1(4) + 3(-2) + 2(1) = -8.
  4. AB = \begin{bmatrix} 5 & 9\\ 5 & -8 \end{bmatrix}.O número de parcelas de cada soma é a dimensão que desaparece — aqui, o 3. É por isso que ela tem de ser igual nas duas matrizes.
Resposta\begin{bmatrix} 5 & 9\\ 5 & -8 \end{bmatrix}

Faz as duas contas. É um dos poucos casos em que a ordem não importa.

  1. A I_{2} = \begin{bmatrix} 4 & -3\\ 1 & 2 \end{bmatrix} = A, \qquad I_{2} A = \begin{bmatrix} 4 & -3\\ 1 & 2 \end{bmatrix} = A.
  2. A identidade é elemento neutro da multiplicação, dos dois lados.É o análogo do 1 nos números — e um dos raros pares de matrizes que comutam. Na secção 3, I é a transformação que deixa tudo onde está.
RespostaA I_{2} = I_{2} A = A

Resolve como resolverias em números: passa a matriz conhecida para o outro membro e divide por 2.

  1. Isolar 2X: 2X = \begin{bmatrix} 7 & -2\\ 1 & 10 \end{bmatrix} - \begin{bmatrix} 1 & 0\\ -3 & 4 \end{bmatrix} = \begin{bmatrix} 6 & -2\\ 4 & 6 \end{bmatrix}.
  2. Multiplicar por \frac{1}{2}: X = \begin{bmatrix} 3 & -1\\ 2 & 3 \end{bmatrix}.Com a adição pode fazer-se isto, porque tem as mesmas propriedades da adição de números. Com o produto não: não há divisão de matrizes.
RespostaX = \begin{bmatrix} 3 & -1\\ 2 & 3 \end{bmatrix}

Uma matriz de necessidades (modelos \times peças) e uma matriz coluna de preços (peças \times 1). O produto dá modelos \times 1.

  1. As matrizes, com as colunas por ordem rodas, selins: N = \begin{bmatrix} 2 & 1\\ 2 & 2 \end{bmatrix}, \qquad P = \begin{bmatrix} 15\\ 8 \end{bmatrix}.
  2. O tipo encaixa: (2 \times 2)(2 \times 1) = 2 \times 1. ✓
  3. NP = \begin{bmatrix} 2(15)+1(8)\\ 2(15)+2(8) \end{bmatrix} = \begin{bmatrix} 38\\ 46 \end{bmatrix}.
  4. O modelo M_{1} custa 38 € de material e o M_{2} custa 46 €.Repara no que o produto fez: as peças desapareceram. É sempre isso — a dimensão comum às duas matrizes é a que se soma e se perde.
RespostaM_{1}: 38 € · M_{2}: 46

Desenvolve (A+B)^{2} = (A+B)(A+B) com cuidado: não se pode juntar AB com BA, porque não são iguais.

  1. O desenvolvimento correto: (A+B)^{2} = A^{2} + AB + BA + B^{2}. Só se poderia escrever 2AB se fosse AB = BA.
  2. As duas parcelas do meio: AB = \begin{bmatrix} 2 & 1\\ 1 & 1 \end{bmatrix}, \qquad BA = \begin{bmatrix} 1 & 1\\ 1 & 2 \end{bmatrix}. São diferentes.
  3. Logo A^{2}+AB+BA+B^{2} \neq A^{2}+2AB+B^{2}, e a igualdade proposta é falsa.Todos os «casos notáveis» da álgebra de números dependem da comutatividade. Nas matrizes, nenhum deles se aplica sem mais.
Resposta(A+B)^{2} = A^{2}+AB+BA+B^{2}, e AB \neq BA

Faz a conta até ao fim. O resultado é surpreendente — e diz alguma coisa importante sobre a álgebra das matrizes.

  1. (1,1): 1(2)+2(-1) = 0.   (1,2): 1(-4)+2(2) = 0.
  2. (2,1): 2(2)+4(-1) = 0.   (2,2): 2(-4)+4(2) = 0.
  3. AB = \begin{bmatrix} 0 & 0\\ 0 & 0 \end{bmatrix}.
  4. Duas matrizes não nulas cujo produto é a matriz nula.Nos números reais, ab = 0 obriga a = 0 ou b = 0. Nas matrizes, não. É por isso que não se pode «cortar» matrizes numa igualdade: de AX = AY não se conclui X = Y.
RespostaAB é a matriz nula, com A \neq 0 e B \neq 0

Não é preciso calcular M^{2} todo: basta o elemento da linha de A com a coluna de D.

  1. As linhas e colunas de que se precisa. Linha de A: \begin{bmatrix} 0 & 1 & 1 & 0 \end{bmatrix}. Coluna de D: \begin{bmatrix} 0\\ 0\\ 1\\ 0 \end{bmatrix}.
  2. O produto: 0(0) + 1(0) + 1(1) + 0(0) = 1.
  3. um caminho: A \to C \to D.A conta do produto é literalmente a contagem: cada parcela pergunta «há estrada de A para a cidade k?» vezes «há estrada de k para D?». Só sobra 1 quando as duas existem.
Resposta1 caminho, por C
03

Transformações geométricas no plano

É aqui que uma tabela de números passa a mover figuras. Toda a secção assenta numa observação só, e vale a pena guardá-la antes de continuar: as colunas de uma matriz são as imagens dos dois vetores unitários. Quem souber ler isso lê qualquer transformação sem fazer contas.

Aprendizagens Essenciais
  • Caraterizar translações através da soma de matrizes coluna.
  • Caraterizar variações de tamanho (scaling), cisalhamentos (shearing) e rotações no plano, recorrendo a matrizes adequadas multiplicadas por matrizes coluna.
  • Identificar a multiplicação de matrizes com a composição de transformações geométricas.

1 · Um ponto é uma matriz coluna

Para poder multiplicar um ponto por uma matriz, escreve-se o ponto ao alto:

P(x,\,y) \quad\longleftrightarrow\quad \begin{bmatrix} x\\ y \end{bmatrix}.

Assim, (2 \times 2)(2 \times 1) = 2 \times 1: multiplicar uma matriz quadrada de ordem 2 por um ponto dá outro ponto. É essa a conta que move as figuras.

Translação · por soma

A translação associada ao vetor \vec{u}(u_{1},\,u_{2}) faz-se por adição:

\begin{bmatrix} x\\ y \end{bmatrix} + \begin{bmatrix} u_{1}\\ u_{2} \end{bmatrix} = \begin{bmatrix} x+u_{1}\\ y+u_{2} \end{bmatrix}.

É a única das transformações desta secção que não se escreve como uma matriz 2 \times 2.

2 · A observação que explica tudo

Toma uma matriz qualquer, A = \begin{bmatrix} a & b\\ c & d \end{bmatrix}, e aplica-a aos dois vetores unitários:

A\begin{bmatrix} 1\\ 0 \end{bmatrix} = \begin{bmatrix} a\\ c \end{bmatrix}, \qquad A\begin{bmatrix} 0\\ 1 \end{bmatrix} = \begin{bmatrix} b\\ d \end{bmatrix}.
As colunas são as imagens

A primeira coluna de A é a imagem de e_{1}(1,\,0); a segunda coluna é a imagem de e_{2}(0,\,1). E, como (x,y) = x\,e_{1}+y\,e_{2}, isso chega para saber a imagem de todos os pontos.

Daqui saem as duas perguntas que resolvem qualquer exercício desta secção. Para escrever uma matriz: para onde vão o (1,0) e o (0,1)? Para ler uma matriz: que fazem estas duas colunas aos eixos?

Laboratório · A matriz a deformar o plano

interativo

Começa em identidade e mexe só no a: estica-se na horizontal, e a seta azul — a imagem de e_{1} — acompanha. Depois rodar 90° e repara nas colunas: (0,1) e (-1,0), que é para onde os eixos foram. Põe a = 1, b = 2, c = 0{,}5, d = 1 e vê a área ser multiplicada por zero: o plano inteiro colapsa numa reta.

3 · As quatro transformações que as AE pedem

TransformaçãoMatrizO que faz
Ampliação (scaling)\begin{bmatrix} k & 0\\ 0 & k \end{bmatrix}estica tudo por igual, k vezes
Ampliação em cada eixo\begin{bmatrix} k_{1} & 0\\ 0 & k_{2} \end{bmatrix}estica k_{1} na horizontal e k_{2} na vertical
Cisalhamento (shearing)\begin{bmatrix} 1 & k\\ 0 & 1 \end{bmatrix}a base fica, o topo desliza k de lado
Rotação de {\theta}\begin{bmatrix} \cos{\theta} & -\operatorname{sen}{\theta}\\ \operatorname{sen}{\theta} & \cos{\theta} \end{bmatrix}roda em torno da origem

A matriz da rotação não se decora: escreve-se. A imagem de e_{1}(1,0), rodado de {\theta}, é \left(\cos{\theta},\,\operatorname{sen}{\theta}\right) — está no círculo trigonométrico. E a de e_{2}(0,1) é \left(-\operatorname{sen}{\theta},\,\cos{\theta}\right), que é a anterior rodada de mais 90°. Postas em coluna, dão a matriz.

4 · Compor é multiplicar

Aplicar A e depois B a um ponto X é calcular B(AX). Pela associatividade, B(AX) = (BA)X: a transformação composta tem matriz BA.

Composição de transformações \text{primeiro } A,\ \text{depois } B \quad\longleftrightarrow\quad BA

A segunda transformação escreve-se à esquerda. E, como BA \neq AB, trocar a ordem dá outra transformação.

Onde é que isto se usa

Em todo o lado onde alguma coisa se mexe num ecrã. Cada personagem de um filme de animação, cada objeto de um videojogo, cada rotação de um modelo 3D é uma sequência destas matrizes multiplicadas umas pelas outras — e a placa gráfica de um computador é, no essencial, uma máquina construída para fazer estes produtos aos milhões por segundo.

Exemplo 7 Escrever a matriz a partir do efeito

Escreve a matriz da transformação que reflete o plano na bissetriz dos quadrantes ímpares, y = x.

  1. Onde vai o e_{1}(1,\,0)? Refletir na reta y = x troca as coordenadas: vai para (0,\,1).
  2. Onde vai o e_{2}(0,\,1)? Pela mesma razão, vai para (1,\,0).
  3. Em coluna: S = \begin{bmatrix} 0 & 1\\ 1 & 0 \end{bmatrix}.
  4. Confirmação, num ponto qualquer: S\begin{bmatrix} 3\\ -2 \end{bmatrix} = \begin{bmatrix} -2\\ 3 \end{bmatrix} — as coordenadas trocadas, como devia ser.Duas perguntas e um arrumar em coluna. Não houve sistema nenhum para resolver — e é assim que se escreve qualquer matriz de transformação.
Resposta\begin{bmatrix} 0 & 1\\ 1 & 0 \end{bmatrix}
Exemplo 8 A ordem das transformações

Considera a rotação de 90°, R = \begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix}, e o cisalhamento C = \begin{bmatrix} 1 & 1\\ 0 & 1 \end{bmatrix}.

Determina a imagem do ponto P(1,\,0) pelas duas composições possíveis.

  1. Primeiro R, depois C. A matriz é CR: CR = \begin{bmatrix} 1 & 1\\ 0 & 1 \end{bmatrix}\begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix} = \begin{bmatrix} 1 & -1\\ 1 & 0 \end{bmatrix}. Logo CR\begin{bmatrix} 1\\ 0 \end{bmatrix} = \begin{bmatrix} 1\\ 1 \end{bmatrix}.
  2. Primeiro C, depois R. A matriz é RC: RC = \begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix}\begin{bmatrix} 1 & 1\\ 0 & 1 \end{bmatrix} = \begin{bmatrix} 0 & -1\\ 1 & 1 \end{bmatrix}. Logo RC\begin{bmatrix} 1\\ 0 \end{bmatrix} = \begin{bmatrix} 0\\ 1 \end{bmatrix}.
  3. Duas imagens diferentes, (1,\,1) e (0,\,1), do mesmo ponto de partida.Repara em qual é a matriz de cada composição: a transformação que se aplica em segundo lugar fica à esquerda. Escrever ao contrário é o erro mais comum desta secção.
RespostaCR leva P a (1,\,1); RC leva P a (0,\,1)
Python Rodar um polígono, grau a grau
from math import cos, sin, radians

def rotacao(graus):
    t = radians(graus)
    return [[cos(t), -sin(t)], [sin(t), cos(t)]]

def aplicar(M, P):
    return [M[0][0]*P[0] + M[0][1]*P[1],
            M[1][0]*P[0] + M[1][1]*P[1]]

quadrado = [(1, 0), (1, 1), (0, 1), (0, 0)]

for graus in (0, 30, 45, 90, 180):
    R = rotacao(graus)
    imagens = [aplicar(R, P) for P in quadrado]
    print('%4d graus:' % graus,
          ' '.join('(%5.2f,%5.2f)' % (p[0], p[1]) for p in imagens))

Repara que a 90° aparecem valores como 6.12e-17 em vez de 0: é o cosseno de \frac{{\pi}}{2} calculado em vírgula flutuante. Acrescenta uma composição — roda 30° três vezes e compara com rodar 90° de uma vez.

Exercícios propostos

Doze exercícios. Em todos os que pedem para escrever uma matriz, faz as duas perguntas de sempre: para onde vai o (1,0) e para onde vai o (0,1).

Exercício 37§3 · translação

Aplica ao ponto P(3,\,-1) a translação associada ao vetor \vec{u}(2,\,5), usando matrizes coluna.

Exercício 38§3 · ampliação

Determina a imagem do ponto P(2,\,-3) pela ampliação de razão 3, isto é, pela matriz A = \begin{bmatrix} 3 & 0\\ 0 & 3 \end{bmatrix}.

Exercício 39§3 · ler a matriz

Considera a matriz A = \begin{bmatrix} 2 & 0\\ 0 & -1 \end{bmatrix}.

a) Determina a imagem de e_{1}(1,\,0).b) Determina a imagem de e_{2}(0,\,1).

Exercício 40§3 · rotação

Determina a imagem de P(4,\,1) pela rotação de 90° em torno da origem, no sentido positivo, dada por R = \begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix}.

Exercício 41§3 · escrever a matriz

Escreve a matriz da transformação do plano que duplica as abcissas e mantém as ordenadas.

Exercício 42§3 · cisalhamento

Considera o cisalhamento horizontal C = \begin{bmatrix} 1 & 2\\ 0 & 1 \end{bmatrix}.

a) Determina as imagens dos quatro vértices do quadrado de vértices (0,0), (1,0), (1,1) e (0,1). b) Que figura é a imagem do quadrado?

Exercício 43§3 · composição

Sejam R = \begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix} (rotação de 90°) e E = \begin{bmatrix} 2 & 0\\ 0 & 1 \end{bmatrix} (duplicar as abcissas).

Determina a matriz de «primeiro E, depois R» e a de «primeiro R, depois E». Compara.

Exercício 44§3 · escrever a matriz

Escreve a matriz da reflexão do plano em relação ao eixo Ox.

Exercício 45§3 · translação

Um triângulo tem vértices A(1,\,1), B(4,\,1) e C(1,\,3). Aplica-se-lhe a ampliação de razão 2 e, em seguida, a translação de vetor \vec{u}(-3,\,2).

Determina as coordenadas dos vértices da imagem.

Exercício 46§3 · escrever a matriz

Determina a matriz da rotação de 180° em torno da origem, e mostra que aplicá-la duas vezes devolve tudo ao sítio.

Exercício 47§3 · composição

Sejam R_{90} a rotação de 90° e S a reflexão no eixo Ox.

Determina S R_{90} e R_{90} S, e interpreta cada um deles como uma reflexão numa reta.

Exercício 48§3 · ler a matriz

Uma transformação do plano é dada pela matriz A = \begin{bmatrix} 3 & 6\\ 1 & 2 \end{bmatrix}.

Mostra que todos os pontos do plano são transformados em pontos de uma mesma reta, e indica uma equação dessa reta.

Escreve o ponto como matriz coluna e soma a matriz coluna do vetor.

  1. \begin{bmatrix} 3\\ -1 \end{bmatrix} + \begin{bmatrix} 2\\ 5 \end{bmatrix} = \begin{bmatrix} 5\\ 4 \end{bmatrix}.
  2. A imagem é P'(5,\,4).A translação é a única das quatro transformações desta secção que se faz por soma. Todas as outras são multiplicações — e é por isso que a translação não se escreve como matriz 2\times 2.
RespostaP'(5,\,4)

Multiplica a matriz pela matriz coluna do ponto. O ponto vai à direita.

  1. \begin{bmatrix} 3 & 0\\ 0 & 3 \end{bmatrix}\begin{bmatrix} 2\\ -3 \end{bmatrix} = \begin{bmatrix} 3(2)+0(-3)\\ 0(2)+3(-3) \end{bmatrix} = \begin{bmatrix} 6\\ -9 \end{bmatrix}.
  2. A imagem é P'(6,\,-9).
RespostaP'(6,\,-9)

Faz as duas contas — e depois compara os resultados com as colunas de A.

  1. a) A\begin{bmatrix} 1\\ 0 \end{bmatrix} = \begin{bmatrix} 2\\ 0 \end{bmatrix}: a imagem é (2,\,0).
  2. b) A\begin{bmatrix} 0\\ 1 \end{bmatrix} = \begin{bmatrix} 0\\ -1 \end{bmatrix}: a imagem é (0,\,-1).
  3. São exatamente a primeira e a segunda coluna de A.Não é coincidência deste exemplo: acontece sempre, e é a chave de toda a secção. As colunas de uma matriz são as imagens dos dois vetores unitários.
Resposta(2,\,0) e (0,\,-1), as colunas de A

Multiplica e confirma no desenho: uma rotação de 90° leva o primeiro quadrante ao segundo.

  1. \begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix}\begin{bmatrix} 4\\ 1 \end{bmatrix} = \begin{bmatrix} 0(4)+(-1)(1)\\ 1(4)+0(1) \end{bmatrix} = \begin{bmatrix} -1\\ 4 \end{bmatrix}.
  2. A imagem é P'(-1,\,4) — de facto no segundo quadrante.A regra de bolso: uma rotação de 90° troca as coordenadas e muda o sinal da primeira, (x,y) \mapsto (-y,\,x). Confere com a conta.
RespostaP'(-1,\,4)

Escreve as imagens de e_{1} e de e_{2}. Elas são as colunas da matriz.

  1. Imagem de e_{1}(1,0): a abcissa duplica, a ordenada mantém-se: (2,\,0).
  2. Imagem de e_{2}(0,1): a abcissa é 0 e continua 0; a ordenada mantém-se: (0,\,1).
  3. As colunas: A = \begin{bmatrix} 2 & 0\\ 0 & 1 \end{bmatrix}.Escrever uma matriz de transformação nunca exige resolver um sistema: basta perguntar «para onde vai o (1,0)?» e «para onde vai o (0,1)?», e arrumar as respostas em coluna.
Resposta\begin{bmatrix} 2 & 0\\ 0 & 1 \end{bmatrix}

Repara que a base do quadrado, sobre o eixo Ox, não se mexe. É o topo que desliza.

  1. a) (0,0) \mapsto (0,0); (1,0) \mapsto (1,0); (1,1) \mapsto (3,1); (0,1) \mapsto (2,1).
  2. b) A base ficou onde estava e o topo deslizou 2 para a direita: a imagem é um paralelogramo, com a mesma base e a mesma altura.
  3. Note-se que a área não mudou: 1 antes, 1 depois.Um cisalhamento é o que acontece a um baralho de cartas quando se empurra o topo de lado. Nada se estica — as coisas escorregam umas sobre as outras.
Resposta(0,0), (1,0), (3,1), (2,1); um paralelogramo de área 1

Aplicar E e depois R a um ponto X é calcular R(EX) = (RE)X. A matriz da composta é o produto, com a segunda transformação à esquerda.

  1. Primeiro E, depois R: RE = \begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix}\begin{bmatrix} 2 & 0\\ 0 & 1 \end{bmatrix} = \begin{bmatrix} 0 & -1\\ 2 & 0 \end{bmatrix}.
  2. Primeiro R, depois E: ER = \begin{bmatrix} 2 & 0\\ 0 & 1 \end{bmatrix}\begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix} = \begin{bmatrix} 0 & -2\\ 1 & 0 \end{bmatrix}.
  3. São diferentes: esticar e depois rodar não é o mesmo que rodar e depois esticar.É aqui que a não comutatividade da secção 2 deixa de ser uma esquisitice da conta e passa a ter significado: a ordem das transformações importa, e qualquer pessoa que já tenha rodado e escalado uma imagem sabe disso.
RespostaRE = \begin{bmatrix} 0 & -1\\ 2 & 0 \end{bmatrix} \neq \begin{bmatrix} 0 & -2\\ 1 & 0 \end{bmatrix} = ER

Onde vão parar o (1,0) e o (0,1) quando se reflete no eixo horizontal?

  1. Imagem de e_{1}(1,0): está sobre o eixo, não se mexe: (1,\,0).
  2. Imagem de e_{2}(0,1): passa para baixo: (0,\,-1).
  3. S = \begin{bmatrix} 1 & 0\\ 0 & -1 \end{bmatrix}.Uma reflexão vira a figura do avesso — e isso vê-se no laboratório: a área não muda, mas a orientação inverte-se.
Resposta\begin{bmatrix} 1 & 0\\ 0 & -1 \end{bmatrix}

Primeiro a multiplicação, para os três pontos; só depois a soma. A ordem é a do enunciado.

  1. Ampliação de razão 2: (2,2), (8,2), (2,6).
  2. Translação, somando (-3,\,2) a cada um: A''(-1,\,4), \qquad B''(5,\,4), \qquad C''(-1,\,8).
  3. Note-se que a translação não se pode escrever como matriz 2 \times 2: é sempre uma soma à parte.É por isso que a computação gráfica usa matrizes 3\times3 com uma linha a mais — o truque das «coordenadas homogéneas» —, que arruma a translação dentro de uma multiplicação. Está fora do que as Aprendizagens Essenciais pedem, mas é o que faz a técnica funcionar de verdade.
Resposta(-1,\,4), (5,\,4), (-1,\,8)

Onde vão parar os dois vetores unitários numa meia-volta? E depois calcula R^{2}.

  1. As imagens: e_{1}(1,0) \mapsto (-1,\,0) e e_{2}(0,1) \mapsto (0,\,-1).
  2. R = \begin{bmatrix} -1 & 0\\ 0 & -1 \end{bmatrix} = -I_{2}.
  3. Duas vezes: R^{2} = \begin{bmatrix} -1 & 0\\ 0 & -1 \end{bmatrix}\begin{bmatrix} -1 & 0\\ 0 & -1 \end{bmatrix} = \begin{bmatrix} 1 & 0\\ 0 & 1 \end{bmatrix} = I_{2}.
  4. Duas meias-voltas dão a identidade — que é a transformação que não mexe em nada.Uma rotação de 180° é o mesmo que multiplicar o plano inteiro por -1. É a única rotação que se escreve como um escalar vezes a identidade.
RespostaR = -I_{2} e R^{2} = I_{2}

Calcula os dois produtos. Depois vê para onde vão e_{1} e e_{2} em cada um — as colunas dizem-no logo.

  1. S R_{90} = \begin{bmatrix} 1 & 0\\ 0 & -1 \end{bmatrix}\begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix} = \begin{bmatrix} 0 & -1\\ -1 & 0 \end{bmatrix}.
  2. R_{90} S = \begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix}\begin{bmatrix} 1 & 0\\ 0 & -1 \end{bmatrix} = \begin{bmatrix} 0 & 1\\ 1 & 0 \end{bmatrix}.
  3. Interpretar o segundo: as colunas dizem que (1,0) \mapsto (0,1) e (0,1) \mapsto (1,0). Trocar as coordenadas é refletir na bissetriz dos quadrantes ímpares, y = x.
  4. E o primeiro: (1,0) \mapsto (0,-1) e (0,1) \mapsto (-1,0) — é a reflexão na bissetriz dos quadrantes pares, y = -x.Duas reflexões diferentes, saídas das mesmas duas transformações, só pela ordem. É o exemplo mais bonito de não comutatividade deste capítulo.
RespostaSR_{90}: reflexão em y = -x · R_{90}S: reflexão em y = x

Calcula as imagens de e_{1} e de e_{2} e compara-as. O que é que uma tem que ver com a outra?

  1. As imagens dos unitários são as colunas: (3,\,1) e (6,\,2).
  2. São colineares: (6,\,2) = 2(3,\,1). Os dois vetores têm a mesma direção.
  3. A imagem de um ponto qualquer. Como (x,y) = x\,e_{1} + y\,e_{2}, A\begin{bmatrix} x\\ y \end{bmatrix} = x\begin{bmatrix} 3\\ 1 \end{bmatrix} + y\begin{bmatrix} 6\\ 2 \end{bmatrix} = (x+2y)\begin{bmatrix} 3\\ 1 \end{bmatrix}.
  4. Toda a imagem é um múltiplo de (3,\,1): está na reta que passa na origem com essa direção, de equação y = \dfrac{x}{3}.O plano inteiro colapsa numa reta — a transformação esmaga uma dimensão. No laboratório, é o que acontece quando a área passa a ser multiplicada por zero.
RespostaTodos os pontos vão para a reta y = \frac{x}{3}
A

Aprofundamento · Matrizes no espaço

Esta secção não é avaliada no Exame. As Aprendizagens Essenciais pedem transformações geométricas no plano, e é aí que o programa acaba. Vale a pena mesmo assim: passar de duas para três dimensões não traz uma ideia nova — traz uma linha e uma coluna a mais — e é em três dimensões que estas matrizes ganham a vida que têm no cinema, nos jogos e na robótica.

Possíveis aprofundamentos (AE)
  • Referir a importância destes procedimentos com matrizes no moderno cinema de animação.
  • Incentivar o recurso à tecnologia para analisar vários exemplos e identificar a não comutatividade da multiplicação.

1 · Mais uma dimensão, a mesma ideia

Um ponto do espaço escreve-se como matriz coluna com três entradas, e uma transformação é uma matriz quadrada de ordem 3:

\begin{bmatrix} a_{11} & a_{12} & a_{13}\\ a_{21} & a_{22} & a_{23}\\ a_{31} & a_{32} & a_{33} \end{bmatrix}\begin{bmatrix} x\\ y\\ z \end{bmatrix}.
As colunas continuam a ser as imagens

A primeira coluna é a imagem de e_{1}(1,\,0,\,0), a segunda a de e_{2}(0,\,1,\,0) e a terceira a de e_{3}(0,\,0,\,1). Tudo o que a secção 3 disse continua a valer — só há mais um vetor unitário a arrumar.

Laboratório · A matriz no espaço

arrasta para rodar

Arrasta no desenho para rodar a vista — isso não muda a matriz, muda só o ponto de onde se olha. Os nove cursores são as nove entradas, arrumados como a matriz. Carrega em achatar e vê o volume ir a 0{,}25; põe a terceira linha toda a zero e vê o cubo colapsar num plano.

2 · O que muda, e o que não muda

Quase tudo se transporta do plano para o espaço sem alteração. Há uma coisa que muda, e é significativa.

O que se transporta

As colunas continuam a ser as imagens dos vetores unitários. Compor transformações continua a ser multiplicar matrizes, com a segunda à esquerda. Uma ampliação de razão k multiplica o volume por k^{3} — onde no plano era k^{2}. Um cisalhamento continua a não alterar o volume.

O que deixa de ser verdade

No plano, duas rotações comutam sempre: rodar 30° e depois 50° é o mesmo que rodar 50° e depois 30°, porque os ângulos somam-se. No espaço, cada rotação tem o seu eixo, e a ordem passa a importar. Pega num livro e roda-o 90° em dois eixos diferentes, nas duas ordens: acaba em posições diferentes.

Exemplo 9 Ler uma matriz do espaço

Descreve a transformação do espaço dada por A = \begin{bmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 0{,}5 \end{bmatrix} e determina por quanto fica multiplicado o volume de um sólido.

  1. As colunas: e_{1} \mapsto (1,0,0) e e_{2} \mapsto (0,1,0) — o plano xOy fica intacto. E e_{3} \mapsto (0,\,0,\,0{,}5).
  2. A descrição: é um achatamento na direção vertical, que reduz a metade tudo o que for altura.
  3. O volume. A base não muda e a altura fica a metade, logo o volume fica multiplicado por 0{,}5.Não é preciso saber o que é um determinante para responder: a matriz é diagonal, e numa matriz diagonal o volume multiplica-se pelo produto das entradas da diagonal — aqui 1 \times 1 \times 0{,}5.
RespostaAchatamento vertical; o volume fica multiplicado por 0{,}5
Exemplo 10 Duas rotações que não comutam

Sejam R_{z} a rotação de 90° em torno de Oz e R_{y} a rotação de 90° em torno de Oy, com

R_{z} = \begin{bmatrix} 0 & -1 & 0\\ 1 & 0 & 0\\ 0 & 0 & 1 \end{bmatrix}, \qquad R_{y} = \begin{bmatrix} 0 & 0 & 1\\ 0 & 1 & 0\\ -1 & 0 & 0 \end{bmatrix}.

Determina a imagem de e_{3}(0,\,0,\,1) pelas duas composições.

  1. Primeiro R_{z}, depois R_{y}. Ora R_{z}e_{3} = (0,0,1) — o eixo Oz é fixo para R_{z}. Depois R_{y}(0,0,1) = (1,\,0,\,0).
  2. Primeiro R_{y}, depois R_{z}. Ora R_{y}e_{3} = (1,0,0), e R_{z}(1,0,0) = (0,\,1,\,0).
  3. As imagens são (1,0,0) e (0,1,0): diferentes.Escolher e_{3} foi o que tornou a conta curta: é fixo para uma das rotações, e por isso um dos passos é imediato. Escolher bem o ponto de teste poupa metade do trabalho.
Resposta(1,\,0,\,0) e (0,\,1,\,0): as rotações não comutam
Python Rodar um cubo em dois eixos, nas duas ordens
from math import cos, sin, radians

def rot_z(g):
    t = radians(g)
    return [[cos(t), -sin(t), 0], [sin(t), cos(t), 0], [0, 0, 1]]

def rot_y(g):
    t = radians(g)
    return [[cos(t), 0, sin(t)], [0, 1, 0], [-sin(t), 0, cos(t)]]

def produto(A, B):
    return [[sum(A[i][k]*B[k][j] for k in range(3)) for j in range(3)] for i in range(3)]

def aplicar(M, P):
    return [round(sum(M[i][k]*P[k] for k in range(3)), 6) for i in range(3)]

P = [0, 0, 1]
print('primeiro z, depois y :', aplicar(produto(rot_y(90), rot_z(90)), P))
print('primeiro y, depois z :', aplicar(produto(rot_z(90), rot_y(90)), P))

Saem [1, 0, 0] e [0, 1, 0] — dois sítios diferentes. Troca os 90 por 30 e 50 e repara que a diferença se mantém: não é do ângulo escolhido, é dos eixos serem diferentes.

Exercícios propostos

Doze exercícios de aprofundamento. Nenhum sai no Exame — servem para ver que a ideia da secção 3 não depende de haver duas dimensões.

Exercício 49§A · ler a matriz

Considera A = \begin{bmatrix} 2 & 0 & 0\\ 0 & 3 & 0\\ 0 & 0 & 1 \end{bmatrix}. Determina a imagem do ponto P(1,\,2,\,4).

Exercício 50§A · escrever a matriz

Escreve a matriz da transformação do espaço que triplica todas as coordenadas.

Exercício 51§A · ler a matriz

Determina as imagens de e_{1}, e_{2} e e_{3} pela matriz B = \begin{bmatrix} 0 & -1 & 0\\ 1 & 0 & 0\\ 0 & 0 & 1 \end{bmatrix}, e diz que transformação é.

Exercício 52§A · volume

Um cubo de aresta 1 é transformado pela matriz \begin{bmatrix} 2 & 0 & 0\\ 0 & 2 & 0\\ 0 & 0 & 2 \end{bmatrix}. Determina o volume da imagem.

Exercício 53§A · escrever a matriz

Escreve a matriz da projeção do espaço sobre o plano xOy, isto é, da transformação (x,\,y,\,z) \mapsto (x,\,y,\,0).

Exercício 54§A · composição

Sejam R a rotação de 90° em torno de Oz e E a matriz que duplica só a coordenada z.

Determina ER e RE, e diz se comutam.

Exercício 55§A · ler a matriz

Determina a imagem do ponto P(1,\,1,\,1) pelo cisalhamento C = \begin{bmatrix} 1 & 0 & 2\\ 0 & 1 & 0\\ 0 & 0 & 1 \end{bmatrix}, e diz o que este cisalhamento faz.

Exercício 56§A · volume

Um cubo de aresta 1 é transformado pela matriz do exercício anterior, o cisalhamento C.

Determina o volume da imagem e justifica.

Exercício 57§A · escrever a matriz

Escreve a matriz da reflexão do espaço em relação ao plano xOy.

Exercício 58§A · composição

Sejam R_{z} a rotação de 90° em torno de Oz e R_{x} a rotação de 90° em torno de Ox, dada por \begin{bmatrix} 1 & 0 & 0\\ 0 & 0 & -1\\ 0 & 1 & 0 \end{bmatrix}.

Determina a imagem de e_{1}(1,0,0) por R_{x}R_{z} e por R_{z}R_{x}, e conclui.

Exercício 59§A · volume

Uma transformação do espaço tem matriz cujas colunas são (1,\,0,\,0), (2,\,0,\,0) e (0,\,0,\,1).

Mostra que todo o espaço é transformado em pontos de um mesmo plano.

Exercício 60§A · escrever a matriz

Escreve a matriz da rotação de um ângulo {\theta} em torno do eixo Oz.

Multiplica a matriz pela matriz coluna do ponto. A matriz é diagonal: cada coordenada é tratada à parte.

  1. \begin{bmatrix} 2 & 0 & 0\\ 0 & 3 & 0\\ 0 & 0 & 1 \end{bmatrix}\begin{bmatrix} 1\\ 2\\ 4 \end{bmatrix} = \begin{bmatrix} 2\\ 6\\ 4 \end{bmatrix}.
  2. A imagem é P'(2,\,6,\,4).Uma matriz diagonal estica cada eixo por si. Aqui: o dobro em x, o triplo em y, nada em z.
RespostaP'(2,\,6,\,4)

Onde vão parar e_{1}(1,0,0), e_{2}(0,1,0) e e_{3}(0,0,1)? As respostas são as colunas.

  1. As imagens dos três unitários são (3,0,0), (0,3,0) e (0,0,3).
  2. A = \begin{bmatrix} 3 & 0 & 0\\ 0 & 3 & 0\\ 0 & 0 & 3 \end{bmatrix} = 3 I_{3}.
Resposta3I_{3}

As colunas dão as imagens de imediato. Repara no que acontece ao eixo Oz.

  1. As colunas: e_{1} \mapsto (0,1,0), e_{2} \mapsto (-1,0,0), e_{3} \mapsto (0,0,1).
  2. O eixo Oz fica fixo e o plano xOy roda 90°: é a rotação de 90° em torno do eixo Oz.Reconhece-se o bloco 2\times2 da rotação no canto superior esquerdo, com o 1 isolado a segurar o eixo que não se mexe.
RespostaRotação de 90° em torno de Oz

Cada aresta duplica. E o volume?

  1. Cada aresta passa de 1 a 2, logo a imagem é um cubo de aresta 2.
  2. V = 2^{3} = 8.No plano a área multiplicava-se por k^{2}; no espaço o volume multiplica-se por k^{3}. É a mesma ideia, com mais uma dimensão.
Resposta8

Duas colunas ficam como estavam; a terceira anula-se.

  1. As imagens: e_{1} \mapsto (1,0,0), e_{2} \mapsto (0,1,0), e_{3} \mapsto (0,0,0).
  2. P = \begin{bmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 0 \end{bmatrix}.
  3. Todo o espaço é esmagado num plano: o volume passa a zero.É o análogo tridimensional do exercício em que o plano colapsava numa reta. Uma dimensão desaparece — e não há maneira de a recuperar.
Resposta\begin{bmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 0 \end{bmatrix}

Escreve as duas matrizes e multiplica nas duas ordens. Repara em que R não mexe no z e E não mexe no x nem no y.

  1. R = \begin{bmatrix} 0 & -1 & 0\\ 1 & 0 & 0\\ 0 & 0 & 1 \end{bmatrix}, \qquad E = \begin{bmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 2 \end{bmatrix}.
  2. ER = RE = \begin{bmatrix} 0 & -1 & 0\\ 1 & 0 & 0\\ 0 & 0 & 2 \end{bmatrix}.
  3. Comutam.Comutam porque atuam em direções separadas: uma só mexe no plano xOy, a outra só no eixo Oz. Assim que duas transformações disputarem as mesmas direções, deixam de comutar.
RespostaER = RE: comutam

Multiplica. Depois repara em qual das coordenadas entra no cálculo da primeira.

  1. C\begin{bmatrix} 1\\ 1\\ 1 \end{bmatrix} = \begin{bmatrix} 1+2\\ 1\\ 1 \end{bmatrix} = \begin{bmatrix} 3\\ 1\\ 1 \end{bmatrix}.
  2. A abcissa cresce proporcionalmente à altura: o cisalhamento empurra as camadas de cima na direção Ox, e o plano z = 0 fica no sítio.É a versão espacial do baralho de cartas empurrado de lado: quanto mais alta a carta, mais longe vai.
RespostaP'(3,\,1,\,1); empurra na direção Ox proporcionalmente a z

Um cisalhamento não estica nada — só escorrega. Pensa no que aconteceu à área no cisalhamento do plano.

  1. O cisalhamento leva o cubo a um paralelepípedo oblíquo com a mesma base e a mesma altura.
  2. Como o volume é «área da base \times altura», e nenhuma das duas mudou, V = 1.
  3. O volume não muda.O laboratório confirma: com um cisalhamento, o número do «volume fica multiplicado por» mantém-se em 1, por muito inclinado que o cubo fique.
RespostaV = 1: um cisalhamento não altera o volume

Refletir nesse plano deixa x e y como estão e troca o sinal de z.

  1. As imagens: e_{1} \mapsto (1,0,0), e_{2} \mapsto (0,1,0), e_{3} \mapsto (0,0,-1).
  2. S = \begin{bmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & -1 \end{bmatrix}.
  3. O volume não muda em valor absoluto, mas a figura vira do avesso.
Resposta\begin{bmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & -1 \end{bmatrix}

A imagem de e_{1} é sempre a primeira coluna do produto. Calcula só essa coluna, em cada ordem.

  1. Primeiro R_{z}, depois R_{x}. R_{z}e_{1} = (0,1,0), e R_{x}(0,1,0) = (0,\,0,\,1).
  2. Primeiro R_{x}, depois R_{z}. R_{x}e_{1} = (1,0,0), e R_{z}(1,0,0) = (0,\,1,\,0).
  3. As imagens são diferentes: as rotações no espaço não comutam.No plano, duas rotações comutam sempre — os ângulos somam-se. No espaço deixam de comutar, porque cada uma tem o seu eixo. Experimenta com um livro fechado: roda-o 90° nas duas ordens e compara.
Resposta(0,0,1) e (0,1,0): não comutam

Compara as três colunas. Quantas direções independentes há entre elas?

  1. As colunas: a segunda é o dobro da primeira, (2,0,0) = 2(1,0,0). Só há duas direções distintas: (1,0,0) e (0,0,1).
  2. A imagem de um ponto qualquer: A\begin{bmatrix} x\\ y\\ z \end{bmatrix} = x(1,0,0) + y(2,0,0) + z(0,0,1) = (x+2y)\,(1,0,0) + z\,(0,0,1).
  3. Toda a imagem é combinação de (1,0,0) e (0,0,1): está no plano xOz, de equação y = 0.Uma dimensão foi esmagada, e o volume passa a zero. No laboratório, é o que se vê quando o cubo fica achatado numa folha.
RespostaTodo o espaço vai para o plano y = 0

O eixo Oz não se mexe. No plano xOy é a rotação plana de sempre — encaixa-a no canto superior esquerdo.

  1. O que não se mexe: e_{3}(0,0,1) \mapsto (0,0,1), que dá a terceira coluna.
  2. No plano xOy: e_{1} \mapsto (\cos{\theta},\ \operatorname{sen}{\theta},\ 0) e e_{2} \mapsto (-\operatorname{sen}{\theta},\ \cos{\theta},\ 0).
  3. R_{z}({\theta}) = \begin{bmatrix} \cos{\theta} & -\operatorname{sen}{\theta} & 0\\ \operatorname{sen}{\theta} & \cos{\theta} & 0\\ 0 & 0 & 1 \end{bmatrix}.
  4. Com {\theta} = 90° recupera-se a matriz do exercício 3.A estrutura repete-se para os outros dois eixos: o bloco da rotação plana nas duas coordenadas que se mexem, e um 1 isolado na que fica parada.
Resposta\begin{bmatrix} \cos{\theta} & -\operatorname{sen}{\theta} & 0\\ \operatorname{sen}{\theta} & \cos{\theta} & 0\\ 0 & 0 & 1 \end{bmatrix}
A

Python e pensamento computacional

Três problemas que só existem porque a máquina existe. Não são traduções de contas para código: são perguntas que a folha de papel não sabe responder — qual é o melhor h?, como é que o algoritmo sabe que já chegou?, porque é que duas formas da mesma equação se comportam ao contrário?

Possíveis aprofundamentos (AE)
  • Utilizar a tecnologia para resolver problemas que envolvam funções exponenciais e logarítmicas, incluindo equações sem solução algébrica.
  • Explorar a utilização da programação na determinação aproximada de zeros, de extremos e de imagens por uma função inversa.

Os programas correm no Python Math Studio, a consola que já vive nesta página. Em cada bloco há o botão ▶ Correr no compilador — a consola abre com o programa escrito, basta carregar em Run Code. O botão 💬 Explicar o código troca o programa pela versão comentada linha a linha.

Nenhum destes três problemas se resolve com uma fórmula. Todos se resolvem com um algoritmo — e todos têm um caso de fronteira que o faz falhar se não for previsto. É esse caso de fronteira o verdadeiro conteúdo de cada problema.

Consola de Python

corre no navegadorprograma inserido no editor — carrega em Run Code

Como usar

  1. Num bloco de código desta página, carrega em ▶ Correr no compilador — a consola abre-se com o programa já escrito.
  2. Carrega em Run Code e lê a saída.
  3. Muda os valores e volta a correr — é assim que se explora.
já vem carregado
from math import * · log, exp, e
numpy · malhas e vetores
sympy · contas exatas
matplotlib · gráficos

Corre tudo dentro do teu navegador: nada sai do computador, e funciona sem ligação à Internet.

A máquina confirma resultados; nos itens de construção o exame exige a resolução analítica justificada.

1 · O melhor h não é o mais pequeno

DecomposiçãoReconhecimento de padrõesErros de vírgula flutuante

Enquadramento

A derivada é um limite: f'(a) = \lim_{h \to 0} \dfrac{f(a+h) - f(a)}{h}. Um computador não sabe fazer limites — sabe fazer contas com um h pequeno mas fixo. Duas escolhas naturais:

\underbrace{\dfrac{f(a+h) - f(a)}{h}}_{\text{razão incremental à direita}} \qquad\text{e}\qquad \underbrace{\dfrac{f(a+h) - f(a-h)}{2h}}_{\text{diferença centrada}}.

A segunda é a média das razões incrementais dos dois lados, e os erros dos dois lados cancelam-se em parte. Por isso é a que se usa.

O desafio. Diminuir h aproxima a razão incremental do limite — mas cada subtração f(a+h) - f(a-h) subtrai dois números quase iguais, e o computador guarda-os com cerca de 16 algarismos. Quando h é minúsculo, quase todos esses algarismos cancelam-se e sobra ruído. Há portanto dois erros a puxar em sentidos contrários e um h ótimo algures no meio. Descobre-o por medição, não por adivinhação: usa f(x) = \dfrac{\ln x}{x}, cuja derivada sabes calcular — f'(x) = \dfrac{1 - \ln x}{x^{2}}, logo f'(1) = 1 — e mede o erro para h = 10^{-1}, 10^{-2}, \ldots, 10^{-14}.

from math import log

def f(x):
    return log(x) / x

def D(f, x, h):                       # diferenca centrada
    return (f(x + h) - f(x - h)) / (2*h)

# f'(x) = (1 - ln x) / x**2  ->  f'(1) = 1.  Qual e' o melhor h?
print(' h        D(f,1,h)            erro')
for k in range(1, 15):
    h = 10.0**(-k)
    d = D(f, 1, h)
    print('1e-%-2d  %18.14f   %.3e' % (k, d, abs(d - 1)))

O erro desce, atinge um mínimo por volta de h \approx 10^{-5} ou 10^{-6} — e depois volta a subir. Em h = 10^{-14} já quase não há algarismos corretos. Este gráfico em V é uma das primeiras coisas que se aprende em cálculo numérico.

Segunda parte. Com o h escolhido, encontra os extremos de f em [0{,}5,\; 8] sem usar a expressão da derivada — só valores de f. O algoritmo é a versão computacional do quadro de sinais: varrer a malha à procura de uma troca de sinal da derivada aproximada, e depois apertar cada troca por bisseção.

from math import log, e

H   = 1e-6            # o h que ganhou a corrida acima
EPS = 1e-12           # criterio de paragem da bissecao

def f(x):
    return log(x) / x

def D(x):
    return (f(x + H) - f(x - H)) / (2*H)

def varre(a, b, n):
    """Percorre a malha e devolve os intervalos onde D muda de sinal."""
    passo = (b - a) / n
    trocas = []
    x0, d0 = a, D(a)
    for i in range(1, n + 1):
        x1 = a + i * passo
        d1 = D(x1)
        if (d0 < 0) != (d1 < 0):        # mudou de sinal: ha' extremo entre os dois
            trocas.append((x0, x1, d0))
        x0, d0 = x1, d1
    return trocas

def aperta(x0, x1, d0):
    """Bissecao sobre a derivada. Termina sempre: o intervalo e' sempre metade."""
    while x1 - x0 > EPS * (1 + abs(x0)):
        m = (x0 + x1) / 2
        dm = D(m)
        if dm == 0:
            return m
        if (dm < 0) == (d0 < 0):
            x0, d0 = m, dm
        else:
            x1 = m
    return (x0 + x1) / 2

for (x0, x1, d0) in varre(0.5, 8, 300):
    c = aperta(x0, x1, d0)
    tipo = 'maximo' if d0 > 0 else 'minimo'
    print('%s relativo em x = %.12f   f(x) = %.12f' % (tipo, c, f(c)))

print('exato:              e = %.12f   1/e  = %.12f' % (e, 1/e))

O programa devolve x = 2{,}718281828\ldots — o número e — com f(e) = 1/e. Confere com a conta à mão: f'(x) = 0 \iff 1 - \ln x = 0 \iff x = e. A máquina não sabia disso; chegou lá só com subtrações e divisões.

Casos de fronteira. (i) O teste (d0 < 0) != (d1 < 0) em vez de d0 * d1 < 0 — o produto dá 0 quando um dos valores é exatamente zero, e um extremo seria perdido. (ii) O critério de paragem é relativo, eps * (1 + abs(x)) — um critério absoluto como x1 - x0 > 1e-12 nunca terminaria para valores da ordem de 10^{6}. (iii) A bisseção termina sempre: o intervalo é exatamente metade em cada passo. Já while dm != 0 podia não terminar nunca.

Análise Cinco perguntas críticas
  1. O varrimento avalia f em 2n pontos: é O(n). A bisseção divide o intervalo ao meio de cada vez, logo faz O(\log_{2}(1/\varepsilon)) passos. Qual das duas partes domina o tempo total quando \varepsilon = 10^{-12} e n = 300?
  2. Se aumentares n para 3000, que erro deixas de cometer? E que erro não desaparece por mais que aumentes n?
  3. O que acontece se a malha for grosseira e f tiver dois extremos muito próximos dentro do mesmo intervalo da malha? O algoritmo dá erro, ou dá uma resposta errada em silêncio? Qual dos dois é pior?
  4. Experimenta H = 10^{-14} na segunda parte. Quantos extremos falsos aparecem? Explica-os com o gráfico em V da primeira parte.
  5. Numa função com um patamar — f quase constante num intervalo — a derivada aproximada oscila em torno de zero por puro ruído. Que teste acrescentarias para não declarar um extremo em cada oscilação?

2 · Inverter uma função que não se sabe inverter

AbstraçãoOtimização algorítmicaDerivada nulaSeparação de ramos

Enquadramento

Uma função estritamente monótona num intervalo é injetiva, logo tem inversa (secção 5). Calcular f^{-1}(y) é resolver f(x) = y, ou seja, achar o zero de F(x) = f(x) - y.

O método de Newton sai diretamente da secção R2. A tangente ao gráfico de F no ponto de abcissa x_n é y = F'(x_n)(x - x_n) + F(x_n). Onde é que essa recta corta Ox? Fazendo y = 0:

x_{n+1} = x_n - \dfrac{F(x_n)}{F'(x_n)} = x_n - \dfrac{f(x_n) - y}{f'(x_n)}.

Newton é isto e mais nada: trocar a curva pela sua tangente e ir onde a tangente vai.

O desafio. Inverter y = x\,e^{x}. Pela regra do produto, f'(x) = (1+x)e^{x}, que se anula em x = -1: a função não é injetiva em \mathbb{R}. O quadro de sinais dá

x-\infty-1+\infty
Sinal de f'0+
Variação de f-1/emín

Logo, para -1/e < y < 0duas soluções — uma em cada ramo. Antes de inverter é preciso escolher o ramo. E há um segundo perigo: exatamente em x = -1 a derivada é nula e a tangente é horizontal — nunca corta Ox. Newton, sozinho, atira o ponto para o infinito. A solução é Newton com rede: manter sempre um intervalo [a,b] com mudança de sinal e, sempre que Newton propuser um ponto fora dele (ou a derivada for nula), dar um passo de bisseção.

from math import exp, e

def f(x):                       # queremos inverter  y = x e^x
    return x * exp(x)

def df(x):                      # regra do produto
    return (1 + x) * exp(x)

def newton_seguro(y, a, b, eps=1e-14, maxit=80):
    """Resolve f(x) = y em [a, b]. Newton quando pode, bissecao quando deve."""
    fa = f(a) - y
    fb = f(b) - y
    if (fa < 0) == (fb < 0):
        raise ValueError('sem mudanca de sinal em [%g, %g]' % (a, b))
    x = a
    nn = nb = 0                                  # quantos passos de cada tipo
    for n in range(1, maxit + 1):
        d = df(x)
        xn = None
        if d != 0:                               # derivada nula: Newton nao serve
            cand = x - (f(x) - y) / d
            if a < cand < b:                     # saiu do intervalo: nao serve
                xn = cand
        if xn is None:
            xn = (a + b) / 2                     # rede de seguranca
            nb += 1
        else:
            nn += 1
        fn = f(xn) - y
        if (fn < 0) == (fa < 0):                 # aperta o intervalo
            a, fa = xn, fn
        else:
            b = xn
        if abs(xn - x) <= eps * (1 + abs(xn)):
            return xn, nn, nb
        x = xn
    return x, nn, nb

y = -0.2                        # -1/e < y < 0: DOIS ramos
print('minimo de f em x = -1,  f(-1) = -1/e = %.12f' % (-1/e))
for nome, a, b in (('direito', -1 + 1e-9, 20), ('esquerdo', -10, -1 - 1e-9)):
    x, nn, nb = newton_seguro(y, a, b)
    print('ramo %-9s x = %.12f   f(x) = %.12f   Newton: %d   bissecao: %d'
          % (nome, x, f(x), nn, nb))

Para y = -0{,}2 obtêm-se x \approx -0{,}2592 e x \approx -2{,}5426 — duas imagens inversas do mesmo y, uma por ramo. Repara na contagem dos dois tipos de passo. No ramo direito são 19 de Newton e apenas 1 de bisseção: a partir de x = 9{,}5 a tangente faz o ponto descer cerca de uma unidade de cada vez — Newton só fica rápido quando já está perto. No ramo esquerdo é 6 e 6: ali x e^{x} é quase plano, a tangente é quase horizontal e atira o ponto para fora do intervalo — sem a rede de bisseção, o algoritmo fugia.

Análise Cinco perguntas críticas
  1. A bisseção ganha um bit de precisão por iteração: O(\log_{2}(1/\varepsilon)), cerca de 50 passos para 10^{-15}. Newton duplica o número de algarismos corretos de cada vez. Conta as iterações dos dois no mesmo problema e confirma a diferença.
  2. Porque é que o programa começa em -1 + 10^{-9} e não em -1? O que imprime df(-1)?
  3. Retira a rede de segurança (fica só Newton, sem bisseção) e arranca em x_0 = -0{,}999. Para onde vai o primeiro iterado? E porque é que o contador nb é tão alto no ramo esquerdo?
  4. O critério de paragem compara |x_{n+1} - x_n|, não |f(x_n) - y|. Dá um exemplo de função em que estes dois critérios discordam — um diz «cheguei» e o outro não.
  5. Este problema tem nome: a inversa de x e^{x} chama-se função W de Lambert, e os seus dois ramos são exatamente os dois que separaste. Onde é que a escolha do ramo tem de ser feita por quem escreve o programa, e não pelo programa?

3 · A mesma equação, duas escritas, dois destinos

Reconhecimento de padrõesConvergênciaOtimização algorítmicaCiclos infinitos

Enquadramento

A equação e^{-x} = x não se resolve com as regras da secção 3: não há como pôr o x de um lado só. Mas pode escrever-se como x = g(x) e iterar x_{n+1} = g(x_n) — o método do ponto fixo. Há duas escritas óbvias:

x = e^{-x} \qquad\text{ou}\qquad -x = \ln x \;\Longleftrightarrow\; x = -\ln x.

São algebricamente equivalentes. Numericamente, comportam-se ao contrário uma da outra.

O desafio. Se x^{*} é o ponto fixo, então perto dele a tangente descreve bem g e g(x_n) - g(x^{*}) \approx g'(x^{*})\,(x_n - x^{*}). Ou seja, o erro é multiplicado por |g'(x^{*})| em cada passo: menor do que 1 encolhe, maior do que 1 cresce. Aqui x^{*} \approx 0{,}567, e

|g_1'(x^{*})| = e^{-x^{*}} \approx 0{,}567 < 1, \qquad |g_2'(x^{*})| = \dfrac{1}{x^{*}} \approx 1{,}76 > 1.

Uma converge, a outra foge. Escreve um iterador que sobreviva às duas: tem de detetar a divergência (o valor explode, ou sai do domínio do logaritmo) e tem de ter um travão de iterações — sem ele, o segundo caso nunca termina.

from math import exp, log

# Equacao:  e^(-x) = x.  Nao se resolve com as regras da seccao 3.
def g1(x): return exp(-x)         # x = e^(-x)   ->  g1'(x) = -e^(-x)
def g2(x): return -log(x)         # x = -ln x    ->  g2'(x) = -1/x

def ponto_fixo(g, x0, eps=1e-13, maxit=300):
    """Iteracao x <- g(x). Devolve (raiz, iteracoes) ou (None, iteracoes)."""
    x = x0
    for n in range(1, maxit + 1):
        try:
            xn = g(x)
        except (ValueError, OverflowError):
            return None, n                       # saiu do dominio: divergiu
        if abs(xn) > 1e12:
            return None, n                       # explodiu: divergiu
        if abs(xn - x) <= eps * (1 + abs(xn)):
            return xn, n
        x = xn
    return None, maxit                           # nao convergiu a tempo

def newton(x0, eps=1e-13, maxit=300):
    x = x0
    for n in range(1, maxit + 1):
        fx = x - exp(-x)
        d  = 1 + exp(-x)                         # f'(x) = 1 + e^(-x) > 0 sempre
        xn = x - fx / d
        if abs(xn - x) <= eps * (1 + abs(xn)):
            return xn, n
        x = xn
    return None, maxit

r1, n1 = ponto_fixo(g1, 0.5)
r2, n2 = ponto_fixo(g2, 0.5)
r3, n3 = newton(0.5)
print('x = e^(-x)  ->', r1, 'em', n1, 'iteracoes')
print('x = -ln x   ->', r2, 'em', n2, 'iteracoes')
print('Newton      ->', r3, 'em', n3, 'iteracoes')

# Porque? Porque o erro e' multiplicado por |g'(x*)| em cada passo.
x = r3
print('|g1\'(x*)| =', abs(-exp(-x)), ' < 1  -> converge')
print('|g2\'(x*)| =', abs(-1/x),     ' > 1  -> diverge')

A primeira escrita chega a 0{,}5671432904\ldots ao fim de umas dezenas de iterações; a segunda devolve None; Newton chega ao mesmo valor em quatro ou cinco. A diferença não está na equação — está na forma como a escrevemos.

Convergência linear e convergência quadrática. No ponto fixo o erro fica multiplicado por 0{,}567 por passo: para ganhar um algarismo decimal são precisos cerca de 4 passos, e para 12 algarismos cerca de 48. Em Newton o erro passa a ser aproximadamente proporcional ao quadrado do erro anterior: 10^{-2} \to 10^{-4} \to 10^{-8} \to 10^{-16}. É a diferença entre O(\log(1/\varepsilon)) e O(\log\log(1/\varepsilon)) iterações.

Análise Cinco perguntas críticas
  1. Imprime |x_{n+1} - x^{*}| em cada passo da primeira iteração e calcula o quociente entre erros consecutivos. Aproxima-se de 0{,}567? Porquê?
  2. Faz o mesmo com Newton. O quociente |e_{n+1}|/|e_n|^{2} estabiliza — em que valor?
  3. A segunda escrita diverge a partir de x_0 = 0{,}5. Existe algum x_0 a partir do qual ela convirja? (Cuidado: o ponto fixo é o mesmo. O que muda?)
  4. O travão maxit é o que separa um programa de um bloqueio. Que outra condição de paragem acrescentarias para detetar cedo que a sucessão está a afastar-se, em vez de esperar pelas 300 iterações?
  5. Aceleração de Aitken. Com três iterados consecutivos, \tilde{x} = x_0 - \dfrac{(x_1 - x_0)^{2}}{x_2 - 2x_1 + x_0} costuma estar muito mais perto de x^{*} do que x_2. Implementa-o sobre a primeira iteração e conta quantas iterações poupas. Que caso de fronteira tens de tratar no denominador?
04

Teste rápido

Dez questões de resposta imediata, com correção e explicação. Serve para verificares se podes avançar — ou se convém voltar atrás.

Pergunta 1 de 10
0 / 0
05

Formulário essencial e referências

Tudo o que este capítulo usa, numa página. As duas caixas do fim — a que diz o que não vale e a lista de verificação — são as que evitam mais erros.

Matriz e tipo

Uma matriz do tipo m \times n tem m linhas e n colunas. O elemento a_{ij} está na linha i e na coluna j.

Casos particulares

Quadrada de ordem n: m = n. Linha: 1 \times n.   Coluna: m \times 1. Diagonal: quadrada, com zeros fora da diagonal principal. Identidade I_{n}: diagonal, com 1 em toda a diagonal.

Igualdade

A = B quando têm o mesmo tipo e a_{ij} = b_{ij} para todo o i e j. Uma igualdade de matrizes é um sistema, com uma equação por posição.

Adição e escalar

\left(A+B\right)_{ij} = a_{ij}+b_{ij}, \qquad \left(kA\right)_{ij} = k\,a_{ij}

Exigem o mesmo tipo. A adição é comutativa e associativa, tem elemento neutro (matriz nula) e simétrico.

Produto

\left(AB\right)_{ij} = a_{i1}b_{1j} + \cdots + a_{ip}b_{pj} \left(m \times p\right)\left(p \times n\right) = m \times n

Só existe quando as colunas da primeira são tantas como as linhas da segunda.

Propriedades do produto

(AB)C = A(BC) A(B+C) = AB+AC A I_{n} = I_{m} A = A k(AB) = (kA)B = A(kB)

O que não vale

AB \neq BA, em geral — e às vezes BA nem existe. AB = 0 não obriga A = 0 nem B = 0. De AX = AY não se conclui X = Y. (A+B)^{2} = A^{2}+AB+BA+B^{2}, e não A^{2}+2AB+B^{2}.

Transformações do plano

Translação, por soma:

\begin{bmatrix} x\\ y \end{bmatrix} + \begin{bmatrix} u_{1}\\ u_{2} \end{bmatrix}

As colunas são as imagens de e_{1}(1,0) e e_{2}(0,1).

\text{ampliação: } \begin{bmatrix} k_{1} & 0\\ 0 & k_{2} \end{bmatrix} \text{cisalhamento: } \begin{bmatrix} 1 & k\\ 0 & 1 \end{bmatrix} \text{rotação de } {\theta}: \begin{bmatrix} \cos{\theta} & -\operatorname{sen}{\theta}\\ \operatorname{sen}{\theta} & \cos{\theta} \end{bmatrix}

Composição

\text{primeiro } A,\ \text{depois } B \ \longleftrightarrow\ BA

A segunda transformação fica à esquerda.

Antes de dar uma resolução por fechada

escreve os tipos antes de multiplicar — metade dos erros são produtos que não existem; o resultado de (m \times p)(p \times n) é m \times n: confirma o tipo do que obtiveste; nunca troques a ordem de um produto para «simplificar»; numa composição, a transformação aplicada em segundo lugar escreve-se à esquerda; para escrever uma matriz de transformação, pergunta só para onde vai o (1,0) e para onde vai o (0,1); a translação não é uma matriz 2\times2: é uma soma, e faz-se à parte.

Referências

Aprendizagens Essenciais · Matemática A · 12.º ano (2023), tema opcional «Matrizes». Arthur Cayley, A Memoir on the Theory of Matrices (1858) — onde as matrizes deixaram de ser tabelas e passaram a ter álgebra própria. James Joseph Sylvester — a quem se deve o nome matriz, em 1850.

06

Exercícios globais

Os temas opcionais nunca foram avaliados em Exame Nacional — não há, por isso, itens de exame para este capítulo. O que se segue são exercícios originais, escritos no formato e no grau de exigência de um item, arrumados por tema. Cada um traz sugestão e resolução passo a passo.

Exercícios globais · Conceito e operações

Cinco exercícios sobre tipos, operações e casos de impossibilidade. Antes de multiplicar, escreve os tipos.

Exercício 1 construçãoExercício global · operações

Sejam A = \begin{bmatrix} 1 & -2\\ 3 & 0 \end{bmatrix} e B = \begin{bmatrix} 4 & 1\\ -1 & 2 \end{bmatrix}.

a) Calcula 2A - B.b) Calcula AB e BA.

Exercício 2 escolha múltiplaExercício global · tipos

Sejam A do tipo 3 \times 2, B do tipo 2 \times 5 e C do tipo 5 \times 3.

Qual dos produtos seguintes não existe?

  • (A)AB
  • (B)BC
  • (C)CA
  • (D)AC
Exercício 3 construçãoExercício global · equação matricial

Determina a matriz X, do tipo 2 \times 2, tal que

3X - \begin{bmatrix} 2 & 1\\ 0 & -4 \end{bmatrix} = \begin{bmatrix} 4 & 7\\ 9 & 2 \end{bmatrix}.
Exercício 4 construçãoExercício global · contexto

Uma empresa tem duas fábricas, F_{1} e F_{2}, que produzem três artigos. A produção diária, em unidades, é

P = \begin{bmatrix} 120 & 80 & 200\\ 150 & 60 & 180 \end{bmatrix},

com as colunas por ordem A_{1}, A_{2}, A_{3}. Os lucros por unidade são 2 €, 5 € e 1 €, respetivamente.

Determina, por multiplicação de matrizes, o lucro diário de cada fábrica.

Exercício 5 construçãoExercício global · potências

Seja A = \begin{bmatrix} 1 & 1\\ 0 & 1 \end{bmatrix}.

a) Calcula A^{2} e A^{3}.b) Conjetura uma expressão para A^{n}, com n \in \mathbb{N}, e verifica-a para n = 4.

Na alínea a), posição a posição. Na b), duas contas independentes — não se reaproveita nada.

  1. a) 2A = \begin{bmatrix} 2 & -4\\ 6 & 0 \end{bmatrix}, logo 2A-B = \begin{bmatrix} -2 & -5\\ 7 & -2 \end{bmatrix}.
  2. b) AB = \begin{bmatrix} 6 & -3\\ 12 & 3 \end{bmatrix}, \qquad BA = \begin{bmatrix} 7 & -8\\ 5 & 2 \end{bmatrix}.
  3. São diferentes, como era de esperar.Confirma sempre o tipo do resultado: (2\times2)(2\times2) = 2\times2. Um resultado com outro tipo é sinal de erro na conta.
Resposta\begin{bmatrix} -2 & -5\\ 7 & -2 \end{bmatrix} · AB \neq BA

Em cada um, compara as colunas da primeira com as linhas da segunda.

  1. (A) (3\times 2)(2\times 5): 2 = 2 ✓, dá 3\times5.
  2. (B) (2\times 5)(5\times 3): 5 = 5 ✓, dá 2\times3.
  3. (C) (5\times 3)(3\times 2): 3 = 3 ✓, dá 5\times2.
  4. (D) (3\times 2)(5\times 3): 2 \neq 5 ✗. Não existe.Repara que A, B e C encadeiam em ciclo — AB, BC e CA existem todos —, mas saltar um elo parte a cadeia.
RespostaOpção (D)

Isola 3X e depois multiplica por \frac{1}{3}. Com a adição, isto é legítimo.

  1. 3X = \begin{bmatrix} 4 & 7\\ 9 & 2 \end{bmatrix} + \begin{bmatrix} 2 & 1\\ 0 & -4 \end{bmatrix} = \begin{bmatrix} 6 & 8\\ 9 & -2 \end{bmatrix}.
  2. X = \begin{bmatrix} 2 & \frac{8}{3}\\ 3 & -\frac{2}{3} \end{bmatrix}.Só se pode resolver assim porque a operação envolvida é a adição. Numa equação com produto de matrizes não há divisão que se aplique.
Resposta\begin{bmatrix} 2 & \frac{8}{3}\\ 3 & -\frac{2}{3} \end{bmatrix}

Os lucros vão numa matriz coluna, para o produto P \times L fazer sentido.

  1. A matriz dos lucros: L = \begin{bmatrix} 2\\ 5\\ 1 \end{bmatrix}, do tipo 3\times1.
  2. O tipo encaixa: (2\times3)(3\times1) = 2\times1. ✓
  3. PL = \begin{bmatrix} 120(2)+80(5)+200(1)\\ 150(2)+60(5)+180(1) \end{bmatrix} = \begin{bmatrix} 840\\ 780 \end{bmatrix}.
  4. A fábrica F_{1} lucra 840 € por dia e a F_{2} lucra 780 €.Os artigos desapareceram no produto — é sempre a dimensão comum que se soma e se perde. Se o resultado ainda tivesse três colunas, a conta estava errada.
RespostaF_{1}: 840 € · F_{2}: 780

Calcula as duas primeiras potências e olha para a posição (1,2).

  1. a) A^{2} = \begin{bmatrix} 1 & 2\\ 0 & 1 \end{bmatrix}, \qquad A^{3} = \begin{bmatrix} 1 & 3\\ 0 & 1 \end{bmatrix}.
  2. b) A conjetura: A^{n} = \begin{bmatrix} 1 & n\\ 0 & 1 \end{bmatrix}.
  3. Verificação para n = 4: A^{4} = A^{3}A = \begin{bmatrix} 1 & 4\\ 0 & 1 \end{bmatrix}. ✓Geometricamente, A é um cisalhamento de 1; aplicá-lo n vezes é um cisalhamento de n. O padrão não é coincidência da conta — é o que a transformação faz.
RespostaA^{n} = \begin{bmatrix} 1 & n\\ 0 & 1 \end{bmatrix}

Exercícios globais · Transformações do plano

Cinco exercícios de transformações. Em todos, a pergunta útil é a mesma: para onde vão o (1,0) e o (0,1)?

Exercício 6 construçãoExercício global · escrever a matriz

Escreve a matriz de cada transformação do plano.

a) A que triplica as ordenadas e mantém as abcissas.b) A rotação de 270° em torno da origem, no sentido positivo.

Exercício 7 escolha múltiplaExercício global · ler a matriz

Uma transformação do plano tem matriz A = \begin{bmatrix} 0 & 1\\ -1 & 0 \end{bmatrix}.

Qual é a imagem do ponto P(2,\,3)?

  • (A)(3,\,-2)
  • (B)(-3,\,2)
  • (C)(2,\,-3)
  • (D)(-2,\,3)
Exercício 8 construçãoExercício global · composição

Considera a ampliação E = \begin{bmatrix} 3 & 0\\ 0 & 3 \end{bmatrix} e o cisalhamento C = \begin{bmatrix} 1 & 2\\ 0 & 1 \end{bmatrix}.

a) Determina a matriz de «primeiro C, depois E».b) Mostra que, neste caso, a ordem não altera o resultado, e explica porquê.

Exercício 9 construçãoExercício global · figura transformada

Um triângulo tem vértices A(0,\,0), B(2,\,0) e C(0,\,1).

Aplica-se-lhe primeiro a reflexão no eixo Ox e depois a rotação de 90° em torno da origem.

a) Determina a matriz da composição.b) Determina os vértices da imagem.

Exercício 10 construçãoExercício global · área

Um quadrado de área 1 é transformado pela matriz A = \begin{bmatrix} 3 & 1\\ 0 & 2 \end{bmatrix}.

Determina a área da imagem, usando as imagens de e_{1} e e_{2}.

Em cada uma, pergunta para onde vão e_{1}(1,0) e e_{2}(0,1). As respostas são as colunas.

  1. a) e_{1} \mapsto (1,0) e e_{2} \mapsto (0,3): \begin{bmatrix} 1 & 0\\ 0 & 3 \end{bmatrix}.
  2. b) Rodar 270° no sentido positivo é o mesmo que rodar 90° no sentido negativo: e_{1} \mapsto (0,-1) e e_{2} \mapsto (1,0). \begin{bmatrix} 0 & 1\\ -1 & 0 \end{bmatrix}.
  3. Confere pela fórmula geral: com {\theta} = 270°, \cos{\theta} = 0 e \operatorname{sen}{\theta} = -1. ✓Reduzir 270° a -90° poupa a conta com os valores trigonométricos — mas vale sempre a pena confirmar com a fórmula.
Resposta\begin{bmatrix} 1 & 0\\ 0 & 3 \end{bmatrix} · \begin{bmatrix} 0 & 1\\ -1 & 0 \end{bmatrix}

Multiplica a matriz pela coluna \begin{bmatrix} 2\\ 3 \end{bmatrix}.

  1. \begin{bmatrix} 0 & 1\\ -1 & 0 \end{bmatrix}\begin{bmatrix} 2\\ 3 \end{bmatrix} = \begin{bmatrix} 0(2)+1(3)\\ -1(2)+0(3) \end{bmatrix} = \begin{bmatrix} 3\\ -2 \end{bmatrix}.
  2. É uma rotação de -90°, e de facto leva o primeiro quadrante ao quarto.As opções (C) e (D) são as reflexões nos eixos — os erros que aparecem quando se trocam as posições da matriz.
RespostaOpção (A)

Calcula os dois produtos. Repara em que E é um múltiplo da identidade.

  1. a) EC = \begin{bmatrix} 3 & 0\\ 0 & 3 \end{bmatrix}\begin{bmatrix} 1 & 2\\ 0 & 1 \end{bmatrix} = \begin{bmatrix} 3 & 6\\ 0 & 3 \end{bmatrix}.
  2. b) CE = \begin{bmatrix} 1 & 2\\ 0 & 1 \end{bmatrix}\begin{bmatrix} 3 & 0\\ 0 & 3 \end{bmatrix} = \begin{bmatrix} 3 & 6\\ 0 & 3 \end{bmatrix} = EC.
  3. Porquê. Como E = 3I_{2}, multiplicar por E é multiplicar por um escalar — e os escalares atravessam qualquer produto: (3I)C = 3C = C(3I).É a exceção que confirma a regra: os únicos casos fáceis de comutatividade são a identidade e os seus múltiplos. Uma ampliação uniforme não «disputa» direção nenhuma com a outra transformação.
RespostaEC = CE = \begin{bmatrix} 3 & 6\\ 0 & 3 \end{bmatrix}, porque E = 3I_{2}

A segunda transformação fica à esquerda no produto. Depois aplica a matriz composta aos três vértices.

  1. As matrizes: S = \begin{bmatrix} 1 & 0\\ 0 & -1 \end{bmatrix} e R = \begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix}.
  2. a) Primeiro S, depois R, logo a matriz é RS: RS = \begin{bmatrix} 0 & -1\\ 1 & 0 \end{bmatrix}\begin{bmatrix} 1 & 0\\ 0 & -1 \end{bmatrix} = \begin{bmatrix} 0 & 1\\ 1 & 0 \end{bmatrix}.
  3. b) A matriz troca as coordenadas: A'(0,0), B'(0,\,2), C'(1,\,0).
  4. A composta é, afinal, a reflexão na bissetriz dos quadrantes ímpares.Duas transformações que invertem a orientação — uma reflexão e… não: a rotação conserva-a. Uma reflexão seguida de rotação inverte, e o resultado é outra reflexão.
RespostaRS = \begin{bmatrix} 0 & 1\\ 1 & 0 \end{bmatrix} · (0,0), (0,2), (1,0)

A imagem do quadrado unitário é o paralelogramo construído sobre as imagens de e_{1} e e_{2}. Faz o desenho e usa a fórmula «base \times altura».

  1. As imagens dos unitários, que são as colunas: e_{1} \mapsto (3,\,0) e e_{2} \mapsto (1,\,2).
  2. O paralelogramo construído sobre esses dois vetores tem base 3, sobre o eixo Ox, e altura 2 — a ordenada do segundo vetor.
  3. A_{\text{imagem}} = 3 \times 2 = 6.
  4. A área ficou multiplicada por 6.No laboratório da secção 3, este é o número que aparece em «a área fica multiplicada por». Aqui obteve-se pela geometria, sem precisar de nenhuma fórmula por decorar.
Resposta6