module Complex:Complex numbers.sig..end
This module provides arithmetic operations on complex numbers.
Complex numbers are represented by their real and imaginary parts
(cartesian representation). Each part is represented by a
double-precision floating-point number (type float).
type t = {
|
re : |
|
im : |
re is the real part and im the
imaginary part.val zero : t0.val one : t1.val i : ti.val neg : t -> tval conj : t -> tx + i.y, returns x - i.y.val add : t -> t -> tval sub : t -> t -> tval mul : t -> t -> tval inv : t -> t1/z).val div : t -> t -> tval sqrt : t -> tx + i.y is such that x > 0 or
x = 0 and y >= 0.
This function has a discontinuity along the negative real axis.val norm2 : t -> floatx + i.y, returns x^2 + y^2.val norm : t -> floatx + i.y, returns sqrt(x^2 + y^2).val arg : t -> float-pi to pi. This function has a discontinuity along the
negative real axis.val polar : float -> float -> tpolar norm arg returns the complex having norm norm
and argument arg.val exp : t -> texp z returns e to the z power.val log : t -> te).val pow : t -> t -> tpow z1 z2 returns z1 to the z2 power.