前言
線性代數在工程應用上十分廣泛,在坐標系轉換,深度學習,求解算法的優化解方面有着大量應用。因此掌握線性代數的基本理論,並且具有解決實際工程問題的能力尤為重要。
線性方程組解的情況
線性方程組的解的三種情況
1. 適定方程組:存在唯一解
2. 欠定方程組:存在多解。變量數<方程組數
3. 超定方程組:無解。但可以求出近似解
二元方程組解的三種情況
超定二元方程組的解
以上是無解的,即方程組不相容,但有近似解-----最小二乘解!
用線性代數數值解計算實際工程問題
對某一城市的交通流量分析:
列出方程組是:
按照Ax=b的格式轉化成矩陣形式
在Ax=b中,b代表常數,這是線性方程組。注意:A必須是方陣才能求逆。對其x的求解,可能出現無解,有解,多解的情況,不能用x求b/A
所以,可以用matlab相關函數求解,使用簡化行列式的思路,對行矩陣變換!
b=[160;-40;210;-330]; U=rref([A,b]);
可以求出U的簡化行列式為:
可以看出,簡化后屬於欠定方程,屬於多解問題。
矩陣建模的方法
1. 列出全部方程,構成方程組
2. 將方程組變成矩陣
3. 求解,用matlab
復雜的系統。列出的方程通常有兩種形式。(注意,是列方程)
變量在等號左側,常數項在右側,整理出Ax=b
若有多種變量,將一個變量在等號左邊,其余變量在右邊
使其能變成:
X=QX+PU矩陣
方程是(1-Q)X=PU
傳遞函數是W=X/U=inv(1-Q)*P
Ax=b的五種寫法
Ax=B的解法
方法一:
X=B/A用逆矩陣來求(逆矩陣的前提是A是方陣)
逆矩陣的matlab函數是
V=inv(A);
Ax=B可以求出x=B/A
x=B*inv(A);
Ax=b,非齊次線性方程組
Ax=0, 齊次線性方程組
方法二:
也可以用行列式來判斷解是否存在:
判斷線性方程組的解是否存在和唯一:Ax=0
A是系數矩陣,ιAι≠0,解存在
在MATLAB中求行列式的值,用
det(A);
非齊次線性方程組Ax=b解存在且唯一的條件是det(A)≠ 0
齊次線性方程組Ax=0有非0解的條件是det(A)= 0
Ax=b三個不同角度討論
1. Ax=b 最簡行列式變換,消元,求有,無,超定,欠定解,rref
2. 把Ax當成A是列向量組,判斷是否相關,證明超定方程的最小二乘解!
3. 把A看成一個幾何變換,把x域中圖形變換到y域中去!
Ax=b變換后直線還是直線。
為頂點在(0,0),(1,0),(1,1),(0,1)的單位方塊!
這就是變換矩陣的行列式的意義!
ιAι是變換后面積的變化
在幾何里面,因為矩陣的變換是Ax,所以
不能實現平移等線性變換,所以引入齊次坐標系!(增加一維)
(旋轉是繞原點的)
先旋轉后平移,是R*M,不是R+M
Ax=b在幾何學上的應用
1. Ax=y表示向量空間中x組成的圖形經變換A后變換為向量空間y中的圖形
2. Ax=y也表示坐標變換,A中各列為y坐標的基向量,用這關系可進行正反坐標變換。
eigshow(A);
在matlab中,可顯示二維向量x沿單位圓轉動時,經A左乘后在y平面上的形狀。
x-y共線時,y=Ax= λx,λ為特征值,x為特征向量
在matlab中,求取特征值和特征向量為
[P,lambada]=eig(A);
QR分解的幾何意義
QR分解可以看成分解出新的坐標系!
在matlab中,求取結果是
[Q,R]=qr(A);
作qr分解:
從幾何角度來看:
Q的第一列代表新成立的x坐標,第二列是垂直的y坐標!(即分解后的新坐標)