/ / Determinante de cálculo de uma matriz [fechado] - matemática

Calculando determinante de uma matriz [fechado] - matemática

Eu preciso de um algoritmo recursivo para calcular o determinante da matriz n * n.

Respostas:

2 para resposta № 1

O Método Padrão para calcular o determinante é Decomposição LU. Use uma biblioteca como LAPACK no código de produção. Não há absolutamente nenhum ponto em usar a recursão, a decomposição da LU é geralmente implementada resolvendo-se M = LU em forma fechada e assumindo operações O (n ^ 3).


2 para resposta № 2

Wikipedia tem uma fórmula para calcular os determinantes. Envolve permutações, que podem ser facilmente geradas recursivamente. O Google tem muitos resultados em "algoritmo de permutação".


2 para resposta № 3

Eu não vejo o ponto da recursividade aqui.

Esta operação matricial pode ser facilmente implementada em uma operação SIMD, pode ser dividida em threads, pode ser muito bem calculada na GPU.

A recursividade consome muita memória e alguns sistemas têm limites nas profundidades de recursão.


1 para resposta № 4


|a b c d ...|
det |...........|
|...........|
|...........|

= a * det(M1) - b * det(M2) + c * det(M3) - d * det(M4) + ... - ...

onde Mn é a Matriz restante se você soltar a primeira linha e a coluna n-ésima