何朝葵, 朱永忠, 柳慶新
(河海大學(xué) 理學(xué)院,南京211100)
向量組的正交化是線性代數(shù)中一個(gè)極其重要的內(nèi)容,其在理論研究和工程應(yīng)用上都很重要[1-4],在歐氏空間中,向量組的正交化方法一般采用Schmidt正交化法,Schmidt正交化法幾何意義很明顯,結(jié)構(gòu)也很完美.但是Schmidt正交化后向量組的正交性不易理解,而且計(jì)算也較復(fù)雜,部分學(xué)者對(duì)Schmidt正交化法進(jìn)行了改進(jìn)[5].向量組正交化的另一種方法是合同變換法[6-8],它是通過(guò)對(duì)向量組的度量矩陣進(jìn)行合同變換來(lái)達(dá)到把向量組正交化的方法.本文擬通過(guò)分析這兩種方法之間的關(guān)系,總結(jié)出一種比較簡(jiǎn)單的新正交化方法——Schmidt初等變換正交化法.此方法具有明顯的幾何意義,計(jì)算也簡(jiǎn)單,而且很容易在軟件上實(shí)現(xiàn).
已知一組實(shí)向量組:α1,α2,…,αm∈n,令A(yù)=(α1,α2, …,αm),則
注意到向量組的度量矩陣ATA是實(shí)對(duì)稱矩陣,所以存在m階可逆矩陣Q,使得
QTATAQ=Λ=diag(k1,k2,…,km).
令B=AQ,則BTB=diag(k1,k2,…,km),把矩陣B列劃分,即B=(β1,β2, …,βm),則
所以向量組正交化的合同變換法就是對(duì)矩陣K中的ATA進(jìn)行合同變換,同時(shí)對(duì)K中的A進(jìn)行合同變換中的初等列變換,當(dāng)把ATA化為對(duì)角矩陣時(shí),矩陣A相應(yīng)地化為矩陣B,矩陣B的列向量組就是所求的一個(gè)正交向量組.因?yàn)楹贤儞Q不唯一,導(dǎo)致矩陣Q不唯一,這樣B也就不唯一,所以得到的正交化向量組也不唯一.但是如果對(duì)合同變換所實(shí)施的初等變換進(jìn)行特定規(guī)范化,就可得到特定的矩陣Q和B,從而得到特定的正交化向量組.在此,對(duì)合同變換做如下規(guī)范:不進(jìn)行第一類和第二類初等變換,僅按步驟進(jìn)行第三類初等變換.
則β1和β2是正交的,又注意到
所以矩陣(1)等于
(2)
最后得到正交向量組:
這就是Schmidt正交化向量組.因此,在合同變換法中只實(shí)施如上規(guī)范化的初等列變換,則得到的正交化向量組就是Schmidt正交化向量組,整個(gè)變換過(guò)程就是對(duì)矩陣K進(jìn)行初等列變換,利用對(duì)角線元素依次把度量矩陣對(duì)角線上方每一行的元素化為零.如果允許已知向量組線性相關(guān)的情形,則在處理過(guò)程中可能會(huì)出現(xiàn)〈βi,βi〉=0情形,此時(shí)只需跳過(guò)第i步,直接進(jìn)行第i+1步即可.
把上述特定初等列變換稱為規(guī)范化初等列變換;若把列改為行,則稱為規(guī)范化初等行變換.既然合同變換法規(guī)范化后得到的正交向量組就是Schmidt正交化向量組,這說(shuō)明Schmidt正交化可以通過(guò)上述規(guī)范化的初等變換來(lái)實(shí)現(xiàn).稱這種由合同變換法中利用規(guī)范化初等變換后得到Schmidt正交化向量組的方法為Schmidt初等變換正交化法.
解令A(yù)=(α1,α2,α3),則
所以,已知向量組Schmidt正交化后為
考慮向量組:α1,α2,…,αm∈n,由于投影向量:
第一步 實(shí)際上是把向量組后m-1個(gè)向量都減去它們?cè)讦?上的投影向量,原向量組化為
第二步 把上一步得到的向量組后m-2個(gè)向量都減去它們?cè)讦?上的投影向量,向量組化為
為正交向量組,原向量組化成
依次這樣,第m-1步后原向量組就化成了Schmidt正交化向量組:
合同變換規(guī)范化后,程序的編制很簡(jiǎn)單,利用軟件Matlab編制的Schmidt初等變換正交化法程序如下:
function [B,eta] = Schmidt( A )
%Schmidt初等變換正交標(biāo)準(zhǔn)化
% 正交化
K=[A′*A,A′];
[m,n]=size(K);
for i=1:m-1
for j=i+1:m
if K(i,i)>0
K(j,:)=K(j,:)-K(i,j)/K(i,i)*K(i,:);
end
end
end
B=K(:,m+1:n)′;
% 標(biāo)準(zhǔn)化
j=0;
for i=1:m
if K(i,i)>0
j=j+1;
eta(:,j)=B(:,i)/sqrt(K(i,i));
end
end
end
在工作窗口輸入
A=[0 1 1;1 1 0;1 0 1;0 -1 1];
[B,eta]=Schmidt(A)
輸出結(jié)果為:
B =
eta =
與例1計(jì)算結(jié)果一致.
若輸入
A=[1 -1 3 1;-1 1 -1 4];
[B,eta]=Schmidt(A)
輸出結(jié)果為:
B =
eta =
這表明此方法對(duì)已知向量組線性無(wú)關(guān)的情形也有效.
通過(guò)分析合同變換正交化法和Schmidt正交化法的關(guān)系,找到了利用初等變換來(lái)實(shí)施Schmidt正交化的方法,且給出了這種方法的幾何解釋,并編制了相應(yīng)的程序,這能夠幫助讀者加深對(duì)Schmidt正交化法的理解.
致謝感謝審稿專家對(duì)本文提出的建議.