问题标签 [gmpy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
440 浏览

python - 在进程之间共享 gmpy2 多精度整数而不复制

是否可以在进程(由多处理创建)之间共享 gmpy2 多精度整数(https://pypi.python.org/pypi/gmpy2 )而不在内存中创建副本?每个整数大约有 750,000 位。整数不会被进程修改。

谢谢你。

0 投票
2 回答
747 浏览

python - 有效地将 gmpy2.mpz 转换为 numpy 布尔数组

我尝试从 gmpy2.mpz 转换为 numpy 布尔数组,但不能完全正确。(gmpy2:https ://gmpy2.readthedocs.io )

更多测试:

顺便说一句,我实际上想快速获取 gmpy2.mpz 的所有设置位的索引列表、数组或 numpy 数组。我尝试转换的实际 4,777,000 gmpy2.mpz 每个有 760,000 位,其中大约 2,000 位为 1。计算机上的 gmp 库是用 intel icc 编译的。

谢谢

0 投票
3 回答
242 浏览

python - Python - 如何在 gmpy2 中避免 x 的基 y**log 基 y 的差异

下面的代码示例我的问题不会发生在 10 次方 10 和 10 次方 11 之间,但对于代码中给出的示例及其上方的示例。

我看不到我的代码中有哪些地方没有正确处理原始值的检索。可能是我错过了一些简单的事情。

我需要确保我可以xlog x各种基地中恢复过来。与其依赖诸如 之类的库函数gmpy2,是否有任何反向反对数算法可以保证2**log2(x)它会给出x.

我可以看到如何直接开发日志,但看不到如何返回,例如,泰勒级数需要很多术语...我如何自己编写幂函数?和@dan04 回复。代码如下。

0 投票
4 回答
17548 浏览

python - GMPY2 未安装,未找到 mpir.h

我正在尝试使用 pip 在我的 Anaconda Python 3.5 发行版上安装 gmpy2。我能够完美地安装其他模块,例如 primefac。当我尝试安装 gmpy2 这就是我得到的:

我注意到,每当我尝试在计算机上安装 gmpy2 时,我总是会遇到某种错误,而且每次都是不同的错误。有人可以告诉我如何解决这个问题。

谢谢。

0 投票
1 回答
820 浏览

python - Python多精度有理比较:Fraction、mpq和mpfr

我了解浮点计算由于其性质而不准确。我正在尝试找出进行多精度定量比较的最佳库/方法。我在比较分数、mpq 和 mpfr。后两个来自 gmpy2 库。第一个来自分数包。我正在使用python3.3

这是我用来比较的脚本。写的不是很好,很简单。

这是结果:

所以基本上我得到的结果是分数是最准确的,但它非常慢。对于这个问题,我想问,

  1. 您认为我还应该尝试其他任何情况吗?
  2. 任何其他图书馆?
  3. 如果速度很重要,有没有办法使用 gmpy2 库来提高精度?
0 投票
1 回答
1078 浏览

python - 使用 Python 2 (Windows) 的 Anaconda 发行版安装 gmpy

我正在尝试使用一个名为CatMAP的程序,它大量使用 gmpy 依赖项(根据安装说明,我认为它是 gmpy,而不是 gmpy2)。

我通过 Anaconda 获得了 Python 2.7.12,但在安装 gmpy 时遇到了很多麻烦。这样做pip install gmpy不起作用,我在 Anaconda Cloud 上找到的所有版本都是针对 Linux 的。有什么建议么?

pip install方法的错误消息如下所示:

0 投票
2 回答
890 浏览

python - gmpy2 安装但找不到 libmpc.so.3

我想将 gmpy2 与 python 2.7 一起使用,但是当我尝试导入它时,我得到:

我使用 pip: 安装了 gmpy2:pip install -user gmpy2除了说安装看起来还不错

但之后它说安装成功。

我已经安装了 MPC (1.0.3)、GMP (6.1.1) 和 MPFR (3.1.4),它们都可以工作,我的意思是我可以调用gcc foo.c -lmpc并且gcc bar.c -lmpfr代码可以按预期编译和工作。我还使用 pip install 让 gmpy 工作。我认为问题在于它们没有安装在默认目录中,因为我没有 sudo 权限。

所在目录libmpc.so.3位于 pip 吐出的 gcc 调用中,我还设置了CPATHand CPPFLAGSto look inmy_prefix/includeLDFLAGSto look my_prefix/lib

我真的不想使用 MPC 的功能,所以如果有一个简单的选项可以不安装 gmpy2 的那部分,我会很高兴的。

我真的很困惑,我已经知道 pip 无法构建库并且我已经离开并安装了依赖项,但通常一旦库通过 pip 它就可以工作。

0 投票
1 回答
196 浏览

python-3.x - 如何在 GMPY2 中获取 mpz 的 abs()?

mpz我需要获取对象的绝对值,GMPY2但我找不到任何函数,例如abs(). 如何才能做到这一点?

0 投票
1 回答
238 浏览

python-3.x - GMPY2 - 如何避免 gmpy2.floor() 返回 mpfr 而不是 mpz?

在变量gmpy2.floor()上使用后:mpz

x有类型mpfr,但mpz不再有,尽管据我了解, floor 总是返回整数。

我怎样才能避免这种情况?

恐怕使用x = mpz(gmpy2.floor(x/256))会降低性能,不是吗?

0 投票
1 回答
1166 浏览

python-3.x - 将 gmpy2 mpz 转换为 bigendian 字节数组(字节)的最快方法?

我尝试了几种不同的方法,从

或将 x 乘以 256 并bytearray在循环中构建一个新的,但与普通 python int 或 gmpy2 c++ 的转换相比,它感觉很慢。

mpz_exportc++中没有类似的东西吗?最快的方法是什么?

编辑:我需要将其转换为的原因byteshashlib不能 hash mpz。如果有另一种快速的方法来获得强大的加密(sha256)哈希mpz,而不必将其转换为bytes第一个,那也可能会有所帮助!