- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算方法报告程序
1作业内容2 解题思路和算法组织解题思路Gauss消去法在Matlab中利用列主元的Gauss消去法求解线性方程组,寻找主元的步骤可以借助find函数找到主元的索引坐标,行交换步骤在Matlab中可以借助一个中间矩阵变量方便的实现整行交换,同时列向量中的元素也应交换。消去过程结束后,即可回带解得解向量。值得注意的是,Matlab的索引是从(1,1)开始的,因此程序中应注意循环变量的控制。另外一点是,为了验证结果的正确性,需要提前保留系数矩阵。2. LDL’和Cholesky分解对于LDL’和Cholesky分解,教材上已经给出了详细的伪代码,只需要将其转换成相应的Matlab语言即可,需要注意Matlab的索引从(1,1)开始,在所要分解的矩阵生成方面,采用两步循环即可。由于Matlab的函数M文件利于模块编程,因此分别建立了LDL’和Cholesky分解的子函数 LD和Cholesky。事实上,对于题目中的待分解矩阵,LDL’和Cholesky分解的结果是相同的。3. 追赶法三带宽矩阵线性方程组的求解不需要像Gauss消去法那么繁琐,TSS方法只需要三个已知系数向量和一个增广向量即可求解,在Matlab中采用横向追赶法求解。编程时,根据教材的详尽的伪代码编译成Matlab语言即可。4.迭代法求解线性方程组迭代法的Matlab程序也可以根据教材的伪代码得出,此时需要注意D,E,F三个矩阵的得出,Matlab的diag指令可以提取矩阵的对角元素,得到D矩阵,再利用一个循环,消去上三角元素,即可得到E矩阵,计算A-D-E即可得到F矩阵。在迭代过程中,设置一个迭代次数的计数变量,即可比较Jacobi迭代和Jacobi-sediel迭代的速度。由于两种迭代方法均编写成函数形式,初始向量为一个参量,因此可以通过改变初始向量的值,观察初始向量对迭代的影响。5. 牛顿插值和三样条插值的比较首先编辑一个Matlab程序,获得Newton插值的差商表,将多项式所用的系数储存于一个向量中,再编写一个使用Newton插值多项式计算非插值点值的计算程序(使用秦九韶算法);三样条插值也是如此,需要注意的是两点,一是M矩阵边界处的处理,实际上,本题中所逼近的函数已经知道,因此两个边界点的二阶导数值可以直接求出。二是需要编写一个查找程序,求得非插值点的位置,然后求解其值。为了运行一个脚本文件分别计算出n=5,10,20时的情况,可以设定一个循环,循环变量i=1:3,则n就可以表示为5*2^(i-1).6. Simpson公式用于求解积分方程对于本题,Simpson积分公式设计用到九个节点,据此运用复化Simpson公式可以得到一个9*9的线性方程组。此时系数矩阵和已知向量的得出编写一个名为f71的程序得出。再运用Jacobi-sediel迭代方法求解该方程组,得到9个节点处的值,运用三次样条插值就可以得到近似的解函数。最后调用三次样条的计算函数,比较其与真解的误差。7. Romberg方法计算定积分本题拟编写一个函数M文件,计算出积分结果,并统计Romberg方法达到相应精度时的运算步数,因此误差设定为参量。教材上的伪代码用Matlab实现时需要设定一个死循环,循环里面设定跳出循环的条件。8. 二分法和割线法本题中积分函数的获得可以运用Matlab的符号运算功能和Int函数获得,运算subs函数计算其在端点处的值,算法实现上,二分法在教材上的伪代码可以通过Matlab方便的实现,并将其编写成一个函数M文件,其误差参数可调,(这里设定的误差比所要求的误差稍微大一点)并且得到其解所在的上下界,在命令窗中显示。割线法的伪代码实现在Matlab中实现也是比较容易的,只不过此时需要用户设定一个循环次数上界,用于规定循环的最大次数。命令窗中得到了解的上下界,则可以选定这两个界限作为割线法的迭代起始值,并且设定误差值,即可得到所求方程的解。程序清单(双栏)1.Gauss消去法format longt=rand(3,3);b=[1e-8,2,3;-1,3.712,4.623;-2,1.072,5.643];A=b;m=[1,2,3];for k=1:2[u,p]=find(abs(b(k:end,k))==max(abs(b(k:end,k))));%查找主元下标u=u+k-1;if b(u,k)==0 disp(error! It never be 0!)endt(k,:)=b(k,:);b(k,:)=b(u,:);b(u,:)=t(k,:);l=m(k);m(k)=m(u);m(u)=l;%行交换for i=k+1:3 b(i,k)=b(i,k)/b(k,k); for j=k+1:3 b(i,j)=b(i,j)
您可能关注的文档
- 西餐牛排产品简介.doc
- 视窗信息发布系统.docx
- 视听心理学(第1章).ppt
- 视频会议图标库V1.0 20120224.ppt
- 视讯终端使用简介.ppt
- 视频会议终端产品全面对比.ppt
- 视觉误差浅谈.ppt
- 视频监控招标文件模板.doc
- 视频监控设备采购合同.doc
- 视频会议安装使用.ppt
- 白天晚上教学课件.ppt
- 2025年山东菏泽市牡丹区中医医院引进急需紧缺专业技术人才30人笔试模拟试题参考答案详解.docx
- 2025年山东菏泽市牡丹区中医医院引进急需紧缺专业技术人才30人笔试模拟试题带答案详解.docx
- 2025年山东菏泽市牡丹区中医医院引进急需紧缺专业技术人才30人笔试模拟试题及参考答案详解.docx
- 2025年山东菏泽市牡丹区中医医院引进急需紧缺专业技术人才30人笔试模拟试题及参考答案详解一套.docx
- 2025年山东菏泽市牡丹区中医医院引进急需紧缺专业技术人才30人笔试模拟试题及完整答案详解1套.docx
- 2025年山东菏泽市牡丹区中医医院引进急需紧缺专业技术人才30人笔试模拟试题及参考答案详解1套.docx
- 2025年山东菏泽市事业单位招聘急需紧缺岗位目录(第一批)笔试模拟试题参考答案详解.docx
- 2025年山东菏泽市牡丹区中医医院引进急需紧缺专业技术人才30人笔试模拟试题及答案详解1套.docx
- 画西瓜教学课件.ppt
最近下载
- 高中物理万有引力与航天模拟专题.doc VIP
- 《教父(1972)》完整中英文对照剧本.pdf VIP
- ABB喷涂机器人生产节拍提升的改进实施工艺方案.pdf VIP
- 航天电器产品手册y50系列电连接器.pdf VIP
- 2025年广水市城市社区专职工作者招聘85人考试备考试题及答案解析.docx VIP
- 二年级语文暑假习题二.doc VIP
- 房建工程监理实施细则样本合集(207页).docx VIP
- 2018-2024年海峡杯数学竞赛真题及答案(二年级).pdf VIP
- 数据处理与信息共享合作协议.doc VIP
- 2023-2024学年辽宁省实验中学、大连八中、大连二十四中、鞍山一中、东北育才学校高一下化学期末检测试题含解析.doc VIP
文档评论(0)