【问题标题】:One-dimensional linear interpolation with MKL使用 MKL 进行一维线性插值
【发布时间】:2020-03-19 07:37:33
【问题描述】:

我是 MKL 的新手,我有这个 Python 代码,我想将它转换为使用 MKL 函数“dfdInterpolate1D”(https://software.intel.com/en-us/mkl-developer-reference-c-df-interpolate1d-df-interpolateex1d) 的 C++ 代码。我发现的唯一示例是 https://software.intel.com/en-us/mkl-developer-reference-c-data-fitting-usage-examples,但它是基于三次样条的插值,并且 API 非常令人生畏。我已经编写了一个模仿 numpy.interp 的简单函数,但我需要一些优化。

stokes = np.arange(0,len(raw1660))
antistokes = stokes*(1+walkOff/1000)
raw1450 = np.interp(stokes,antistokes,raw1450)

【问题讨论】:

标签: intel-mkl


【解决方案1】:

您可以查看 C API 的 interpolate1D 示例。检查 MKLROOT\examples\datafittingc\source 文件夹 - 您可能会在那里看到以下 dfdInterpolate1D 示例:

  • dfdcubicspline_interp.c
  • dfdfifthorderspline_interp.c
  • dfdhermitecubicspline.c
  • dfdhymancubic.c
  • dfdinterpusercells.c
  • dfdlookup_interp.c
  • dfdquadraticspline.c
  • dfdstepwise_interp.c

【讨论】:

  • 我没有找到一个简单的示例来执行简单的一维插值,我已经测试了 dfdstepwise_interp.c、dfdlookup_interp.c、dfdlinearspline.c 但我不明白它们。
  • 那么执行简单一维插值的简单示例是什么意思?你想解决什么样的样条曲线?
  • 你也可以在intel mkl软件论坛上问同样的问题,点击这个链接:software.intel.com/en-us/forums/intel-math-kernel-library
  • 我只想做和 numpy.interp 一样的事情!
  • 然后查看 numpy doc 并了解 numpy.interp 究竟做了什么并将此选项映射到 mkl df API
猜你喜欢
  • 2019-07-02
  • 1970-01-01
  • 1970-01-01
  • 2012-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-18
  • 1970-01-01
相关资源
最近更新 更多