我有一段代码使用了 numpy
和 scipy
中的几个函数,我需要在 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
谢谢!
最佳答案
我只知道 Cython,它可以为您指明正确的方向。四边形 http://quadpackpp.sourceforge.net可以轻松地从 C++ 调用。大多数 numpy 函数都在 libc.math 中(abs,可能是 arctan 等)。 Pi 你可以将值硬编码为 double 值。最小化你必须搜索 scipy 源代码 https://github.com/scipy/scipy/blob/master/scipy/optimize/optimize.py查看调用的库。大多数 numpy/scipy 函数依赖于 Blas/Lapack 或使用 MKL C++ 变体。
关于python - 将 python、numpy 和 scipy 代码转换为 C++ 兼容代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44979593/