matlab线性方程组求解
一、利用矩阵除法
>> A=[3,2,1;1,-1,3;2,4,-4];
>> b=[7;6;-2];
>> x=A\b
x =
1.0000
1.0000
2.0000
二、非齐次线性方程组
对于非齐次线性方程组,可先由伪逆求方程组的一个特解,接着用null()函数求解线性方程组的解,其总解为特解加上某系数乘以线性解的和。
>> A=[3,2,1;1,-1,3;2,4,-4];
>> b=[7;6;-2];
>> y=pinv(A)*b
y =
1.0000
1.0000
2.0000
>> Z=null(A,'r')
利用行阶梯型求解
另一种方法为对增广矩阵进行行列式化简求解
>> A=[3,2,1;1,-1,3;2,4,-4];
>> b=[7;6;-2];
>> r=rank(A)
r =
3
>> B=[A,b];//增广矩阵
>> R=rref(B)
R =
1 0 0 1
0 1 0 1
0 0 1 2
>> x=R(;,4)
>> x=R(:,4)
x =
1
1
2