【问题标题】:Converting python, numpy, and scipy code into C++ compatible code?将 python、numpy 和 scipy 代码转换为 C++ 兼容代码?
【发布时间】:2017-07-07 21:04:27
【问题描述】:

我有一段代码使用了 numpyscipy 中的几个函数,我需要在 C++ 中使用这些函数,但我对 C++ 的了解太有限,无法转移将此代码转换为这种语言。

我需要什么样的 C++ 函数才能有这样的东西:

import numpy as np
from scipy.integrate import quad
from scipy.optimize import minimize

minor = 2.23
major = 3.05
encoderdistance = 2.53141952655
print minimize(lambda x: abs(quad(func, 0, x)[0] - encoderdistance), 1).x
min = 90-((180/np.pi) * np.arctan(((np.tan(minimize(lambda x: abs(quad(func, 0, x)[0] - encoderdistance), 1).x))*minor)/major))
print min

谢谢!

【问题讨论】:

  • 我认为这不是 StackOverflow 的正确问题格式。您应该提出与特定问题相关的问题。由于代码只有几行,转换成C++并不难。我建议你先尝试自己转换,阅读numpyscipy文档了解每个功能。如果您在执行此操作时有疑问,我认为 StackOverflow 社区将很乐意帮助您解决具体问题。
  • stackoverflow.com/questions/16512817/numerical-integration-in-c 尝试集成,其余的在我认为的 cmath 库中

标签: python c++ numpy math scipy


【解决方案1】:

我只知道 Cython 可以为您指引正确的方向。 Quad http://quadpackpp.sourceforge.net 可以轻松地从 C++ 调用。大多数 numpy 函数都在 libc.math 中(abs,可能是 arctan 等)。 Pi 您可以将值硬编码为双精度值。尽量减少您必须搜索 scipy 源代码 https://github.com/scipy/scipy/blob/master/scipy/optimize/optimize.py 以查看调用的库。大多数 numpy / scipy 函数依赖于 Blas / Lapack 或使用 MKL C++ 变体。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-05
    • 2012-04-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多