QR分解计算器
将2乘2矩阵分解为正交矩阵Q和上三角矩阵R。
矩阵QR分解
按行输入矩阵的四个元素,然后计算格拉姆-施密特分解。
关于QR分解
QR分解将矩阵A分解为Q与R的乘积。Q的列向量标准正交,即每列长度为一,且不同列相互垂直。R是上三角矩阵,因此主对角线下方的所有元素均为零。对于满秩方阵,将显示的Q和R相乘即可还原原矩阵,仅可能存在小数舍入带来的微小差异。本计算器对实数2乘2矩阵进行该分解。
计算采用经典的格拉姆-施密特过程,依次处理A的各列。首先计算第一列的欧几里得长度。将该列除以其长度,得到Q的第一个单位向量,该长度则成为R的第一个对角元素。接着,将第二列投影到第一个单位向量上。减去该投影后得到垂直向量,将其归一化即可得到Q的第二列。投影系数和第二个向量的长度共同补全上三角矩阵R。
QR分解是数值线性代数的核心工具。它可用于方程数多于未知数的超定系统中的最小二乘拟合,也用于求解特征值的算法。正交变换保留长度,通常不会像直接运算那样严重放大舍入误差,因此适合数值计算。本页聚焦二维情形,方便逐步查看,但同样的列正交化思想也适用于更大的矩形矩阵。
要生成两个单位向量,输入的两列必须线性无关。全零的第一列无法归一化;若第二列只是第一列的倍数,减去投影后便没有剩余的垂直方向。此类矩阵秩不足,不具有这里采用的完整QR形式。QR分解还可能在符号上有所不同:同时将Q的一列和R的对应行取反,乘积保持不变。本计算器将非负长度用作R的对角元素,以便按稳定、一致的约定比较结果。
QR分解示例
| 矩阵A | 分解因子 | 说明 |
|---|---|---|
| [1, 0] [0, 1] | Q = 单位矩阵,R = 单位矩阵 | 各列已标准正交 |
| [3, 0] [4, 5] | Q = [0.6, -0.8] [0.8, 0.6], R = [5, 4] [0, 3] | 格拉姆-施密特过程将长度与方向分离 |
| [1, 1] [1, -1] | Q 约为 [0.707107, 0.707107] [0.707107, -0.707107] | 输入列相互垂直,但尚未归一化 |
如何计算QR分解
- 按标注的行列位置输入矩阵A的四个元素。
- 确认两列均非零,且互不为标量倍数。
- 选择“计算QR分解”,应用格拉姆-施密特过程。
- 按行读取Q和R,并将两者相乘以核对分解。
常见问题
Q和R分别代表什么?
Q包含描述方向的标准正交列向量。R为上三角矩阵,记录还原原矩阵所需的长度和投影系数。
为什么各列必须线性无关?
格拉姆-施密特过程要求每个新的Q列都有非零的垂直余量。线性相关的列会使该余量为零,因此无法通过这种方式形成完整的两列标准正交基。
QR分解是唯一的吗?
不同的符号选择可产生等价分解,因为Q和R中的对应符号会在乘积中抵消。要求R的对角元素非负,是常见的唯一性约定。
如何验证结果?
将Q与R相乘,逐个元素与原矩阵A比较。还可以检查Q的转置乘以Q是否等于单位矩阵。
QR分解有什么用途?
它广泛用于最小二乘问题、特征值算法和稳定的方程求解。正交矩阵有助于控制这些计算中的数值误差。