用到的库

  所有实验一共用到了numpy、matplotlib、pandas这几个常用的科学计算库,以及内置的数学库。

正文开始

所有代码如下图,链接在文末

在这里插入图片描述

实验一

  实验一的第一个实验主要是比较三种差值方法的差异,书上的差不多忘完了,直接上运行结果吧,(全部代码见文末链接)。
在这里插入图片描述
可视化结果:
拉格朗日差值、分段线性插值、原曲线
  第二个实验,用牛顿差值求根号5的近似值,牛顿差值代码:

def Newton(datas):
   # print(datas)
   #datas是传入的x点的列表
   results = [datas[0]]
   le = len(datas)
   for n in range(1, le):
      res = 0
      for k in range(0, n + 1):
         temp = 1
         for j in range(0, n + 1):
            if k != j:
               temp = temp * (datas[k] - datas[j])
         temp = math.sqrt(datas[k]) / temp
         res = res + temp
      results.append(res)
   return results

  运行结果
在这里插入图片描述

实验二

  复化梯形公式、辛普森公式等。运行结果:(完整代码见文末链接)
在这里插入图片描述

实验三

  牛顿下山法
在这里插入图片描述

实验四

  高斯塞德尔迭代、选主元高斯消元法。
在这里插入图片描述

实验五

  欧拉方法、改进欧拉方法、4阶龙格库塔(输入示例跟实验要求的应该不一样,毕竟忘了,不过算法是通用的,输入不一样而已):
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结

  所有代码放到网盘了,压缩包只有12kb,放心下载。
传送门
提取码 9g2u
代码有些地方可能规范不太好,可自行修改一下。

Logo

助力合肥开发者学习交流的技术社区,不定期举办线上线下活动,欢迎大家的加入

更多推荐