预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共17页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

计算方法A上机实验报告姓名:苏福班级:硕4020学号:3114161019一、上机练习目的1)复习和巩固数值计算方法的基本数学模型,全面掌握运用计算机进行数值计算的具体过程及相关问题。2)利用计算机语言独立编写、调试数值计算方法程序,培养学生利用计算机和所学理论知识分析解决实际问题的能力。二、上机练习任务1)利用计算机语言编写并调试一系列数值方法计算通用程序,并能正确计算给定题目,掌握调试技能。2)掌握文件使用编程技能,如文件的各类操作,数据格式设计、通用程序运行过程中文件输入输出运行方式设计等。3)写出上机练习报告。三、上机题目1.共轭梯度法求解线性方程组。(第三章)2.三次样条插值(第四章)3.龙贝格积分(第六章)4.四阶龙格-库塔法求解常微分方程的初值问题四、上机报告题目1:共轭梯度法求解线性方程组算法原理共轭梯度法是把求解线性方程组的问题转化为求解一个与之等价的二次函数极小值的问题。从任意给定的初始点出发,沿一组关于矩阵共轭的方向进行线性搜索,在无舍入误差的假定下,最多迭代次(其中为矩阵的阶数),就可求得二次函数的极小值,也就求得了线性方程组的解。定理:设是阶对称正定矩阵,则是方程组的解得充分必要条件是是二次函数的极小点,即共轭梯度法的计算公式:2.程序框图3.MATLAB编程实现(1)编写共轭梯度法求解对称正定矩阵的线性方程组见附录(myge.m):functionx=myge(A,b)输入对称正定矩阵及对应的列向量,初始向量设为0,精度取为。函数的输出即为由共轭梯度发求解的近似解。(2)编写具体算例求解(example.m):clcclearall%例题3.4.2A0=[2,0,1;0,1,0;1,0,2];b0=[3,1,3]';myge(A0,b0);%习题3.2n=100;%矩阵阶数A=zeros(n,n);b=zeros(n,1);b(1)=-1;b(n)=-1;A(1,1)=-2;A(1,2)=1;A(n,n-1)=1;A(n,n)=-2;fori=2:n-1A(i,i-1)=1;A(i,i)=-2;A(i,i+1)=1;endmyge(A,b);算例1(课本例题3.4.2):算例2(课后习题计算实习3.2):4.算例结果算例1:x=1.0000000000000001.0000000000000001.000000000000000迭代次数:k=2算例2(n=100):x=0.9999999999999991.0000000000000050.9999999999999821.0000000000000380.9999999999999761.0000000000000131.0000000000000001.0000000000000080.9999999999999841.0000000000000170.9999999999999771.0000000000000520.9999999999999421.0000000000000580.9999999999999741.0000000000000110.9999999999999921.0000000000000280.9999999999999831.0000000000000081.0000000000000210.9999999999999771.0000000000000270.9999999999999871.0000000000000310.9999999999999661.0000000000000430.9999999999999851.0000000000000190.9999999999999931.0000000000000220.9999999999999901.0000000000000191.0000000000000061.0000000000000041.0000000000000110.9999999999999961.0000000000000220.9999999999999911.0000000000000260.9999999999999961.0000000000000181.0000000000000041.0000000000000141.0000000000000121.0000000000000081.0000000000000091.0000000000000151.0000000000000101.0000000000000121.0000000000000121.0000000000000101.0000000000000151.0000000000000071.0000000000000151.0000000000000071.0000000000000121.0000000000000