据我了解您的问题,您想编写一些函数
y = interpolate(x_values, y_values,x),这将给您带来
y一些价值
x?然后,基本思路如下:
- 查找
x_values
定义了包含的间隔的值的索引x
。例如,对于x=3
您的示例列表,包含间隔为[x1,x2]=[2.5,3.4]
,索引为i1=1
,i2=2
- 用
(y_values[i2]-y_values[i1])/(x_values[i2]-x_values[i1])
(即dy/dx
)计算该间隔的斜率。 - 的值在
x
是现在值x1
加上斜率乘以从距离x1
。
您还需要确定如果
x在的间隔之外,会发生什么情况
x_values,要么是错误的,要么可以向内插“向后”,前提是斜率与第一个/最后一个间隔相同。
这是有帮助的,还是您需要更具体的建议?
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)