matlab插值函数的优缺点,Python和Matlab插值函数的不同结果

matlab插值函数的优缺点,Python和Matlab插值函数的不同结果我正在将代码从Matlab转换为Python2.7,在转换interp1函数时遇到问题。我看过已经贴出来的类似问题,但还没有解决。问题是新生成的值(yn)的向量的第一个值不同,而其余的几乎相同。当使用不同的插值方法时,我得到的值略有不同,但是同样的问题。目前我真的不知道为什么会这样。有没有人对此有任何了解或看到我可能犯的错误?谢谢。在变量:x=[5.5,5.46678,5….

大家好,又见面了,我是你们的朋友全栈君。

我正在将代码从Matlab转换为Python2.7,在转换interp1函数时遇到问题。我看过已经贴出来的类似问题,但还没有解决。问题是新生成的值(yn)的向量的第一个值不同,而其余的几乎相同。当使用不同的插值方法时,我得到的值略有不同,但是同样的问题。目前我真的不知道为什么会这样。有没有人对此有任何了解或看到我可能犯的错误?谢谢。在

变量:x = [5.5 , 5.46678 , 5.408315, 5.33929 , 5.261025, 5.17605 ,

5.08684 , 4.995375, 4.902755, 4.80942 , 4.7157 , 4.621815,

4.52782 , 4.433715, 4.339555, 4.245395, 4.151235, 4.05713 ,

3.962915, 3.868645, 3.77432 , 3.680105, 3.585945, 3.491895,

3.397845, 3.303905, 3.21002 , 3.11619 , 3.02247 , 2.928805,

2.835195, 2.741695, 2.64836 , 2.55519 , 2.462295, 2.36951 ,

2.27689 , 2.184435, 2.092255, 2.00035 , 1.908775, 1.817475,

1.726505, 1.63592 , 1.54583 , 1.4564 , 1.36752 , 1.279245,

1.19163 , 1.10539 , 1.02135 , 0.94006 , 0.86163 , 0.786115,

0.713515, 0.64394 , 0.577555, 0.514635, 0.45562 , 0.400785,

0.35035 , 0.304425, 0.26301 , 0.22627 , 0.193875, 0.16544 ,

0.14058 , 0.118745, 0.09944 , 0.082335, 0.067265, 0.05401 ,

0.042405, 0.03234 , 0.023595, 0.01628 , 0.010175, 0.00528 ,

0.001485, -0.00121 , -0.002805, -0.003355, -0.00275 , -0.000935]

y = [0.19896, 0.18722, 0.155 , 0.13133, 0.11168, 0.09543,

0.0815 , 0.06556, 0.04191, 0.0117 , 0.00513, 0.00123,

-0.0036 , -0.00885, -0.01429, -0.01985, -0.02532, -0.03065,

-0.03574, -0.04082, -0.04594, -0.05104, -0.05596, -0.06091,

-0.06561, -0.07023, -0.07482, -0.07913, -0.08341, -0.08749,

-0.09155, -0.09551, -0.09952, -0.10334, -0.10694, -0.11011,

-0.11319, -0.11587, -0.11856, -0.12092, -0.12277, -0.12428,

-0.12506, -0.12567, -0.12567, -0.12497, -0.12369, -0.12135,

-0.11944, -0.1191 , -0.11983, -0.11819, -0.11197, -0.10004,

-0.08016, -0.05285, -0.01569, 0.03055, 0.08527, 0.1492 ,

0.21971, 0.29507, 0.37453, 0.45682, 0.53766, 0.61562,

0.6916 , 0.763 , 0.82907, 0.88665, 0.9367 , 0.97418,

0.99617, 0.99807, 0.97457, 0.91708, 0.81796, 0.66987,

0.46359, 0.19778, -0.13378, -0.54232, -1.0126 , -1.5297 ]

xn = [ 0., 0.61111111, 1.22222222, 1.83333333, 2.44444444,

3.05555556, 3.66666667, 4.27777778, 4.88888889, 5.5 ]

Matlab代码:

^{pr2}$

Python代码:from scipy.interpolate import InterpolatedUnivariateSpline

yn_f1 = InterpolatedUnivariateSpline(x[::-1], y[::-1])

yn_py1 = yn_f1(xn)

from scipy.interpolate import interp1d

yn_f2 = interp1d(x[::-1], y[::-1])

yn_py2 = yn_f2(xn)

import numpy as np

yn_py3 = np.interp(xn, x[::-1], y[::-1])

结果:yn_mat = [-0.7596, -0.0345, -0.1201, -0.1240, -0.1075,

-0.0819, -0.0517, -0.0179, 0.0374, 0.1990 ]

yn_py1 = [-0.23310355, -0.03594415, -0.11996893, -0.12406894, -0.10757466,

-0.08191329, -0.05174936, -0.01793778, 0.0371338 , 0.19896 ]

yn_py2 = [ 0.31712327, -0.03447354, -0.12010691, -0.12401772, -0.10754986,

-0.08189905, -0.05174217, -0.01793785, 0.03742192, 0.19896 ]

yn_py3 = [ 0.31712327, -0.03447354, -0.12010691, -0.12401772, -0.10754986,

-0.08189905, -0.05174217, -0.01793785, 0.03742192, 0.19896 ]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/146082.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • layui 如何去dom_layui 弹出层

    layui 如何去dom_layui 弹出层这是一个可以重要也可以不重要的方法,重要的是,它的权利真的很大,尤其是在模块化加载layer时,你会发现你必须要用到它。它不仅可以配置一些诸如路径、加载的模块,甚至还可以决定整个弹层的默认参数。而说它不重要,是因为多数情况下,你会发现,你似乎不是那么十分需要它。但你真的需要认识一下这位伙计。如果您是采用seajs或者requirejs加载layer,你需要执行该方法来完成初始化的配置。比如:lay…

    2022年6月11日
    34
  • postGresql_oracle生成uuid函数

    postGresql_oracle生成uuid函数之前用sqlserver,获取uuid,获取直接selectnewid()就好了,但是postgresql没有这种函数,只好自己写个了。如下:CREATEORREPLACEFUNCTIONuuid() RETURNStextAS$$declarestr1text;str2text;Mactext;begin–MAC地址Mac=’aa:aa:a…

    2022年8月9日
    5
  • 欧拉函数最全总结

    欧拉函数最全总结文章目录欧拉函数的内容一、欧拉函数的引入二、欧拉函数的定义三、欧拉函数的性质四、欧拉函数的计算方法(一)素数分解法(二)编程思维1.求n以内的所有素数2.求φ(n)3.格式化输出0-100欧拉函数表(“x?”代表十位数,“x”代表个位数)五、欧拉函数相关定理以及证明(一)定理1:缩系与欧拉函数的关系(二)定理2:缩系的充要条件(三)定理3:缩系拓展1.简单证明:(a,m)=1,(x,m)=1,故(ax,m)=1。(四)定理4:设m>1,(a,m)=1,则aφ(m)≡1(modm).1.**若ac≡bc

    2022年8月22日
    3
  • 5款优秀的文档管理系统「建议收藏」

    5款优秀的文档管理系统「建议收藏」1.easyopen一个简单易用的接口开放平台,平台封装了常用的参数校验、结果返回等功能,开发者只需实现业务代码即可。技术点加密算法(MD5、AES、RSA) Netty(编解码、长连接、断开重连) 限流(漏桶策略、令牌桶策略) 权限(RBAC、校验) session(单机、分布式) 注解(文档生成) token(jwt、accessToken) SDK(Java、C#…

    2022年5月18日
    64
  • Oracle创建新用户[通俗易懂]

    Oracle创建新用户[通俗易懂]Oracle新用户创建1,数据库链接黑窗口输入:sqlplus/assysdba 连接数据库2,表空间创建输入 createtablespacetestdatafile’D:\Oracle\oradata\test.dbf’size50M;创建数据库表空间; test 表空间名称 D:\Oracle\oradata\test.dbf 表空间文件路径\文件名称 50M 表空间大小补充:1),若表空间

    2022年5月12日
    34
  • 电容论坛(电感电容电压公式)

    玉山YGR智能电容以客为尊智能电容器模块是新一代无功补偿模块化装置,结合绿色智能电网的精神应用于绿色电网。产品以微电子技术为基础,集成了自动测控、无功优化、过零切换、多重保护、网络通信、大屏幕显示等技术,实现了低压无功补偿的全部功能,并改变不同的组合构造不同的补偿方案。它是一种智能化、模块化、标准化、集约化的无功补偿装置。 投切电容器组大约20-30毫秒内就完成一个全部动作,这种…

    2022年4月15日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号