理论知识

牛顿插值多项式(理论知识)

目标函数

f(x)=11+x2f(x)=11+x2

f(x) = \frac{1}{1+x^2}

插值点为[-10, 10]上的整数点。

图片

代码实现

import sympy
import numpy as np
from matplotlib import pyplot as pltdef f(X):return 1 / (X ** 2 + 1)def ff(X=list()):if len(X) < 2:raise ValueError('X\'s length must be bigger than 2')ans = 0for i in range(len(X)):temp = 1.0for j in range(len(X)):if j == i:continuetemp *= (X[i] - X[j])ans += (f(X[i]) / temp)return ansdef draw():plt.rcParams['font.sans-serif'] = ['SimHei']plt.rcParams['axes.unicode_minus'] = FalseX = np.linspace(-10, 10, 100)TargetY = f(X)GetY = [Px.subs(x, i) for i in X]plt.plot(X, TargetY, label=r'$\frac{1}{x^2+1}$')plt.plot(X, GetY, label='$L(x)$')plt.legend()plt.show()def generatePx(DataX):ans = f(DataX[0])if len(DataX) == 1:return anselse:temp = 1for i in range(len(DataX) - 1):temp *= (x - DataX[i])ans += ff(DataX[:i + 2]) * tempreturn ansif __name__ == '__main__':x = sympy.symbols('x')DataX = np.linspace(-10, 10, 11)  # 插值点Px = sympy.expand(generatePx(DataX))draw()

牛顿插值多项式(python实现)相关推荐

  1. 牛顿插值多项式 Python 循环和递归两种实现思路

    这里不介绍牛顿插值多项式数学推导,只提供Python循环和递归实现的思路与代码,想要学习牛顿插值多项式的同学可以去看数值分析课本等. 这里提供循环和递归两种思路,因为我是先想的递归,完整的代码和思路都 ...

  2. 插值与多项式逼近 | 牛顿插值多项式

    一.牛顿插值多项式的推导 拉格朗日插值多项式的形式具有对称性,便于记忆,又便于应用于编制程序. 但公式中的都依赖于全部插值节点,在增加或减少节点时必须全部重新计算. 为克服这个缺点,把插值多项式构造成 ...

  3. 拉格朗日插值法与牛顿插值多项式

    多项式插值 先有一个函数 f ( x ) f(x) f(x),如果给定在区间 [ a , b ] [a,b] [a,b]上的 n + 1 n+1 n+1个点 a < = x 0 < x 1 ...

  4. 牛顿后插matlab,大神求解析程序~~关于牛顿插值多项式的matlab程序

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 这个是牛顿插值求多项式的程序,从网上下载的,但是小妹看半天也看不明白,求解析!!大神帮忙解答一下,O(∩_∩)O谢谢~~ function [p2,z]= ...

  5. python 计算牛顿差商,计算并化简牛顿插值多项式

    1. 程序 1.1 导入库 import numpy as np import sympy as sy 1.2 函数 def NewtonInt(x_value, y_value):"&qu ...

  6. 牛顿插值--python实现

    from tabulate import tabulate import sympy""" 牛顿插值法 """class NewtonInt ...

  7. 5.4 数值分析: 牛顿插值多项式及余项

    本文内容为东北大学数值分析国家精品慕课课程的课程讲义, 将其整理为OneNote笔记同时添加了本人上课时的课堂笔记, 且主页中的思维导图就是根据课件内容整理而来, 为了方便大家和自己查看,特将此上传到 ...

  8. python实现牛顿法_牛顿迭代法Python实现

    例1:给定方程$$f(x) = x^2 + sin x - 1 = 0$$,判别该方程有几个实根,并用牛顿法求出方程所有实根,精确到$$10^{-4}$$. 解:利用画图法观察根的所在区间为(-2,- ...

  9. 牛顿迭代法Python代码,全网最详细,教学向

    代码功能包括函数图像展示,初始值选取收敛区间判断,迭代结果输出,迭代过程图像输出. 因讲解过于冗长,先将完整代码直接放在这里,只是想抄个模板方便修改的可以直接拿去用啦,有不了解的地方可以再翻下去看. ...

最新文章

  1. Android之了解ThreadLocal
  2. What is the expectation maximization algorithm?
  3. Qt Creator管理工作区
  4. DBCC SHRINKFILE收缩日志/收缩数据库/收缩文件
  5. android xml黑体字_为 Android 换上任意喜欢的字体,你可以试试这个 Magisk 模块
  6. easyui弹出层在最顶层显示跳出iframe框架通用javascript代码
  7. python电脑版-python
  8. L1-043. 阅览室
  9. Linux内存映射——mmap
  10. 仿微信图片上传,带加号,且超过最大数隐藏
  11. 运动控制+机器视觉Demo软件框架系统概述
  12. linux修改中国时区
  13. 1041: 数列求和1
  14. wnmp支持php文件,Windows下配置nginx+php(wnmp)
  15. 南京恩博:绿水青山的守卫者
  16. FreeRTOS+STM32L+BC20+MQTT协议传输温湿度数据,控制继电器云平台——④华为云
  17. 最新CTR预测服务的GPU优化实践
  18. 河海大学计算机考研方向,2020河海大学计算机学硕838经验贴
  19. C#实现的系统内存清理
  20. 该来的没来,不该走的走了?

热门文章

  1. WINCE6.0操作系统---内核(kernel)学习
  2. oracle proedure 文件_关于oracle存储过程读取文件
  3. 3、编写一个prod()函数,可以接受一个list并利用reduce()求积
  4. Linux高效数据统计命令wc
  5. LeetCode——Longest Substring Without Repeating Characters
  6. 区块链软件公司:区块链的发展现状
  7. LCT维护子树信息(BZOJ4530:[BJOI2014]大融合)
  8. SVD java 算法实现
  9. 哪些方法不能够实施Spring AOP事务
  10. Spring 2.5:Spring MVC中的新特性