#complex-numbers #numbers #calc #maths

number-complex

number-based 是我尝试使复数处理变得简单的一种尝试

1 个不稳定版本

0.0.0 2023年4月30日

#45 in #maths

Apache-2.0

8KB
175

复数

概述

这个crate非常简单。基本原理是允许数字 $z \in \mathbb{C}$。

以前使用过复数的人应该没有问题使用这个crate,而对于没有使用过的人来说,我推荐观看 Weich Labs 的这个视频系列 ,它解释了复数是如何工作的。

示例

let numb1 = Rectangular::new(1., 2.);
let numb2 = Rectangular::new(3., 4.);

// numbers in either polar or rectangular form can be added, subtracted, multiplied
// and divided, just like you would any other number
let res = (numb1 + numb2).get_polar();

// numbers can also converted between rectangular and polar forms using the get_polar() 
// and get_rectangular() methods

println!("{res}");

注意,在上面的示例中,参数类型为 f64。此外,极坐标形式实现 Display 的方式是,在这种情况下,我们将以欧拉形式打印数字

7.211102550927978*e^0.5880026035475675i

对于矩形
可以通过 real() 方法访问 $Re(z)$
可以通过 imag() 方法访问 $Im(z)$

同样适用于极坐标
可以通过 arg() 方法访问 $arg(z)$
可以通过 modulus() 方法访问 $|z|$

无运行时依赖