牛顿插值多项式(python实现)
理论知识
牛顿插值多项式(理论知识)
目标函数
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实现)相关推荐
- 牛顿插值多项式 Python 循环和递归两种实现思路
这里不介绍牛顿插值多项式数学推导,只提供Python循环和递归实现的思路与代码,想要学习牛顿插值多项式的同学可以去看数值分析课本等. 这里提供循环和递归两种思路,因为我是先想的递归,完整的代码和思路都 ...
- 插值与多项式逼近 | 牛顿插值多项式
一.牛顿插值多项式的推导 拉格朗日插值多项式的形式具有对称性,便于记忆,又便于应用于编制程序. 但公式中的都依赖于全部插值节点,在增加或减少节点时必须全部重新计算. 为克服这个缺点,把插值多项式构造成 ...
- 拉格朗日插值法与牛顿插值多项式
多项式插值 先有一个函数 f ( x ) f(x) f(x),如果给定在区间 [ a , b ] [a,b] [a,b]上的 n + 1 n+1 n+1个点 a < = x 0 < x 1 ...
- 牛顿后插matlab,大神求解析程序~~关于牛顿插值多项式的matlab程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 这个是牛顿插值求多项式的程序,从网上下载的,但是小妹看半天也看不明白,求解析!!大神帮忙解答一下,O(∩_∩)O谢谢~~ function [p2,z]= ...
- python 计算牛顿差商,计算并化简牛顿插值多项式
1. 程序 1.1 导入库 import numpy as np import sympy as sy 1.2 函数 def NewtonInt(x_value, y_value):"&qu ...
- 牛顿插值--python实现
from tabulate import tabulate import sympy""" 牛顿插值法 """class NewtonInt ...
- 5.4 数值分析: 牛顿插值多项式及余项
本文内容为东北大学数值分析国家精品慕课课程的课程讲义, 将其整理为OneNote笔记同时添加了本人上课时的课堂笔记, 且主页中的思维导图就是根据课件内容整理而来, 为了方便大家和自己查看,特将此上传到 ...
- python实现牛顿法_牛顿迭代法Python实现
例1:给定方程$$f(x) = x^2 + sin x - 1 = 0$$,判别该方程有几个实根,并用牛顿法求出方程所有实根,精确到$$10^{-4}$$. 解:利用画图法观察根的所在区间为(-2,- ...
- 牛顿迭代法Python代码,全网最详细,教学向
代码功能包括函数图像展示,初始值选取收敛区间判断,迭代结果输出,迭代过程图像输出. 因讲解过于冗长,先将完整代码直接放在这里,只是想抄个模板方便修改的可以直接拿去用啦,有不了解的地方可以再翻下去看. ...
最新文章
- Android之了解ThreadLocal
- What is the expectation maximization algorithm?
- Qt Creator管理工作区
- DBCC SHRINKFILE收缩日志/收缩数据库/收缩文件
- android xml黑体字_为 Android 换上任意喜欢的字体,你可以试试这个 Magisk 模块
- easyui弹出层在最顶层显示跳出iframe框架通用javascript代码
- python电脑版-python
- L1-043. 阅览室
- Linux内存映射——mmap
- 仿微信图片上传,带加号,且超过最大数隐藏
- 运动控制+机器视觉Demo软件框架系统概述
- linux修改中国时区
- 1041: 数列求和1
- wnmp支持php文件,Windows下配置nginx+php(wnmp)
- 南京恩博:绿水青山的守卫者
- FreeRTOS+STM32L+BC20+MQTT协议传输温湿度数据,控制继电器云平台——④华为云
- 最新CTR预测服务的GPU优化实践
- 河海大学计算机考研方向,2020河海大学计算机学硕838经验贴
- C#实现的系统内存清理
- 该来的没来,不该走的走了?
热门文章
- WINCE6.0操作系统---内核(kernel)学习
- oracle proedure 文件_关于oracle存储过程读取文件
- 3、编写一个prod()函数,可以接受一个list并利用reduce()求积
- Linux高效数据统计命令wc
- LeetCode——Longest Substring Without Repeating Characters
- 区块链软件公司:区块链的发展现状
- LCT维护子树信息(BZOJ4530:[BJOI2014]大融合)
- SVD java 算法实现
- 哪些方法不能够实施Spring AOP事务
- Spring 2.5:Spring MVC中的新特性