A matriz inversa no Octave

Neste guia, vou desvendar o processo de cálculo da matriz inversa, seja ela quadrada ou retangular, utilizando o Octave.

Para começar, é crucial entender o que é a matriz inversa. Se tivermos uma matriz M, ela é dita invertível se existir uma matriz inversa M-1, cuja multiplicação por M resulta numa matriz identidade. E o que é a matriz identidade? Simples, é uma matriz que possui 1 em sua diagonal principal e 0 em todos os outros elementos. Por exemplo, temos que $$ M \cdot M^{-1} = I $$

Vamos agora a um exemplo prático.

Primeiro, vamos definir uma matriz quadrada 2x2.

>> M=[1 2;3 4]
M =
1 2
3 4

Para encontrar a matriz inversa de M, basta aplicar a função inv()

>> inv(M)
ans =
-2.00000 1.00000
1.50000 -0.50000

E se multiplicarmos M pela sua inversa inv(M)? Obteremos uma matriz identidade.

>> M*inv(M)
ans =
1.00000 0.00000
0.00000 1.00000

Importante notar que a função inv() pode ser utilizada apenas se M for uma matriz quadrada.

Nota de atenção. Nem todas as matrizes quadradas são invertíveis. Por exemplo, não existe matriz inversa para matrizes quadradas com determinante nulo, as chamadas matrizes singulares. Nessas situações, o Octave emitirá um aviso: "Matrix is singular to working precision". Para não cair em armadilhas, sempre verifique se o produto M * inv(M) resulta realmente numa matriz identidade.

Mas e quanto às matrizes retangulares, como calculamos a matriz inversa?

No Octave, também é viável calcular a matriz inversa de uma matriz retangular.

Contudo, neste caso, a função a ser utilizada é a pseudo inversa pinv().

Vamos a um exemplo. Suponha uma matriz retangular 2x3, com duas linhas e três colunas.

>> M2=[1 2 3 ; 4 5 6]
M2 =
1 2 3
4 5 6

Para calcular a matriz inversa da matriz retangular, utilizamos a função pinv()

>> pinv(M2)
ans =
-0.94444 0.44444
-0.11111 0.11111
0.72222 -0.22222

Se multiplicarmos a matriz retangular M2 pela sua inversa (M2), veremos que o resultado é uma matriz identidade.

>> M2*pinv(M2)
ans =
1.00000 -0.00000
0.00000 1.00000

Dessa maneira, é possível calcular matrizes inversas de matrizes retangulares.

Por fim, vale notar que é possível usar a função pinv() para calcular a matriz inversa de uma matriz quadrada em substituição à função inv(). O resultado será sempre o mesmo. No entanto, não se pode utilizar a função inv() em matrizes retangulares.

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Arrays em Octave

Matrizes em Octave

FAQ

Struct e array de células