毛圓潔
(無錫科技職業(yè)學院基礎(chǔ)部,江蘇無錫 214028)
行簡化階梯形矩陣在線性代數(shù)中有著重要的作用。將矩陣轉(zhuǎn)化成行階梯形矩陣,能夠計算矩陣的秩,判斷方陣是否可逆,判定向量組的線性相關(guān)性。將矩陣轉(zhuǎn)化成行簡化階梯形矩陣,可以快速找出向量組的極大無關(guān)組,并且寫出其余向量用這個極大無關(guān)組的線性表示,不僅如此,將線性方程組的增廣矩陣轉(zhuǎn)化成行簡化階梯形矩陣,可以寫出線性方程組的唯一解、無解或者無窮多解。計算行簡化階梯形矩陣貫穿了線性代數(shù)的矩陣、向量組的線性相關(guān)性、求解線性方程組等多個章節(jié)的學習,在傳統(tǒng)的線性代數(shù)教學中,將矩陣轉(zhuǎn)化成行簡化階梯形矩陣通常采用初等行變換的方法來計算,人工計算占用時間多,計算量大,效率也不高。本文借助常用軟件Excel,設(shè)計了一款行簡化階梯形矩陣的計算程序,實現(xiàn)了矩陣行簡化階梯形的一鍵智能化[1]。
定義1 若一個矩陣的所有零行在非零行之下,且非零行的首非零元素所在列在上一行(如果存在的話)的首非零元素所在列的右面,則稱此矩陣為行階梯形矩陣。
定義2 若一個矩陣是行階梯形矩陣,并且非零行的首非零元素為1,首非零元素所在列的其余元素都為0,則稱該矩陣為行簡化階梯形矩陣[2]。
根據(jù)定義,行簡化階梯形矩陣非零行的主元素所在列的其余元素必須是零,所以第一步,可以按矩陣的行開始循環(huán),找到每一行的非零首元素,將非零首元素所在列的其他元素通過初等行變換的倍加變換都化為零。第二步,找到每一行的非零首元素,利用初等行變換的倍乘變換將它們都化為1。經(jīng)過前兩步的計算,此時矩陣已經(jīng)與行簡化階梯形矩陣非常相似,該矩陣只要通過交換行便可轉(zhuǎn)化為行簡化階梯形矩陣。所以第三步,將零行放在矩陣的最下方,非零行的主元素所在列要按照從小到大,從左往右的順序排列,保證所有非零行主元素都在上一非零行(如果存在)主元素的右側(cè)。通過這三步,即可將任意矩陣轉(zhuǎn)化成行簡化階梯形矩陣[3]。
根據(jù)算法設(shè)計,給出行簡化階梯形矩陣實現(xiàn)的具體程序[4-6]:
例1 計算向量組α1=(1,2,1,0),α2=(2,5,3,2),α3=(-1,2,-6,8),α4=(0,3,3,6),α5=(4,5,0,-6)的秩,求一個極大無關(guān)組,并將剩余向量由極大無關(guān)組線性表示。
在Excel 的A1 至E4 單元格內(nèi)依次輸入向量組α1,α2,α3,α4,α5,選中A1 至E4 單元格后,左鍵單擊“開發(fā)工具”——Visual Basic,在通用窗口內(nèi)運行本文2.2中的VBA程序,運行結(jié)果如圖1所示。
圖1 例1程序運行結(jié)果
A8 至E11 單元格返回了例1 中向量組的行簡化階梯形矩陣,非零行的行數(shù)為3,因此,r(α1,α2,α3,α4,α5)=3。根據(jù)主元列所在位置得到向量組的一個極大無關(guān)組為α1,α2,α3,其余兩個向量α4,α5可以由這個極大無關(guān)組線性表示為:α4=-6α1+3α2,α5=11α1-。
例2 求下列非齊次線性方程組的通解:
在Excel的A1至E3單元格內(nèi)輸入線性方程組的增廣矩陣,選中A1至E3單元格后,左鍵單擊“開發(fā)工具”——Visual Basic,在通用窗口內(nèi)運行本文2.2中的VBA程序,運行結(jié)果如圖2所示。
圖2 例2程序運行結(jié)果
A8 至E10 單元格返回了例2 中線性方程組增廣矩陣的行簡化階梯形矩陣,此時方程組有解且為無窮多解,
因此,原線性方程組的通解為:
本文設(shè)計的行簡化階梯形矩陣轉(zhuǎn)化的程序是基于常用軟件Excel 的,考慮到Excel 具有廣泛的群眾基礎(chǔ),使用攜帶都比較方便,具有較好的可推廣性。對比傳統(tǒng)教學的人工計算,本文的設(shè)計能大大提高線性代數(shù)教學的課堂效率,幫助學生理解一些抽象的數(shù)學概念,激發(fā)學生的探索興趣,提升教學效果。Excel 軟件本身含有計算矩陣乘積、矩陣的逆以及行列式值的函數(shù),分別為MMULT、MINVERSE和MDETERM,結(jié)合本文的設(shè)計,基本涵蓋了線性代數(shù)中行列式、矩陣及其運算、矩陣的初等變換和線性方程組、向量組的線性相關(guān)性章節(jié)的計算部分,適合開發(fā)成與線性代數(shù)相配套的計算實驗課,增強課程的實用性。