Pular para o conteúdo

Octave - Decomposição LU

Em álgebra linear, a decomposição LU é uma forma de fatoração de uma matriz A não singular como o produto de uma matriz triangular inferior L e uma matriz triangular superior U, isto é A=LU.

Às vezes se deve pré-multiplicar a matriz a ser decomposta por uma matriz de permutação. Esta decomposição se usa em análise numérica para resolver sistemas de equações (mais eficientemente) ou encontrar as matrizes inversas.
Daniel Moreira dos Santos danielms
Hits: 21.422 Categoria: Outros Subcategoria: Portugol
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Em álgebra linear, a decomposição LU é uma forma de fatoração de uma matriz A não singular como o produto de uma matriz triangular inferior L e uma matriz triangular superior U, isto é A=LU.

Às vezes se deve pré-multiplicar a matriz a ser decomposta por uma matriz de permutação. Esta decomposição se usa em análise numérica para resolver sistemas de equações (mais eficientemente) ou encontrar as matrizes inversas.
Download decomLU.m Enviar nova versão

Esconder código-fonte

function [A, Det, Pivot]  = decomLU(n, A)




% n, A = ordem e matriz a ser decomposta

%A, Det, Pivot = matriz decomposta A = U+L-I, determinante, pivôs



for i=1:n

    Pivot(i) =i;

end

Det = 1;

for j=1:n-1

    p = j;

    Amax = abs(A(j,j));

    for k=j+1:n

        if abs(A(k,j))>Amax

            Amax = abs(A(k,j));

            p =k;

        end

    end

    if p~=j

        for k=1:n

            t = A(j,k);

            A(j,k) = A(p,k);

            A(p,k) = t;

        end

        m = Pivot(j);

        Pivot(j)=Pivot(p);

        Pivot(p)=m;

        Det = -Det;

    end

    Det = Det*A(j,j);

    if abs(A(j,j))~=0

        r = 1/A(j,j);

        for i=j+1:n

            Mult = A(i,j)*r;

            A(i,j) = Mult;

            for k=j+1:n

                A(i,k) = A(i,k)-Mult*A(j,k);

            end

        end

    end

end

Det = Det*A(n,n)


Matriz de Hilbert e resolução de sistemas lineares

Octave - Calcular raiz pelo método da Secante

Crivo de Eratóstenes Simples em Fortran 95

Octave - Método de Gauss-Legendre

Octave - Método de Euler para solução de EDO

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.