2

我不熟悉将 Jama 用于矩阵。我的问题是当我使用它给出det()的方法(与LUDecomposition类有关)时"Matrix must be square"。好的,我的矩阵是三角形的,但LUDecomposition它应该给我方矩阵。我的代码是这样的

public double findDeterminant(Matrix mtrx) {
    LUDecomposition dec = new LUDecomposition(mtrx);        
    det = dec.det();
    return det;
}
4

1 回答 1

2

从以下文档LUDecomposition

对于m >= n的 m× n矩阵A,LU 分解是一个m×n单位下三角矩阵、一个n×n上三角矩阵和一个长度为m的置换向量,因此。如果m < n,则为m-by-m并且是m-by-nLUpigA(piv,:) = L*ULU

您是否可能是要找到getU()或的行列式getL()(根据上面的描述,其中一个将是正方形)?

返回用于构造对象的矩阵的行列式的det方法(在您的情况下,我假设它不是正方形)。LUDecompositionmtrx

于 2012-11-18T17:15:56.137 回答