我不熟悉使用Jama作为矩阵。我的问题是,当我使用det()
方法(与LUDecomposition
类相关)时,它会提供"Matrix must be square"
。好吧我的矩阵是三角形但是LUDecomposition
它应该给我方阵。我的代码就像这样
public double findDeterminant(Matrix mtrx) {
LUDecomposition dec = new LUDecomposition(mtrx);
det = dec.det();
return det;
}
答案 0 :(得分:2)
来自LUDecomposition
的{{3}}:
对于 m-by-n 矩阵
A
m> = n ,LU分解为 m-by-n 单位下三角矩阵L
, n-by-n 上三角矩阵U
,以及长度为的置换向量pig
m 以便A(piv,:) = L*U
。如果 m< n ,然后L
m-by-m ,U
m-by-n 。
根据上面的描述,您是否意味着找到getU()
或getL()
(一个中的哪个将是正方形)的决定因素?
det
LUDecomposition
方法返回用于构造对象的矩阵的决定因素(在您的情况下mtrx
,我就是假设不是正方形)。