有人知道我如何仅使用向量来构建正交基吗?我有一个形式为 v1 = [ab -a -b]' 的向量,其中 'a' 和 'b' 是实数。我确实尝试过以“临时方式”构建,但是什么也没有,我只有两个正交向量:
v1 = [ab -a -b]' v2 = [a -ba -b]'
我需要更多两个向量来完成正交基{v1,v2,v3,v4}。任何人都可以帮助我吗?
谢谢...
有人知道我如何仅使用向量来构建正交基吗?我有一个形式为 v1 = [ab -a -b]' 的向量,其中 'a' 和 'b' 是实数。我确实尝试过以“临时方式”构建,但是什么也没有,我只有两个正交向量:
v1 = [ab -a -b]' v2 = [a -ba -b]'
我需要更多两个向量来完成正交基{v1,v2,v3,v4}。任何人都可以帮助我吗?
谢谢...
v3 = [baba]', v4 = [b -a -ba]' 具有令人愉悦的对称性。
我不能在 Mathematica 中为你做,但至少在 MATLAB 中,我会这样做......
syms a b
null([a b -a -b])
ans =
[ -b/a, 1, b/a]
[ 1, 0, 0]
[ 0, 1, 0]
[ 0, 0, 1]
该数组的列与原始向量正交,并且跨越零空间。
您可以使用单位矩阵进行扩充并正交化该组向量,将给定的向量放在前面。这是一个例子。
SeedRandom[1111];
{a, b} = RandomInteger[{-10, 10}, 2];
vec = {a, b, -a, -b}
mat = Join[{vec}, IdentityMatrix[Length[vec]]];
(* Out[39]= {-8, 5, 8, -5} *)
orthog = Drop[Orthogonalize[mat], -1]
(* Out[62]= {{-4*Sqrt[2/89], 5/Sqrt[178],
4*Sqrt[2/89], -(5/Sqrt[178])},
{Sqrt[57/89], 20/Sqrt[5073], 32/Sqrt[5073], -(20/Sqrt[5073])},
{0, Sqrt[89/114], -20*Sqrt[2/5073], 25/Sqrt[10146]},
{0, 0, 5/Sqrt[89], 8/Sqrt[89]}} *)