Учитывая LUP-разложение матрицы, как найти определитель в MATLAB?
Я хочу вычислить определитель матрицы из ее декомпозиции LUP в MATLAB. Определитель можно найти по Формуле:
P-матрица перестановок , А S-число обменов строк, необходимых для преобразования P в матрицу тождества. Как я могу найти S В приведенной выше формуле в MATLAB? Имеет ли он какие-либо предопределенные функции и т. д.?
1 ответ:
Если вы интерпретируете
Теперь осталось только найти длину всех циклов, для которых есть несколько функций на файлообменнике, например Эта.P
как матрицу смежности, а векторcycles
содержит длину всех циклов в графе, описанномP
, тоS=sum(cycles) - length(cycles)
.Кстати:
[L, U, P] = lu(A)
, иdet(A) = det(inv(P))*det(L)*det(U)