将python,numpy和scipy代码转换为C ++兼容代码?

时间:2017-07-07 21:04:27

标签: python c++ numpy math scipy

我有一段代码使用scipyimport 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 中的几个函数,我需要在 C ++ 中使用,但我对C ++的了解太多了能够将此代码转换为此语言。

我需要具备哪些C ++函数:

array

谢谢!

1 个答案:

答案 0 :(得分:1)

我只知道Cython可以引导你正确的方向。 Quad 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 ++变体。