类 QRDecomposition
java.lang.Object
org.hipparchus.linear.QRDecomposition
- 直接已知子类:
-
RRQRDecomposition
计算矩阵的QR分解。
矩阵A的QR分解包括两个矩阵Q和R,满足:A = QR,其中Q是正交矩阵(QTQ = I),R是上三角矩阵。如果A是m×n矩阵,则Q是m×m矩阵,R是m×n矩阵。
该类使用Householder反射器计算分解。
为了提高效率,分解以紧凑形式进行转置。这允许内部循环在行内进行迭代,在Java中这样更加高效。
该类基于来自JAMA库的同名类,做出以下更改:
- 添加了一个
getQT
方法, - 用一个
getSolver
方法替换了solve
和isFullRank
方法,并提供了返回的DecompositionSolver
的等效方法。
- 另请参阅:
-
构造器概要
构造器说明QRDecomposition
(RealMatrix matrix) 计算给定矩阵的QR分解。QRDecomposition
(RealMatrix matrix, double threshold) 计算给定矩阵的QR分解。 -
方法概要
-
构造器详细资料
-
QRDecomposition
计算给定矩阵的QR分解。奇异性阈值默认为零。- 参数:
-
matrix
- 要分解的矩阵。 - 另请参阅:
-
QRDecomposition
计算给定矩阵的QR分解。- 参数:
-
matrix
- 要分解的矩阵。 -
threshold
- 奇异性阈值。
-
-
方法详细资料
-
decompose
protected void decompose(double[][] matrix) 分解矩阵。- 参数:
-
matrix
- 转置矩阵
-
performHouseholderReflection
protected void performHouseholderReflection(int minor, double[][] matrix) 对A的子矩阵A(minor, minor)执行Householder反射。- 参数:
-
minor
- 子矩阵索引 -
matrix
- 转置矩阵
-
getR
返回分解的矩阵R。R是一个上三角矩阵
- 返回:
- R矩阵
-
getQ
返回分解的矩阵Q。Q是一个正交矩阵
- 返回:
- Q矩阵
-
getQT
返回分解的矩阵Q的转置。Q是一个正交矩阵
- 返回:
- Q矩阵的转置,QT
-
getH
返回Householder反射器向量。H是一个下梯形矩阵,其列代表每个连续的Householder反射器向量。该矩阵用于计算Q。
- 返回:
- 包含Householder反射器向量的矩阵
-
getSolver
获取用于在最小二乘意义下找到A × X = B解的求解器。最小二乘意义意味着可以为超定系统计算一个求解器(即方程数量多于未知数的系统,对应于具有更多行数而少列数的高矩阵)。在任何情况下,如果矩阵在设置为
构造
时的容差内是奇异的,则在调用求解
方法时将触发错误。- 返回:
- 一个求解器
-