Operações de matriz em Octave
Nesta aula, explicarei como realizar as principais operações de matriz em Octave com alguns exemplos práticos.
Antes de começar, crie dois arrays de matrizes.
Escreva uma matriz M1 com duas linhas e duas colunas. É uma matriz quadrada.
>> M1=[1 4;2 3]
M 1 =
1 4
2 3
Agora escreva outra matriz quadrada M2 com duas linhas e duas colunas.
>> M2=[3 1;7 5]
M2 =
3 1
7 5
Aqui estão algumas operações do cálculo de matriz
- Adição de matrizes
- Subtração de matrizes
- Multiplicação de matrizes
- Multiplicação de matrizes elemento a elemento
- Multiplicação escalar de matrizes
- Divisão de matrizes
- Divisão de matriz elemento a elemento
- Divisão de matriz por um escalar
- Exponenciação de matriz elemento a elemento
- Determinante da matriz
- Rank
- Matriz transpuesta
- Matriz inversa
Adição de matrizes
Para adicionar duas matrizes, digite M1 + M2
>> M1+M2
ans =
4 5
9 8
$$ M1 + M2 = \begin{pmatrix} 1 & 4 \\ 2 & 3 \end{pmatrix} + \begin{pmatrix} 3 & 1 \\ 7 & 5 \end{pmatrix} = \begin{pmatrix} 1+3 & 4+1 \\ 2+7 & 3+5 \end{pmatrix} = \begin{pmatrix} 4 & 5 \\ 9 & 8 \end{pmatrix} $$
Subtração de matrizes
Para calcular a diferença entre duas matrizes, digite M1-M2
>> M1-M2
ans =
-2 3
-5 -2
$$ M1 - M2 = \begin{pmatrix} 1 & 4 \\ 2 & 3 \end{pmatrix} - \begin{pmatrix} 3 & 1 \\ 7 & 5 \end{pmatrix} = \begin{pmatrix} 1-3 & 4-1 \\ 2-7 & 3-5 \end{pmatrix} = \begin{pmatrix} -2 & 3 \\ -5 & -2 \end{pmatrix} $$
Multiplicação de matrizes
Para calcular o produto entre duas matrizes, digite M1 * M2
>> M1*M2
ans =
31 21
27 17
$$ M1 \cdot M2 = \begin{pmatrix} 1 & 4 \\ 2 & 3 \end{pmatrix} \cdot \begin{pmatrix} 3 & 1 \\ 7 & 5 \end{pmatrix} = \begin{pmatrix} 1 \cdot 3 + 4 \cdot 7 & 1 \cdot 1 + 4 \cdot 5 \\ 2 \cdot 3 + 3 \cdot 7 & 2 \cdot 1 + 3 \cdot 5 \end{pmatrix} = \begin{pmatrix} 31 & 21 \\ 27 & 17 \end{pmatrix} $$
Lembre-se de que você pode calcular o produto entre duas matrizes apenas se o número de colunas da primeira matriz for igual ao número de linhas da segunda matriz.
Multiplicação de matrizes elemento a elemento
É outro tipo de multiplicação de matrizes. Esta operação calcula o produto dos elementos dos arrays de matriz que ocupam a mesma posição.
Para calcular este tipo de multiplicação, você precisa usar o símbolo .*
>> M1 .* M2
ans =
3 4
14 15
Na multiplicação elemento a elemento, as duas matrizes devem ter o mesmo número de linhas e colunas.
$$ M1 \ .* \ M2 = \begin{pmatrix} 1 & 4 \\ 2 & 3 \end{pmatrix} \ .* \ \begin{pmatrix} 3 & 1 \\ 7 & 5 \end{pmatrix} = \begin{pmatrix} 1 \cdot 3 & 4 \cdot 1 \\ 2 \cdot 7 & 3 \cdot 5 \end{pmatrix} = \begin{pmatrix} 3 & 4 \\ 14 & 15 \end{pmatrix} $$
Multiplicação escalar de matrizes
Para multiplicar uma matriz por um número escalar, por exemplo k = 2, digite 2 * M1
>> 2*M1
ans =
2 8
4 6
Todos os elementos da matriz são multiplicados pelo número escalar.
$$ 2 \cdot M1 = 2 \cdot \begin{pmatrix} 1 & 4 \\ 2 & 3 \end{pmatrix} = \begin{pmatrix} 2 \cdot 1 & 2 \cdot 4 \\2 \cdot 2 & 2 \cdot 3 \end{pmatrix} = \begin{pmatrix} 2 & 8 \\4 & 6 \end{pmatrix} $$
Divisão de matrizes
Na álgebra linear, a divisão entre duas matrizes é calculada multiplicando-se a primeira matriz pela inversa da segunda M1·M2-1.
Para calcular esta operação no Octave digite M1*inv(M2)
>> M1*inv(M2)
ans =
-2.87500 1.37500
-1.37500 0.87500
Alternativamente, você também pode digitar M1/M2
>> M1/M2
ans =
-2.87500 1.37500
-1.37500 0.87500
O resultado é o mesmo.
Divisão de matriz elemento a elemento
É outro tipo de divisão de matriz. Esta operação calcula o quociente entre os elementos dos arrays que estão na mesma posição.
Para fazer este tipo de divisão você precisa usar o símbolo ./
>> M1 ./ M2
ans =
0.33333 4.0000
0.28571 0.6000
Na divisão elemento a elemento, as duas matrizes devem ter o mesmo número de linhas e colunas.
$$ M1 \ ./ \ M2 = \begin{pmatrix} 1 & 4 \\ 2 & 3 \end{pmatrix} \ ./ \ \begin{pmatrix} 3 & 1 \\ 7 & 5 \end{pmatrix} = \begin{pmatrix} \frac{1}{3} & \frac{4}{1} \\ \frac{2}{7} & \frac{3}{5} \end{pmatrix} = \begin{pmatrix} 0.33333 & 0.28571 \\ 4 & 0.6 \end{pmatrix} $$
Divisão de matriz por um escalar
Se você quiser dividir uma matriz por um número escalar, por exemplo k = 2, digite M1 / 2
>> M1/2
ans =
0.50000 2.00000
1.00000 1.50000
Os elementos da matriz são divididos pelo número escalar.
$$ \frac{M1}{2} = \frac{1}{2} \cdot \begin{pmatrix} 1 & 4 \\ 2 & 3 \end{pmatrix} = \begin{pmatrix} \frac{1}{2} \cdot 1 & \frac{1}{2} \cdot 4 \\ \frac{1}{2} \cdot 2 & \frac{1}{2} \cdot 3 \end{pmatrix} = \begin{pmatrix} 0.5 & 2 \\ 1 & 1.5 \end{pmatrix} $$
Exponenciação de matriz elemento a elemento
Esta operação calcula a exponenciação de todos os elementos da matriz pelo mesmo expoente.
Para fazer este tipo de operação, você precisa usar o símbolo .^
>> M1.^2
ans =
1 16
4 9
$$ M1 \ \text{.^} \ 2 = \begin{pmatrix} 1^2 & 4^2 \\ 2^2 & 3^2 \end{pmatrix} = \begin{pmatrix} 1 & 16 \\ 4 & 9 \end{pmatrix} $$
Determinante da matriz
Para calcular o determinante de uma matriz quadrada, use a função det()
>> det(M1)
ans = -5
$$ \text{det} (M1) = det \begin{pmatrix} 1 & 4 \\ 2 & 3 \end{pmatrix} = 1 \cdot 3 - 4 \cdot 2 = -5 $$
Rank
Para calcular o rank de uma matriz quadrada, use a função rank()
>> rank(M1)
ans = 2
Matriz transpuesta
Para transpor uma matriz, use a função transpose()
>> transpose(M1)
ans =
1 2
4 3
Alternativamente, você pode transpor a matriz adicionando uma única aspas após o nome da matriz
>> M1'
ans =
1 2
4 3
Na transposição, as linhas da matriz se tornam colunas. $$ \begin{pmatrix} 1 & 4 \\ 2 & 3 \end{pmatrix}^T = \begin{pmatrix} 1 & 2 \\ 4 & 3 \end{pmatrix} $$
Matriz inversa
Para calcular a matriz inversa, use a função inv()
>> inv(M1)
ans =
-0.60000 0.80000
0.40000 -0.20000
A matriz inversa de M1 é uma matriz que, quando multiplicada por M1, resulta em uma matriz identidade, ou seja, uma matriz com elementos iguais a 1 na diagonal principal e todos os outros elementos são nulos. $$ M1 \cdot \text{inv} (M1) = \begin{pmatrix} 1 & 4 \\ 2 & 3 \end{pmatrix} \cdot \begin{pmatrix} -0.6 & 0.8 \\ 0.4 & -0.2 \end{pmatrix} = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix} $$