A.10 Operações matriciais

A.10.1 Multiplicação matricial

Operações algébricas, incluindo a multiplicação *, atuam elemento a elemento sobre matrizes. Mas se a intenção é fazer uma multiplicação matricial (Figura A.1) usamos o operador (%*%).

Multiplicação matricial.

Figura A.1: Multiplicação matricial.

# multiplicação de duas matrizes
A <- matrix(c(2, 1, 4, 3, 0, 5), ncol = 2)
A
B <- matrix(c(3, 2, 1, 4), ncol = 2)
B
A * B # erro pela diferença nas dims entre as matrizes
prod_mat <- A %*% B
prod_mat
# multiplicação de uma matriz por um escalar
m <- matrix(1:16, nrow = 4, byrow = TRUE)
m
m * 2

A.10.2 Adição matricial

m
m + m

A.10.3 Produto escalar

u <- 1:3
v <- c(5, 12, 13)
u * v
# produto escalar = u.v = 1*5 + 2*12 + 3*13
crossprod(u, v)

A.10.4 Determinante

# matriz exemplo
mat_ex <- matrix(c(1, -7, 3, 5, -9, 2, 6, 6, 1), ncol = 3)
det(mat_ex)

A.10.5 Solução de sistemas lineares

\[ \left\{\begin{matrix} x_1 + x_2 = 2 \\ -x_1 + x_2 = 4 \end{matrix}\right. \]

Qual os valores de \(x_1\) e \(x_2\)?

# matrizes do sistema linear
coefs <- matrix(c(1, -1, 1, 1), ncol = 2)
y <- c(2, 4)
x <- solve(coefs, y)
x

A.10.6 Produto cartesiano

O produto cartesiano de dois conjuntos A e B é representado por \(A \times B\). O resultado é o conjunto de todos pares ordenados (a, b) tal que \(a \belong b\).