加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

运用matlab求解齐次线性方程组和非齐次线性方程组得通解

(2013-01-20 18:23:25)
标签:

it

分类: matlab编程
**********************求齐次线性方程组得通解*****************************
在matlab中,函数null来求解零空间,即满足A*X=0的解空间,实际上是求出解空间的一组基
即  基础解系

用matlab建立m文件:
format rat       %指定有理式格式输出
A;
b;
r=rank(A);
bs=null(A,‘r’);
pretty(X)
********************求非齐次线性方程组的通解(A*X=b)********************
非齐次线性方程组需要先判断方程组是否有解,若有解,再去求通解。
步骤为:
第一步: 判断A*X=b是否有解。利用系数矩阵和增广矩阵的秩进行比较。
第二步:求A*X=b的一个特解。
第三步:求A*X=0的通解。
第四步:AX=b的通解为:A*X=0的通解加上AX=b的一个特解。

在matlab中建立M文件如下:
clear all
A;
b;
[m,n]=size(A);
R=rank(A);
B=[A b];
Rr=rank(B);
format rat
if R==Rr&R==n
X=A\b;
else if R==Rr&R==n
x=A\b;
C=null(A,'r')
else X='no solution!'
end

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有