python interpolate.interp1d_将MATLAB的interp1转换为Python interp1d

python interpolate.interp1d_将MATLAB的interp1转换为Python interp1d我正在将MATLAB代码转换为Python代码。在代码使用MATLAB中的函数interp1。我发现scipy函数interp1d应该是我想要的,但我不确定。你能告诉我我实现的代码是否正确吗?我的Python版本是3.4.1,MATLAB版本是R2013a,但是代码已经在2010年左右实现了]。在MATLAB:S_T=[0.0,2.181716948,4.363766232,6.5464…

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

我正在将MATLAB代码转换为Python代码。在

代码使用MATLAB中的函数interp1。我发现scipy函数interp1d应该是我想要的,但我不确定。你能告诉我我实现的代码是否正确吗?

我的Python版本是3.4.1,MATLAB版本是R2013a,但是代码已经在2010年左右实现了]。在

MATLAB:S_T = [0.0, 2.181716948, 4.363766232, 6.546480392, 8.730192373, …

10.91523573, 13.10194482, 15.29065504, 17.48170299, 19.67542671, …

21.87216588, 24.07226205, 26.27605882, 28.48390208; …

1.0, 1.000382662968538, 1.0020234819906781, 1.0040560245904753, …

1.0055690037530718, 1.0046180687475195, 1.000824223678225, …

0.9954866694014762, 0.9891408937764872, 0.9822543350571298, …

0.97480163751874, 0.9666158376141503, 0.9571711322843011, …

0.9460998105962408; …

1.0, 0.9992731388936672, 0.9995093132493109, 0.9997021748479805, …

0.9982835412406582, 0.9926319477117723, 0.9833685776596993, …

0.9730725288209638, 0.9626092685176822, 0.9525234896714959, …

0.9426698515488858, 0.9326788630704709, 0.9218100196936996, …

0.9095717918978693];

S = transpose(S_T);

dist = 0.00137;

old = 15.61;

ll = 125;

ref = 250;

start = 225;

high = 7500;

low = 2;

U = zeros(low,low,high);

for ii=1:high

g0= start-ref*dist*ii;

g1= g0+ll;

if(g0 <=0.0 && g1 >= 0.0)

temp= old/2*(1-cos(2*pi*g0/ll));

for jj=1:low

U(jj,jj,ii)= temp;

end

end

end

for ii=1:low

S_mod(ii,1,:)=interp1(S(:,1),S(:,ii+1),U(ii,ii,:),’linear’);

end

Python:

^{pr2}$

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/132160.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

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