【发布时间】:2012-11-19 11:43:25
【问题描述】:
我有一个自定义浮点数据类型,它使用两个 64 位浮点数模拟 128 位浮点数(来自 QD library 的双双类 dd_real)。从 C++ 我想将一个 ndarray 导出到 python。我已经知道如何为 64 位浮点数执行此操作,但对于双双,我不知何故需要指定我自己的自定义 dtype。该怎么做?
注意:numpy 有自己的 128 位浮点数(np.float128),不幸的是,这映射到 C/C++ 中的 long double,这只是一个 80 位浮点数,存储在 128 位(在我的所有平台上)。
事实上,应该能够以与 numpy 导出 np.float128 完全相同的方式执行此操作(我只是不知道这是如何完成的),唯一的区别是它在 C++ 上使用 dd_real侧而不是long double。
如果这有帮助,我已经使用 boost::python 将 C++ 类型 dd_real 导出到 python,也许这可以以某种方式重用。
到目前为止,我能够研究以下内容
【问题讨论】:
标签: c++ python numpy boost-python