第二章解线性方程组的直接方法 matlab用法Word文件下载.docx
- 文档编号:15345490
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:22
- 大小:179.93KB
第二章解线性方程组的直接方法 matlab用法Word文件下载.docx
《第二章解线性方程组的直接方法 matlab用法Word文件下载.docx》由会员分享,可在线阅读,更多相关《第二章解线性方程组的直接方法 matlab用法Word文件下载.docx(22页珍藏版)》请在冰豆网上搜索。
ifRA==n
因为RA=RB=n,所以此方程组有唯一解.'
else
disp('
因为RA=RB<
n,所以此方程组有无穷多解.'
例2.1.4判断下列线性方程组解的情况.如果有唯一解,则用表3-2方法求解.
(1)
(2)
(3)(4)
解在MATLAB工作窗口输入程序
>
A=[23-15;
312-7;
41-36;
1-24-7];
b=[0;
0;
0];
[RA,RB,n]=jiepb(A,b)
运行后输出结果为
因为RA=RB=n,所以此方程组有唯一解.
RA=4,RB=4,n=4
在MATLAB工作窗口输入
X=A\b,
运行后输出结果为X=(0000)’.
(2)在MATLAB工作窗口输入程序
A=[34-57;
2-33-2;
411-1316;
7-213];
b=[0;
[RA,RB,n]=jiepb(A,b)
运行后输出结果
n,所以此方程组有无穷多解.
RA=2,RB=2,n=4
(3) 在MATLAB工作窗口输入程序
A=[42-1;
3-12;
1130];
b=[2;
10;
8];
[RA,RB,n]=jiepb(A,B)
因为RA~=RB,所以此方程组无解.
RA=2,RB=3,n=3
(4)在MATLAB工作窗口输入程序
A=[21-11;
42-21;
21-1-1];
b=[1;
2;
1];
RA=2,RB=2,n=3
2.2三角形方程组的解法及其MATLAB程序
2.2.2解三角形方程组的MATLAB程序
解上三角形线性方程组的MATLAB程序
function[RA,RB,n,X]=shangsan(A,b)
n=length(b);
RB=rank(B);
)
X=zeros(n,1);
X(n)=b(n)/A(n,n);
fork=n-1:
-1:
1
X(k)=(b(k)-sum(A(k,k+1:
n)*X(k+1:
n)))/A(k,k);
end
例2.2.2用解上三角形线性方程组的MATLAB程序解方程组
.
A=[5-123;
0-27-4;
0065;
0003];
b=[20;
-7;
4;
6];
[RA,RB,n,X]=shangsan(A,b)
RA=RB=
4,4,
n=
4,
X=[2.4-4.0-1.02.0]’
2.3高斯(Gauss)消元法和列主元消元法及其MATLAB程序
2.3.1高斯消元法及其MATLAB程序
用高斯消元法解线性方程组的MATLAB程序
function[RA,RB,n,X]=gaus(A,b)
C=zeros(1,n+1);
forp=1:
n-1
fork=p+1:
n
m=B(k,p)/B(p,p);
B(k,p:
n+1)=B(k,p:
n+1)-m*B(p,p:
n+1);
b=B(1:
n,n+1);
A=B(1:
n,1:
n);
forq=n-1:
X(q)=(b(q)-sum(A(q,q+1:
n)*X(q+1:
n)))/A(q,q);
else
例2.3.2用高斯消元法和MATLAB程序求解下面的非齐次线性方程组,并且用逆矩阵解方程组的方法验证.
解在MATLAB工作窗口输入程序
A=[1-11-3;
0-1-11;
2-2-46;
1-2-41];
0;
-1;
-1];
[RA,RB,n,X]=gaus(A,b)
X=
0
-0.5000
0.5000
RA=
4
RB=
n=
2.3.2列主元消元法及其MATLAB程序
用列主元消元法解线性方程组的MATLAB程序
function[RA,RB,n,X]=liezhu(A,b)
[Y,j]=max(abs(B(p:
n,p)));
C=B(p,:
);
B(p,:
)=B(j+p-1,:
B(j+p-1,:
)=C;
例2.3.3用列主元消元法解线性方程组的MATLAB程序解方程组
A=[0-1-11;
1-11-3;
b=[0;
1;
-1;
[RA,RB,n,X]=liezhu(A,b)
RA=4,RB=4,n=4,X=[0-0.50.50]’
2.4LU分解法及其MATLAB程序
2.4.1判断矩阵LU分解的充要条件及其MATLAB程序
判断矩阵能否进行LU分解的MATLAB程序
functionhl=pdLUfj(A)
[nn]=size(A);
ifRA~=n
因为A的n阶行列式hl等于零,所以A不能进行LU分解.A的秩RA如下:
'
),RA,hl=det(A);
return
ifRA==n
forp=1:
n,h(p)=det(A(1:
p,1:
p));
end
hl=h(1:
fori=1:
ifh(1,i)==0
因为A的r阶主子式等于零,所以A不能进行LU分解.A的秩RA和各阶顺序主子式值hl依次如下:
),hl;
RA,return
ifh(1,i)~=0
因为A的各阶主子式都不等于零,所以A能进行LU分解.A的秩RA和各阶顺序主子式值hl依次如下:
hl;
RA
例2.4.1判断下列矩阵能否进行LU分解,并求矩阵的秩.
(1);
(2);
(3).
解
(1)在MATLAB工作窗口输入程序
A=[123;
1127;
456];
hl=pdLUfj(A)
RA=3,hl=110-48
(2)在MATLAB工作窗口输入程序
127;
RA=3,hl=1012
(3)在MATLAB工作窗口输入程序
123;
因为A的n阶行列式hl等于零,所以A不能进行LU分解.A的秩RA如下
RA=2,hl=0
2.4.2直接LU分解法及其MATLAB程序
将矩阵进行直接LU分解的MATLAB程序
functionhl=zhjLU(A)
因为A的n阶行列式hl等于零,所以A不能进行LU分解.A的秩RA如下:
h(p)=det(A(1:
),hl;
forj=1:
U(1,j)=A(1,j);
fork=2:
fori=2:
forj=2:
L(1,1)=1;
L(i,i)=1;
ifi>
j
L(1,1)=1;
L
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二章 解线性方程组的直接方法 matlab用法 第二 线性方程组 直接 方法 matlab 用法
![提示](https://static.bdocx.com/images/bang_tan.gif)