sistemas lineares
SISTEMAS LINEARES
Um dos problemas mais comuns da álgebra linear é resolução de um sistema de equações lineares, , como dado a seguir:
Para encontrar a solução deste sistema, diversos métodos de solução podem ser empregados como: Gauss-Seidel, Gauss-Jacobi, eliminação de Gauss, fatoração LU, fatoração QR, ou mesmo empregar a “força bruta” e encontrar .
Usando o método menos indicado, ou seja, calcular usando , fornece:
>> A = [3 4 2; 1 6 4; 1 4 7]
A = 3 4 2 1 6 4 1 4 7
>> b = 31*ones(3,1) b = 31 31 31
>> x = inv(A)*b x = 5.00000000000000 3.00000000000000 2.00000000000000
Neste caso, inv(A) é uma função que calcula e o operador de multiplicação * fornece a multiplicação usual de matrizes.
Uma outra forma de resolução, mais recomendada, é utilizar o operador matricial de divisão à esquerda “\”:
>> x = A\b
x = 5 3 2
Nesse caso, o MATLAB utiliza a fatoração LU para resolver o sistema. O operador de divisão à esquerda, “\”, não é precedido por um ponto, pois a operação é matricial e não apenas entre os elementos com os mesmo índices de dois vetores. Há diversas razões pelas quais essa segunda maneira de resolver um sistema linear é a mais indicada. A primeira é que este método requer menos operações de ponto flutuante e, portanto, é mais rápida. E a segunda é que para problemas grandes a solução será mais precisa.Em qualquer um dos dois casos, se o MATLAB não conseguir achar uma solução, uma mensagem de erro será mostrada.
Alternativamente, o comando lu poderia ser usado:
>> format rat
>> [L,U]=lu(A)
L = 1 0 0 1/3 1 0 1/3 4/7