计算方法上机实习:不定点迭代法与高斯消去法

需积分: 0 0 下载量 120 浏览量 更新于2024-06-30 收藏 1.17MB DOCX 举报
"刘宇鹏同学的191181班20181003174号计算方法课程的上机实习报告,包含三个编程题目:不动点迭代法求解方程、牛顿法求解平方根以及高斯消去法的应用。" 在本次计算方法的上机实习中,刘宇鹏同学完成了三个编程任务,涵盖了数值计算中的重要算法。首先,我们来看第一个题目——使用不动点迭代法求解方程。不动点迭代法是一种求解方程f(x) = 0的方法,它基于迭代公式x_{n+1} = g(x_n),其中g是方程f的变换形式。在给定的代码中,函数`k(d)`实现了这个变换,即g(d) = ((d^5 - 2d^2 + 2)/3)^(1/3),然后`dd(c, d)`函数通过不断应用`k(d)`直到满足精度要求(误差小于1e-9)来寻找不动点。在主函数`main()`中,`dd(0, 1)`被调用来求解方程的根。 第二个题目是使用牛顿法求解平方根。牛顿法是一种寻找函数零点的迭代算法,迭代公式为x_{n+1} = x_n - f(x_n)/f'(x_n)。在这个例子中,函数`f(x)`定义为f(x) = x^2 - 5,它的导数`f1(x)`为2x。`function(x)`函数执行牛顿迭代过程,直到连续两次计算的函数值之间的差的绝对值小于0.000000001。最终,`function(x)`返回了根号五的近似值。 最后一个题目是应用高斯消去法解决线性方程组。高斯消去法是一种通过一系列行变换将系数矩阵转化为阶梯形矩阵,进而求解线性方程组的方法。虽然代码中没有给出完整的高斯消去法实现,但`f(x)`和`f1(x)`的定义暗示了可能的线性方程形式,比如x^2 - 5 = 0可以看作是线性方程x - sqrt(5) = 0的形式,不过通常高斯消去法会处理多个变量的线性方程组。 通过这三个编程题目,刘宇鹏同学深入理解并实践了数值计算中的基本算法,包括不动点迭代、牛顿法和高斯消去法,这些都是解决实际问题时不可或缺的工具。这些方法不仅在理论上有重要意义,而且在科学计算、工程计算以及数据分析等领域有着广泛应用。