Matlab 齐次线性方程组求解举例
齐次线性方程组有非零解的条件
定理
一个齐次线性方程组有非零解的充分且必 要条件是:它的系数矩阵的秩r小于它的未知量的 个数n。 推论1 含有n个未知量n个方程的齐次线性方程 组有非零解的充分且必要条件是:方程组的系数 行列式等于零。 推论2 若在一个齐次线性方程组中, 方程的个数m小于未知量的个数n,那 么这个方程组一定有非零解。
- 齐次线性方程组只有零解的条件
- 矩阵的秩= 未知量的个数
- 系数矩阵列满秩
系数矩阵的列向量组线性无关满足以上三个条件中的一个就只有零解。
举例:
syms k; %定义符号k
A = [1-k -2 4;
2 3-k 1;
1 1 1-k];
D = det(A);
M = factor(D); %因式分解
M
输出:
从而得到当k= 0,k= 2,k=3时,原方程有非零解。
定义
齐次线性方程组的一组解向量
如果满足如下条件:
(1)这组解向量线性无关;
(2)方程组的任一解向量都可被该组解向量线性表出,那么,就称该组解向量是齐次线性方程组的一个基础解系。
举例2:
A = [1 1 -3 -1;
3 -1 -3 4;
1 5 -9 -8];
b = [1 4 0]';
B = [A b];
n = 4;
R_A = rank(A);
R_B = rank(B);
R_A;
R_B;
format rat;
if R_A == R_B &R_A==n
X = A\b;
elseif R_A==R_B &R_A<n
X = A\b;
C = null(A,'r') %求基础解系
else X = 'Equation has no solves'
end
例:
% 求解方程
A = [1 1 -3 -1;
3 -1 -3 4;
1 5 -9 -8];
b = [1 4 0]';
B = [A b];
format rat; %结果以分数胡形式显示
C=rref(B); %简化的行阶梯形矩阵(Gauss-Jordan 消元法)