MATLAB解線性方程組

2021-09-27 08:08:06 字數 1008 閱讀 4986

rref 函式 

把矩陣換為行最簡形  

可以用來解線性方程組,求矩陣的秩,求矩陣行最簡形(每行首元所在的列只有它乙個是1)首元所在的列數。

例如 我們知道乙個方程組 a*x=b  中 a 係數矩陣  和b列向量

a=[2 -2 2 6;2 -1 2 4; 3 -1 4 4;1 1 -1 3];

b=[-16;-10;-11;-12];

u=rref([a b])

u=1     0     0     0    11

0     1     0     0    -8

0     0     1     0    -6

0     0     0     1    -7

最有一列就是方程組的解

對於如下方程組

a=[-2 -2 2 2 -2;1 -5 1 -3 -1;-1 2 -5 6 5;-1 2 1 0 -1];

b=[-2 -1 2 0];

[u,ip]=rref([a b])

u=   1.0000         0            0         0         0         -0.2222

0         1.0000          0         0         0          0.2222

0                0    1.0000         0   -1.0000      -0.6667

0               0             0    1.0000         0       -0.3333

ip= 1 2 3 4 

上述方程組有4個  但是未知數有5個    通過u可得知

x3與x5有約束條件,如果  x5=c  x4=1-c

ip是 u首非零元素所在的列數

備註:還可以用matlab 中 inv() 函式來求解矩陣的逆矩陣  在左乘b  求得x   讀者 不妨可以驗證上述第乙個例子  求a的逆矩陣還可以  a^(-1)來運算

用matlab解非線性方程組

使用matlab的fsolve函式,首先需要寫乙個m檔案來描述非線性方程組,比如 function eq nxxf x global number number number 1 eq 1 x 1 normcdf x 3 0,1 80120231 normcdf x 4 0,1 exp 0.02 5...

Eigen解線性方程組

一.矩陣分解 矩陣分解 decomposition,factorization 是將矩陣拆解為數個矩陣的乘積,可分為三角分解 滿秩分解 qr分解 jordan分解和svd 奇異值 分解等,常見的有三種 1 三角分解法 triangular factorization 2 qr 分解法 qr fact...

MATLAB 線性方程組求解

clc,clear all close all 高斯消去法 a 2 3 4 3 5 2 4 3 30 線性方程組的係數矩陣 b 6 5 32 線性方程組的右端列向量 m,n size a 測量係數矩陣的維數 if m n fprint 線性方程組的係數矩陣非方陣 break end fprintf ...