模块 Complex

module Complex: sig .. end

复数。

该模块提供了对复数的算术运算。复数由其实部和虚部表示(笛卡尔坐标系)。每个部分由一个双精度浮点数表示(类型为 float)。


type t = {
   re : float;
   im : float;
}

复数的类型。 re 是实部,im 是虚部。

val zero : t

复数 0

val one : t

复数 1

val i : t

复数 i

val neg : t -> t

一元否定。

val conj : t -> t

共轭:给定复数 x + i.y,返回 x - i.y

val add : t -> t -> t

加法

val sub : t -> t -> t

减法

val mul : t -> t -> t

乘法

val inv : t -> t

乘法逆元 (1/z)。

val div : t -> t -> t

除法

val sqrt : t -> t

平方根。结果 x + i.y 使得 x > 0x = 0y >= 0。此函数在负实轴上有一个不连续点。

val norm2 : t -> float

范数平方:给定 x + i.y,返回 x^2 + y^2

val norm : t -> float

范数:给定 x + i.y,返回 sqrt(x^2 + y^2)

val arg : t -> float

辐角。复数的辐角是复平面上正实轴与一条经过零点和该数的直线之间的夹角。该角度范围从 -pipi。此函数在负实轴上有一个不连续点。

val polar : float -> float -> t

polar norm arg 返回范数为 norm 且辐角为 arg 的复数。

val exp : t -> t

幂运算。 exp z 返回 ez 次方。

val log : t -> t

自然对数(以 e 为底)。

val pow : t -> t -> t

幂函数。 pow z1 z2 返回 z1z2 次方。