25 个版本

0.9.0 2021年6月13日
0.8.2 2021年5月31日
0.7.6 2020年11月30日
0.7.4 2020年3月5日
0.2.2 2018年3月8日

#361科学


6 个 包中使用

自定义许可证

1.5MB
2.5K SLoC

metfor

Github Actions

气象学常数和公式。

该库包括 newtype 类型,或包装类型,以帮助在计算中使用正确的单位,一些常见的气象学常数和一些基本计算的功能。到目前为止,它已被开发用于支持显示和分析斜温数据的库和应用程序。因此,您会发现函数和变量主要是斜温图上通常会使用的东西。未来的版本可能会扩展预期的用例。

我调查了使用 uomdimensioned 这样的 crate 通过类型进行某种类型的分析,而不是创建自己的 newtype 类型。然而,经过实验后,我决定我不想将另一个 crate 作为 API 的一部分,因为选择使用它会强迫这个库的用户使用那个库。

我发现 optional crate 在处理可能存在缺失值的 f64 类型时非常有用,所以我包括了一个特性 use_optional,它允许在这个 crate 中的新类型以与 f64optional 相同的方式使用。

示例

use metfor::{Kelvin, Celsius, HectoPascal, Millibar, potential_temperature};

let t1 = Kelvin(300.0);
let p1 = HectoPascal(1000.0);
let theta1 = potential_temperature(p1, t1);

let t2 = Celsius(0.0);
let p2 = Millibar(700.0);
let theta2 = potential_temperature(p2, t2);

println!("theta1 = {:?} and theta2 = {:?}", theta1, theta2);

依赖关系