问题标签 [mpfr]
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.
macos - cmake 未找到 GMP 和 MPFR,但已安装
我正在尝试在 mac os X 10.11 上编译需要 boost、GMP 和 MPFR 的 plll 库。
我已经通过自制软件安装了 boost、GMP 和 MPFR,然后我在 plll 的 dir build 中启动了 cmake,但我得到了那个错误:
如果我在 cmake 使用的 Librairies.txt 中更改 GMP 和 MPFR 的顺序,则 GMP 也是如此。
之后,我手动安装了这些库,它们位于/usr/local/include 中。GMP的make检查很完美,所以我猜安装没问题。
但仍然是相同的错误消息。我也尝试添加一个 FindMPFR.cmake 文件,但根本没有任何变化。
这是 Libraries.txt 中涉及的部分:
奇怪的是,我对 Boost 没有任何问题……
interface - 如何将 Z3 中的 Expr(Const number) 转换为 MPQ/MPFR 中的对象
当我使用Z3-opt(Ocaml版本)解决一些规划问题时,我从 Z3 得到这样的结果:
(+ (/ 31.0 10.0) (* (to_real (- 1)) epsilon ))
这个结果的类型是 Z3.Expr。我想知道如何将这个结果(Z3.Expr)转换为另一个常见的数据类型对象(例如,MPQ/MPFR)。
Z3-opt(Ocaml 版本)是否为此提供了ocaml 接口?
非常感谢。
performance - 模板和划分
我在 C++ 中使用模板类,并且我计划确保与双精度和 mpfr 浮点数的兼容性。程序中发生的唯一除法是除以 2。双精度数和 mpfr 浮点数除以 2 的行为应该不同,因为在 mpfr 中,我可以直接访问指数。
问题:您建议如何生成最有效的编译代码?
我希望检查模板化变量类型的运行时解决方案效率低下。
Boost 的 mpfr 包装器似乎没有用,因为它似乎没有使用 mpfr_div_2ui 命令,而是除以值为 2 的 mpfr 浮点数。我希望这比直接更改指数要慢。
我可以使用重载命令来处理 mpfr 浮点数和双精度数的两种情况。
我可以使用一些用户设置的#define 标志,用户需要设置这些标志才能使用 mpfr 数据类型。
还有其他建议吗?
python - 未找到符号:_mpfr_acos,预期在:平面命名空间
我正在尝试运行一个包含多个包的 Python 脚本。我不断得到的错误涉及 mpfr.so 文件(MPFR 模块)。以下是整封邮件的内容:
我一直在尝试重新安装软件包并且无法解决它。
c - is MPIR's floating point type inaccurate?
I'm just starting with MPIR and I'm executing this code:
The output is:
This seems highly innacurate, although I've set the precision to 10000. Am I doing something wrong?
r - R 写入 mpfr 数据 (Rmpfr)
我在 R 中有一个 mpfrArray,我正在尝试写入文件,但我收到错误消息:
我将如何将 mpfrArray 写入文件?
例子:
r - R中的多精度复数
R中的复数定义为:
我有一个程序,旨在处理真实案例和复杂案例中的多个精度值。R 不直接支持多精度。安装Rmpfr
包后,我可以定义多个精度值并使用新的mpfr objects
.
我有也处理复数的函数。
问题: 我不能打电话
因为,复杂的函数定义只要求这些是双精度的。
有没有一种方法可以在 R 中使用多精度进行复数算术?
gmp - 如何使 MPFR 使用标准类型?
我正在使用 MPFR 多精度库,特别是这里的实现。
有什么方法可以编译代码以使所有操作都使用标准类型(例如double
)执行?例如,将所有“软件操作”转换为通常以标准类型实现的“硬件操作”的编译标志?
在实践中,即使我使用 64 位,代码也很慢,我分析说罪魁祸首是 mpfr/gmp,我想通过更改为来衡量我获得了多少double
(无需重新编写所有代码)。
c++ - 海合会 6.1。安装,gmp/mpfr/mpc 没有建?
我最近安装了 gcc 6.1,专门针对标题中提到的库 (gmp/mpfr/mpc) 我按照 gnu 网站所说的:
GNU 多精度库 (GMP) 版本 4.3.2(或更高版本) 构建 GCC 所必需的。如果在名为 gmp 的 GCC 源的子目录中找到 GMP 源分发,它将与 GCC 一起构建。或者,如果 GMP 已安装但不在您的库搜索路径中,则必须使用 --with-gmp 配置选项进行配置。另请参见 --with-gmp-lib 和 --with-gmp-include。只有 download_prerequisites 安装的 GMP 版本支持树内构建。
与其他库类似,即我下载了在我的 GCC 目录中复制的最后一个版本的源代码,然后在假设它与海湾合作委员会。但是,当我尝试运行一个使用 gmp 库的编译项目时,它会说:
所以我一直在寻找共享对象的位置,但我找不到 GCC 安装它的位置。
我应该在安装 gcc 之前先编译 GMP/MPFR 和 MPC 吗?因为我认为没有必要。如果我不需要编译 GMP/MPFR 和 MPC 应该安装在哪里的库?
一些进一步的细节:
我想我没有做任何奇怪和复杂的事情。1.我下载了gcc,把源码放在一个目录下。2. 我下载了所有这些库,作为 tar 文件;3. 在 gcc 源码根目录下创建了三个文件夹(gmp、mpfr 和 mpc)amd 在这些文件夹中展开了上一步的 tars。4. 对于 gcc 我执行了./configure --prefix=/path/to/gcc_build
5. 我执行了make
6. 然后make install
如果我不使用我可以编译和执行而不会出现问题的库,当我需要这些库时,它会在成功编译后返回我提到的错误。如果我查看lib/
andlib64/
路径,则没有与 gmp 库相关的任何内容。