格拉姆-施密特计算器

格拉姆-施密特计算器

输入 2 到 4 个向量,每个向量含 2 到 4 个数,用逗号分隔。所有向量的分量个数必须相同。小数请用英文句点。

格拉姆-施密特正交化把一组向量变成一组两两垂直、且生成同一空间的向量。输入 2 到 4 个向量,每个向量含 2 到 4 个数,选择正交或标准正交,计算器会列出每个投影系数、由它构造的向量 u_k、u_k 的长度以及单位向量 e_k。运算全程使用精确分数,如果某个向量没有带来新的方向,会直接标明它与前面的向量线性相关,而不会被舍入误差掩盖。

格拉姆-施密特计算器使用方法

  1. 1

    输入向量

    每行写一个向量,各分量用逗号隔开,例如 1, 1, 0。请使用 2 到 4 个向量,且每个向量的分量个数相同(2 到 4 个)。小数点用英文句点,最多保留四位小数。

  2. 2

    选择结果类型

    可选标准正交向量(单位长度,以小数显示),也可选正交向量(以小数显示,分数足够短时同时给出精确分数)。

  3. 3

    查看计算步骤

    结果页先给出得到的基,再逐步列出投影系数、u_k、其长度的平方与长度,以及 e_k。被跳过的向量会标注为线性相关。

格拉姆-施密特正交化的原理

给定向量 v_1, v_2, …, v_n,该方法依次构造正交向量 u_1, u_2, …:

  • u_1 = v_1
  • u_k = v_k - c_k1 u_1 - c_k2 u_2 - ... - c_k,k-1 u_k-1
  • 每个投影系数为 c_kj = (v_k · u_j) / (u_j · u_j)

减去投影,就是从 v_k 中去掉所有沿前面各 u_j 方向的成分,因此 u_k 与它们都垂直。再把每个 u_k 除以它的长度 |u_k| = √(u_k · u_k),就得到长度为 1 的标准正交向量 e_k。

计算示例

取 v_1 = (1, 1, 0),v_2 = (1, 0, 1),v_3 = (0, 1, 1)。

步骤 计算 结果
u_1 v_1 (1, 1, 0)
c_21 (v_2 · u_1) / (u_1 · u_1) = 1/2 1/2
u_2 v_2 - 1/2 u_1 (1/2, -1/2, 1)
c_31, c_32 1/2 和 1/3 1/2, 1/3
u_3 v_3 - 1/2 u_1 - 1/3 u_2 (-2/3, 2/3, 2/3)

标准正交向量为 e_1 ≈ (0.7071, 0.7071, 0),e_2 ≈ (0.4082, -0.4082, 0.8165),e_3 ≈ (-0.5774, 0.5774, 0.5774)。

线性相关

如果 v_k 已经落在前面各向量所生成的空间里,减去全部投影后就会得到零向量。由于每个数都按分数处理,计算器能精确判断这一点,不依赖任何容差。这样的向量会被标为线性相关并跳过,后面的向量则只对已找到的线性无关向量做正交化。当向量个数多于维数时(例如平面内有三个向量),至少有一个向量必然线性相关。

本计算器的适用范围

  • 2 到 4 个向量,每个含 2 到 4 个分量且长度一致,分量绝对值不超过 1,000,000,最多四位小数。
  • 正交向量以小数显示,分数足够短时同时显示精确分数;单位向量需要开平方,因此只以小数显示。
  • 使用实数上的标准点积,不支持复向量、其他内积以及更大的规模。

常见问题

正交向量彼此垂直,任意两个向量的点积为 0。标准正交向量在正交的基础上,长度还都是 1。把每个正交向量 u_k 除以它的长度,就得到标准正交向量组。

计算器会标出线性相关的向量,说明它的余项 u_k 是零向量,并跳过它。排在后面的向量只对已找到的线性无关向量做正交化。结果页还会告诉你,你的向量中有多少个带来了新的方向。

有影响。格拉姆-施密特会保留第一个向量的方向,并让其余向量向它靠拢,所以顺序不同,得到的正交向量组也不同。不过每一组生成的空间是相同的。

输入会先转换成精确分数,投影也不经过舍入,所以能可靠地判断线性相关。正交向量在分数足够短、便于阅读时会给出精确分数。单位向量需要开平方,因此以小数显示,保留四位。

你输入的向量会发送到服务器进行计算,并在你切换步骤时写入页面链接,这样可以收藏或分享这次计算。它们不会保存到任何账户或个人资料中。

相关工具

此工具还提供其他语言版本