5 个版本

使用旧的Rust 2015

0.4.1 2019年4月23日
0.3.4 2018年3月27日
0.3.3 2018年2月27日
0.2.5 2018年2月13日

#1239数学

MIT/Apache

22KB
586

easy-complex

Github build GitHub package version Github license Github license

easy-complex是一个通过宏生成、无依赖的crate,它提供了易于使用的复数运算,并为标准库中的大多数数值类型提供了类型转换。

Github仓库

crates.io页面

如果您有任何问题,请在这里报告

功能

  • 显式地将整数、无符号整数和浮点数转换为复数(Complex)和指数复数(EComplex)。
  • 使用重载的标准运算符进行轻松操作。
  • 自定义的Display trait实现,可以以指数形式或矩形形式打印。
  • 这是一个通过宏生成的crate,意味着其源代码在编译时通过宏生成。

用法

easy complex没有除标准库之外的任何依赖。只需将其添加到您的Cargo.toml

[dependencies]
easy_complex = "0.4.0"

添加到您的crate根目录

extern crate easy_complex;

如果您不使用或不想使用Cargo,该crate可以在crates.io页面找到

有关详细解释和使用方法,请访问wiki,其中演示了完整的用法

待办事项

  • 扩展兼容性(待定)
  • 添加更多示例和测试
  • 一些复数域(C)的高级函数
  • 清理并编写更广泛的文档
  • 创建解析器(待定)

指南

由于crate是通过宏生成的,因此创建文档几乎是不可能的。

以下将列出crate的结构和方法的摘要。

结构 描述
Complex 以矩形形式表示的复数
EComplex 以指数形式表示的复数
枚举 描述 变体
Angle 角度 RadiansDegrees

这些方法在ComplexEComplex中均可用

方法 参数 输出 描述
new f32, f32f64, f64 Self 生成新的结构体
real f32f64 返回复数实部的值
imag f32f64 返回复数虚部的值
module f32f64 返回复数的模
arg f32f64 返回复数的参数值
共轭 Self 返回复数的共轭
ln Self 返回复数的自然对数
log f32f64 Self 返回给定底数的对数
log2 Self 返回以2为底的对数
log10 Self 返回以10为底的对数
powf f32f64 Self 返回给定幂的数值
exp Self 返回 e^self
sqrt Self 返回数值的平方根
root usize Vec<Self> 返回包含数值的第n个根的 Vec
powc Self Self 返回 self 的给定复数幂
expf f32f64 Self 返回给定底数到 self 的复数幂
cos, sin, tan Self 返回相应的几何函数
cosh, sinh, tanh Self 返回相应的双曲几何函数

如何进行自动转换

要进行自动转换,请使用 convert! 宏,该宏位于 convert 模块中。

此宏接受一个类型列表,这些类型可以转换为 f32f64,并为给定的结构体实现相应的方法。

此示例直接来自crate的源代码

convert!([i8, u8, i16, u16, f32], f32, Complex);

许可证

双许可,Apache 2.0 和 MIT 许可证

无运行时依赖