模組 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 次方。