bigfloat包-高精度浮点算法

发布v0.3.0。

这个大浮动包是用于GNU MPFR库对于任意精度浮点可靠算术。MPFR库是一个著名的可移植C库,用于浮点数字的任意精度运算。它提供了精确的控制精度和舍入模式,并给出正确的舍入可复制的平台相关结果。

这个大浮动套餐旨在提供方便和友好MPFR提供的操作和功能的Python接口库。主要班级,BigFloat公司,给出一个不可变的可以与自由混合的多精度浮点类型Python整数和浮点。这个上下文类,在中使用时与Python的具有语句,提供了一种简单的方法控制精度和舍入模式。附加模块级别函数提供各种标准的数学运算。完全支持IEEE 754有符号零、nan、无穷大和低于正常值。

特征

  • 支持Python 2(版本2.6或更高版本)和Python3(版本3.2或更高)。
  • 跨平台准确再现正确的结果;精确定义的语义与IEEE 754-2008标准兼容。
  • 支持使用Python整数和浮点的混合类型操作。
  • 支持在任何IEEE二进制文件中模拟IEEE 754算法IEEE 754-2008中描述的交换格式。无穷大、NaN、,支持有符号零和次法线。
  • 通过轻松控制舍入模式和精度上下文物体和Python的具有声明。

介绍

这里有一个快速游览:

>>> 大浮动 进口 *
>>>平方英尺(2, 精度(100))  #用100位精度计算sqrt(2)
BigFloat.exact('1.4142135623730950488081687242092',精度=100)
>>>具有 精度(100):     #获得相同结果的另一种方法
...    平方英尺(2)
...
BigFloat.exact('1.4142135623730950488081687242092',精度=100)
>>>我的上下文(_C) = 精度(100) + 向正舍入
>>>我的上下文(_C)
上下文(精度=100,舍入=“RoundTowardPositive”)
>>>平方英尺(2, 我的上下文(_C))      #另一个,这次四舍五入
BigFloat.exact('1.4142135623730950488016887242108',精度=100)
>>>具有 向负舍入: #zeta的下限(2)
...    总和(1/平方米(n个) 对于 n个 在里面 范围(1, 10000))
...
BigFloat.exact('1.6448340618469506',精度=53)
>>>泽塔(2) #实际值,用于比较
BigFloat.exact('1.6449340668482264',精度=53)
>>>常量pi()**2/6  #双重校验值
BigFloat.exact('1.6449340668482264',精度=53)
>>>四倍精度  #上下文实现IEEE 754二进制128格式
上下文(精度=113,emax=16384,emin=-16493,亚规范化=True)
>>>下一个(_U)(0, 四倍精度)  #二进制文件的最小次正规128
BigFloat.精确('6.47517511943802511092443895822764655e-4966',精度=113)
>>>日志2(_)
BigFloat.exact('-16494.0000000000',精度=53)

安装

哪里可以买到

最新发布的大浮动包可以是从其位置下载包索引。开发来源可以是从项目的GitHub页面.

前提条件

为了使用大浮动包装需要同时具备GMP和已安装在系统上的MPFR库,以及包括这些库的文件。请参阅MPFR主页这个GMP主页有关这些的更多信息库。目前需要MPFR 2.3.0或更高版本。

这个大浮动该包适用于Python 2(2.6或更高版本)或Python 3(3.2或更高版本)方言。

安装

与大多数第三方Python库一样大浮动程序包是通过设置.py脚本包含在分配。在许多系统上,安装应该简单到正在执行:

python setup.py安装

在未打包分发版的顶级目录中。你可能需要安装库的超级用户权限,例如:

sudo python setup.py安装

MPFR和GMP库需要在安装大浮动以及任何必要的开发标题文件夹。在Linux上,查找一个名为libmpfr-dev软件mpfr-电平以及相应命名的GMP包装。如果库和/或包含文件安装在一个不寻常的位置,可能是需要使用命令上的环境变量指定它们的位置行。例如,在我的OS X 10.9系统上,安装了MPFR和GMP/opt/local/,我需要做:

LIBRARY_PATH=/opt/local/lib CPATH=/opt/local/include python setup.py安装

类似地,如果使用易于安装pip(点阵),您可能还需要先添加必要的环境变量。

索引和表格

目录

下一个主题

辅导的

本页