Lagrange插值法:Lagrange插值法:Lagrange插值法:给定一组点(x1,y1),(x2,y2)...(xn,yn)给定一组点 (x_{1},y_{1}),(x_{2},y_{2})...(x_{n},y_{n})给定一组点(x1​,y1​),(x2​,y2​)...(xn​,yn​)n次拉格朗日插值基函数Pi(x)=∏j=1,j≠inx−xjxi−xjn次拉格朗日插值基函数 \ \ P_{i}(x)=\prod_{j=1,j\neq i}^{n}\frac{x-x_{j}}{x_{i}-x{j}}n次拉格朗日插值基函数  Pi​(x)=j=1,j​=i∏n​xi​−xjx−xj​​拉格朗日插值多项式Ln(x)=∑i=1nyiPi拉格朗日插值多项式\ \ L_{n}(x)=\sum_{i=1}^{n}y_{i}P_{i}拉格朗日插值多项式  Ln​(x)=i=1∑n​yi​Pi​
举个例子:假如我们只有三个点, 那么
L2(x)=(x−x1)(x−x2)(x0−x1)(x0−x2)y0+(x−x0)(x−x2)(x1−x0)(x1−x2)y1+(x−x0)(x−x1)(x2−x0)(x2−x1)y2L_{2}(x)=\frac{(x-x_{1})(x-x_{2})}{(x_{0}-x_{1})(x_{0}-x_{2})}y_{0}+\frac{(x-x_{0})(x-x_{2})}{(x_{1}-x_{0})(x_{1}-x_{2})}y_{1}+\frac{(x-x_{0})(x-x_{1})}{(x_{2}-x_{0})(x_{2}-x_{1})}y_{2}L2​(x)=(x0​−x1​)(x0​−x2​)(x−x1​)(x−x2​)​y0​+(x1​−x0​)(x1​−x2​)(x−x0​)(x−x2​)​y1​+(x2​−x0​)(x2​−x1​)(x−x0​)(x−x1​)​y2​
python 实现
方法一:

from scipy.interpolate import lagrange
x = [1,3,5]
y = [2,10,1]
print(lagrange(x, y))  #拟合曲线
print(lagrange(x, y)(10))  #估值

结果:

        2
-2.125 x + 12.5 x - 8.375
-95.875

方法二:

x = [1, 3, 5]
y = [2, 10, 1]
def lagrange_Interpolation(x1):P = []L_n = 0for i in range(len(x)):numerator=1  #分子初始化denominator=1  #分母初始化for j in range(len(x)):if j!=i:numerator*=(x1-x[j])denominator*=(x[i]-x[j])P.append(numerator/denominator)for i in range(len(y)):L_n+=y[i]*P[i]return round(L_n,3)  #保留3位小数
print(lagrange_Interpolation(10))

结果:

-95.875

看拟合曲线图像:

import numpy
import matplotlib
from matplotlib import pyplot
x2=numpy.linspace(-10,10,20,endpoint=False) #从-10到10 20个点去拟合曲线
print(x2)
y2=[]
for i in range(len(x2)):y2.append(lagrange_Interpolation(x2[i]))
print(y2)pyplot.plot(x2,y2)
pyplot.scatter(x,y, marker=".")
pyplot.show()

结果:

拉格朗日差值法python实现相关推荐

  1. 拉格朗日差值法----算法学习

    一.定义: 对某个多项式函数,已知有给定的k + 1个取值点: 其中对应着自变量的位置,而对应着函数在这个位置的取值. 假设任意两个不同的xj都互不相同,那么应用拉格朗日插值公式所得到的拉格朗日插值多 ...

  2. python输入两个数求差_python差值_python差值法_python求差值 - 云+社区 - 腾讯云

    广告关闭 回望2020,你在技术之路上,有什么收获和成长么?对于未来,你有什么期待么?云+社区年度征文,各种定制好礼等你! 环境依赖api 网关提供 python 2.7 和 python 3 两个版 ...

  3. python二分法求最值_数值分析之二分法、试值法 python

    @ 数值分析之非线性方程求解 文章目录 二分法.试值法的本质 (1) 二分法求利率 题目 输入输出格式 举例 输入: 输出: 思路和要点 代码 结果 (2)试值法法求利率 题目 输入输出格式 举例 输 ...

  4. P4593-[TJOI2018]教科书般的亵渎【拉格朗日差值】

    正题 题目链接:https://www.luogu.com.cn/problem/P4593 题目大意 场上有若干只怪,最高的为nnn,每个怪血量不同,有mmm个血量不存在. 不停释放亵渎(全场打一, ...

  5. 包含 min 函数的栈(辅助栈,保存差值,Python)

    定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min.push 及 pop 的时间复杂度都是 O(1). 方法1:辅助栈 栈先进后出的性质的理解: 如果一个 ...

  6. P5437-[XR-2]约定【拉格朗日差值,数学期望】

    正题 题目链接:https://www.luogu.com.cn/problem/P5437 题目大意 nnn个点的完全图,连接i,ji,ji,j的边权值为(i+j)k(i+j)^k(i+j)k.随机 ...

  7. [51nod]1229 序列求和 V2(数学+拉格朗日差值)

    题面 传送门 题解 这种颓柿子的题我可能死活做不出来-- 首先\(r=0\)--算了不说了,\(r=1\)就是个裸的自然数幂次和直接爱怎么搞怎么搞了,所以以下都假设\(r>1\) 设 \[s_p ...

  8. 拉格朗日差值 - 杜教板子

    牛客网暑期ACM多校训练营(第一场) F Sum of Maximum 杜教板子: 证明https://blog.csdn.net/Lee_w_j__/article/details/81135539 ...

  9. python表示差值_python差值函数

    python可否用自定义函数对数据进行插值 除了interp函数自带的插值方式,可否用一个自定义的函数表达式对interp直接定义a=True/False就行,示例代码: #定义布尔值类型参数a,b, ...

最新文章

  1. R语言ggplot2可视化散点图、可视化两个数值变量之间的关系、使用geom_smooth函数基于loess方法拟合数据点之间的趋势关系曲线、自定义数据点的大小、色彩、添加主标题、副标题、题注信息
  2. 爱了爱了!0.052 秒打开 100GB 数据,这个Python开源库火爆了!
  3. CALayer 一些简单的小例子
  4. 夺命雷公狗---无限级分类NO3
  5. python安装以及版本检测
  6. anaconda中安装xgboost_在windows64位Anaconda3环境下安装XGBoost
  7. Mysql学习总结(36)——Mysql查询优化
  8. python装饰器带参数函数_python带参数装饰器的两种写法
  9. (转)思科VPP源码分析(dpdk node分析)
  10. 【2019杭电多校第一场1004=HDU6581】Vacation(思维+避免超时)
  11. 如何通过GoLand进行Debug
  12. vncserver 设置过万的分辨率_修改vnc远程桌面分辨率,2种修改vnc远程桌面分辨率的方法...
  13. 使用java生成折线图_Java折线图简单绘制
  14. beego框架:static目录下的apk文件浏览器下载使用正常,手机浏览器下载无法解析安装
  15. 单链表的创建(头插法尾插法),插入,删除
  16. easypoi一对多导入_easypoi导入Excel最佳实践
  17. 一、Java面试基础之面向对象的特征:继承、封装和多态(原创实例)
  18. Windows 系统磁盘克隆
  19. Kubernetes之kubectl常用命令使用指南:3:故障对应
  20. 非线性方程(组)的求解

热门文章

  1. Radiology:皮层厚度预测轻度认知障碍转化为帕金森痴呆症
  2. 计算机发展史简介(详细)
  3. 【CF98E】Help Shrek and Donkey(博弈,纳什均衡)
  4. 2017 闰秒 linux,应对linux下的闰秒
  5. 赛盛EMC培训笔记(3)
  6. 易语言5.11完全破解补丁-支持静态编译
  7. 富翁说:“你懂你妹啊
  8. 智慧地球, 智慧城市
  9. 按字母索引的中国城市名称 json 数据
  10. Matlab中希腊字母的输入方法