MATLAB数学建模 线性方程式与线性系统
線性方程
- 求解線性方程
- 高斯消去法`rref()`
- LU因子化
- 高效`mldivide()、\`
- 克萊默法則
- 線性系統
- 特征值和特征向量`eig()`
- 矩陣指數`expm()`
- 習題
本次內容涉及線性代數,視頻中大部分在講解線性代數的知識,只稍微提及了幾個matlab來實現的指令。
學了現代之后再來看一遍(逃~
求解線性方程
將線性方程組用矩陣 Ax=b 表示,則可通過求解矩陣來解方程:
高斯消去法rref()
R = rref(A) 使用 Gauss-Jordan 消元法和部分主元消元法返回A的簡化行階梯形。
對增廣矩陣 [A b] 使用rref()則可以求解 Ax=b 對應的線性方程組
LU因子化
[L,U,P] = lu(A) 將滿矩陣或稀疏矩陣 A 分解為一個上三角矩陣 U 和一個經過置換的下三角矩陣 L,使得 A = L*U;返回一個置換矩陣 P,并滿足 A = P’*L*U。
通過執行 LU 分解,然后使用因子來簡化問題,對線性方程組求解。
一些矩陣分解函數
- qr():正交三角分解
- ldl():Hermitian 不定矩陣的分塊 LDL 分解
- ilu():不完全 LU 分解
- chol():Cholesky 分解
- gsvd():廣義奇異值分解
- svd():奇異值分解
高效mldivide()、\
以上兩種方法在對于一般的線性方程組的求解其實并不友好,過于繁瑣。實際上,更加高效的方式是使用A\b(或者mldivide(A,b))可直接求得方程組的根 向量x。
克萊默法則
求解矩陣方程 Ax=b ,x等于A的逆矩陣乘以b,即 x=A-1b
通過inv(A)對矩陣A求逆,然后直接計算即可:x = inv(A)*b
需要注意,矩陣A的逆矩陣可能不存在
線性系統
特征值和特征向量eig()
e = eig(A) 返回一個列向量,其中包含方陣 A 的特征值;
[V,D] = eig(A) 返回特征值的對角矩陣 D 和矩陣 V,其列是對應的右特征向量,使得 AV = VD。
模糊綜合評價中利用eig()求解最大特征根和權向量:
矩陣指數expm()
Y = expm(X) 計算 X 的矩陣指數。如果 X 有一組完整的特征向量 V 和對應特征值 D,[V,D] = eig(X),則expm(X) = V*diag(exp(diag(D)))/V;
對于逐個元素的指數運算,使用 exp()
習題
syms R1 R2 R3 R4 R5 V1 V2; A=[R1 0 0 R4 0;0 R2 0 -R4 R5;0 0 -R3 0 R5;1 -1 0 -1 0;0 1 -1 0 -1]; b=[V1;0;V2;0;0]; x=A\b以上內容為個人筆記,部分圖片來源于郭老師課件或課程截圖。
筆記匯總:MATLAB基礎教程
課程視頻:https://www.bilibili.com/video/BV1DA411Y7bN
總結
以上是生活随笔為你收集整理的MATLAB数学建模 线性方程式与线性系统的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 请更换备份电池 pos机_免费邮寄低费率
- 下一篇: RabbitMQ在Windows环境下的