gpt4 book ai didi

python - 如何为 SciPy 的 interp1d 指定边界行为

转载 作者:太空狗 更新时间:2023-10-30 00:10:33 24 4
gpt4 key购买 nike

我正在尝试为 SciPy 的 interp1d 函数设置边界处的行为,according to the documentation应该是可能的:

Behavior at the boundary can be specified at instantiation time.

但是我还没有找到任何关于这方面的进一步信息。interp1d documentation不一一列举。

那么:我该如何定义行为?

侧面好奇:它使用的默认边界行为是什么?



编辑:示例(假设数据点在 x=0x=n 之间并进行三次插值)

我知道至少三种我希望能够指定的边界行为:

平坦:我可以要求函数平坦,换句话说,导数为零。

f'(0)  = f'(n)  = 0
f''(0) = f''(n) = 0

循环

f'(0)  = f'(n)
f''(0) = f''(n)

因此开始和结束具有相同的“斜率”。


手动:或者我可以手动提供导数的值...

f'(0)  = ...
f'(n) = ...
f''(0) = ...
f''(n) = ...

虽然可能不会同时针对所有四个人。

最佳答案

我认为文档中的句子措辞不当,请忽略它。

interp1d 函数目前不允许指定边界行为,

  • 对于线性插值,我们别无选择。
  • 对于高阶插值 interp1d 使用样条构造函数 scipy.interpolate.splmake 和默认参数 kind='smoothest',所以再次那里的边界行为没有选择。

另一方面,您可能想看一下 scipy.interpolate.PiecewisePolynomial,它表示具有分段多项式的曲线并且能够指定导数(尽管对于所有结而不是仅在边界处)。

关于python - 如何为 SciPy 的 interp1d 指定边界行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29686917/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com