4 个版本
0.1.3 | 2022 年 5 月 26 日 |
---|---|
0.1.2 | 2022 年 5 月 23 日 |
0.1.1 | 2022 年 5 月 23 日 |
0.1.0 | 2022 年 5 月 23 日 |
#1041 in 数学
15KB
74 行
这是一个简单的 Quake III 反平方根算法的 Rust 实现。
安全性
主要特质实现未标记为不安全。然而,由于在底层使用了 std::mem::transmute
,总是存在未定义行为的风险。
然而,库保证在大小相等的类型之间进行所需的转换。
lib.rs
:
quake-inverse-sqrt
此 crate 实现了一个特质,用于所有数值基类型,使它们能够使用臭名昭著的 Quake III 算法计算自己的倒数平方根。
结果为了执行速度而进行了近似。
示例
let num: f32 = 4.0.fast_inverse_sqrt();
assert!(num > 0.49 && num < 0.51);