2012-09-08 13 views
1

任何人都知道我如何才能建立一個正交基地只使用一個向量?我有一個形式爲v1 = [a b -a -b]'的向量,其中'a'和'b'是實數。我曾嘗試打造的 「即興的方式」,但什麼都沒有,我只得到了兩個正交向量:如何從矢量構建一個正交基?

V1 = [AB -a -b] ' V2 = [A -ba -b]'

我需要更多的兩個向量來完成正交基{v1,v2,v3,v4}。任何人都可以幫助我?

謝謝...

+2

的施密特是你的果醬:http://en.wikipedia.org/wiki/Gram%E2%80%93Schmidt_process – duffymo

+0

什麼正交基?如果只有一個矢量,則只能用v1作爲其基本矢量來構建一維矢量空間。你可以標準化你的矢量v1並完成它。如果你想要一個4D空間的基礎,你將需要4個線性無關的矢量,除非你能夠提供一些關於你如何計算其他矢量的附加信息。 – andand

回答

2

我不能爲你做數學中,但在MATLAB至少,我會做這樣的...

syms a b 
null([a b -a -b]) 
ans = 
[ -b/a, 1, b/a] 
[ 1, 0, 0] 
[ 0, 1, 0] 
[ 0, 0, 1] 

的這一列陣列與原始矢量正交,並跨越零空間。

2

v3 = [b a b a]',v4 = [b -a -b a]'具有令人愉快的對稱性。

0

您可以使用單位矩陣進行增廣,並將該組矢量正交化,使用前一個給定的矢量。這是一個例子。

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]}} *)