




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西京学院数学软件实验任务书课程名称数学软件实验班级数0901学号0912020n4姓名王斌实验课题线性方程组直接三角分解法( 分解,分解),平方根法( 分解, 分解)实验目的熟悉线性方程组直接三角分解法( 分解,分解),平方根法( 分解, 分解)实验要求运用 等其中一种语言完成实验内容线性方程组直接三角分解法( 分解,分解)线性方程组平方根法( 分解, 分解)成绩教师一.线性方程组的直接三角分解法(Doolittle分解)设人为非奇异矩阵,且有分解式A=LU,其中L为单
位下三角矩阵,U为上三角矩阵,则称此分解为Doolittle
分解。此分解的目的是将Ax=b分解为两步,首先由Ly=b
解出y,再由Ux=y解出x。以下为实现此分解的程序:function[x,l,u]=Doolittle(A,b)clcclearallformatshortn=input('请输入矩阵的阶数:');A=zeros(n,n);fori=1:nforj=1:nA(i,j)=input('请输入矩阵中的元素:');endendAifdet(A)~=0fori=1:nb(i)=input('请输入b中的元素:');endb=b'u=zeros(n,n);l=eye(n,n);u(1,:)=A(1,:);fori=2:nform=1l(i,m)=A(i,m)/u(1,1);fork=2:nforj=k:nu(k,j)=A(k,j)-sum(l(k,1:k-1)*u(1:k-1,j));fork=2:n-1l(k+1:n,k)=(A(k+1:n,k)-sum(l(k+1:n,1:k-1)*u(1:k-1,k)))/u(k,k);endendendendulendy=zeros(n,1);y(1)=b(1);fork=2:ny(k)=b(k)-l(k,1:k-1)*y(1:k-1);endx=zeros(n,1);x(n)=y(n)/u(n,n);fork=n-1:-1:1x(k)=(y(k)-u(k,k+1:n)*x(k+1:n))/u(k,k);endendend此程序运行时,首先输入一个系数矩阵A,和列向量b
如果系数矩阵A是非奇异矩阵,则矩阵最后可求得A分
解后的矩阵L和矩阵U,以及列向量x。以下是运行结果:CominanclWindow请输入矩胜的阶数:3请输入矩除的元素:1请输入矩阵的元素:-1请输入矩除的元素:3请输入矩阵的元素:2请输入矩除的元素:-4请输入矩阵的元素:6请输入矩阵的元素:4请输入矩阵的元素:-9请输入矩阵的元素:2A=TOC\o"1-5"\h\z1 -1 32-4 64-9 2请输入b中的元素:1请输入b中的元素:41 -1 30-2 00 0 -10=0000 0 00000 1.0000 00000 2.5000 1.0000ans=-2.4000-1.00000.8000二. 分解法。设是( )2实对称矩阵,是非奇异的下三角矩阵,则称A二LLt为矩阵的 分解。其计算步骤为将分解后,首先由 求得,再由l求得解向量X以下为实现此分解的 程序function[x]=pingfg(A,b)clcclearallformatshortn=input('请输入矩阵的阶数:');fori=1:nforj=1:nA(i,j)=input('请输入矩阵中的元素');endendAfori=1:nb(i)=input('请输入b中的元素:');endb=b'[n,n]=size(A);L=zeros(n,n);L(1,1)=sqrt(A(1,1));fork=2:nL(k,1)=A(k,1)/L(1,1);endfork=2:n-1L(k,k)=sqrt(A(k,k)-sum(L(k,1:k-1)J2));fori=k+1:nL(i,k)=(A(i,k)-sum(L(i,1:k-1).*L(k,1:k-1)))/L(k,k)endendL(n,n)=sqrt(A(n,n)-sum(L(n,1:n-1)J2));%y=zeros(n,1);fork=1:nj=1:k-1;y(k)=(b(k)-L(k,j)*y(j))/L(k,k);endx=zeros(n,1);U=L';fork=n:-1:1j=k+1:n;x(k)=(y(k)-U(k,j)*x(j))/U(k,k);end此程序运行时,首先输入一个系数矩阵A(A的阶数>=2)且A为实对称正定矩阵,和列向量b矩阵最后可求得A分解后的非奇异的下三角矩阵L,以及列向量x。以下是运行结果:L=TOC\o"1-5"\h\z4 0 01 2 02-3 0ans=-111»I三.改进平方根分解法 分解因为用分解后求时需要开方,于是可以改因为用分解后求时需要开方,于是可以改进平法根分解法,使其分解时不需要开方。即将 分解为LDLt从而由 解得 再由DLtx 解得列向量x从而解的此线性方程组的解。以下是实现此过程的程序:functionimprovecholeskyclcclearallformatshortn=input('请输入矩阵的阶数:');fori=1:nforj=1:nA(i,j)=input('请输入矩阵中的元素:');endendAfori=1:nb(i)=input('请输入b中的元素:');endb=b'L=zeros(n,n);D=diag(n,0);S=L*D;fori=1:nL(i,i)=1;endfori=1:nforj=1:nif(eig(A)<=0)|(A(i,j)~=A(j,i))disp('wrong');break;endendendD(1,1)=A(1,1);fori=2:nforj=1:i-1S(i,j)=A(i,j)-sum(S(i,1:j-1)*L(j,1:j-1)');L(i,1:i-1)=S(i,1:i-1)/D(1:i-1,1:i-1);endD(i,i)=A(i,i)-sum(S(i,1:i-1)*L(i,1:i-1)');endLDy=zeros(n,1);x=zeros(n,1);fori=1:ny(i)=(b(i)-sum(L(i,1:i-1)*D(1:i-1,1:i-1)*y(1:i-1)))/D(i,i);endfori=n:-1:1x(i)=y(i)-sum(L(i+1:n,i)'*x(i+1:n));endx此程序运行时,首先输入一个系数矩阵A(A的阶数>=2)且A为实对称正定矩阵,和列向量b矩阵最后可求得A分解后的非奇异的下三角矩阵L和对角矩阵D,以及列向量x。以下是运行结果:
CommandWindow请输入矩阵的阶数:3请输入矩阵的元素:2清输入矩阵的元素:-1清输入矩阵的元素:1清输入矩阵的元素:-1清输入矩阵的元素:2请输入矩阵的元素:1请输入矩阵的元素
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 宠物医疗设备维护员考试试卷及答案
- 环保工程师(噪声控制)岗位面试问题及答案
- 机械加工设备维护计划员岗位面试问题及答案
- 研发机构股权整体转让与知识产权共享合同范本
- 电子商务股东出资入股合同
- 高新技术企业股权转让及增资扩股综合协议
- 互联网公司股权转让及业绩承诺对赌协议
- 股权激励与员工股权激励股权激励调整合同
- 环保项目合同终止及环境修复责任协议
- 新能源企业股东股份合作与技术开发合同
- 安全教育培训:实现安全文明施工
- 2025年全国统一高考英语Ⅰ卷(含答案)
- 1 感受生活中的法律 课件-道德与法治六年级上册统编版
- 中医集市活动方案
- 肿瘤随访登记培训
- 劳动仲裁内部培训
- 工厂注塑考试题及答案
- 肿瘤登记培训课件
- 2025年重庆市高考物理试卷(含答案解析)
- 电脑硬件及产品供应计划策略
- 2025年云南普洱市墨江天下一双文旅体育集团有限公司招聘笔试参考题库附带答案详解
评论
0/150
提交评论