#rounding #floating-point #libm #science #api-bindings

crlibm

CRlibm绑定,一个正确舍入的数学库

3个不稳定版本

0.2.0 2024年7月27日
0.1.1 2022年1月2日
0.1.0 2022年1月2日

#942 in 数学

Download history 4/week @ 2024-06-28 3/week @ 2024-07-19 147/week @ 2024-07-26 9/week @ 2024-08-02

每月159次下载

GPL-2.0-or-later

1MB
15K SLoC

C 15K SLoC // 0.4% comments Rust 317 SLoC // 0.0% comments RPM Specfile 30 SLoC

包含 (晦涩的autoconf代码, 12KB) crlibm/configure.ac

Crlibm

这个crate是一个绑定到CRlibm,一个高效且经过验证的正确舍入数学库。为了方便用户,该模块嵌入从CRlibm Git仓库中的相关C代码。

请注意,CRlibm的C代码已经成熟,但已被MetaLibm (仓库) 取代,因此不会收到更新。

示例

use crlibm::*;
let x = sinpi_rd(2.);
let y = sinpi_rn(2.);
let z = sinpi_ru(2.);

特性

默认情况下,该crate使用对数便携式实现。功能log_double_extended启用针对具有双扩展硬件的处理器优化的实现(如果还检测到正确的平台)。这些版本可能不会更快。

依赖项

~1.2–1.7MB
~40K SLoC