module Complex: Extlib.ExtComplex.ComplexComplex numbers.
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).
Author(s): Xavier Leroy (base module), Gabriel Scherer, David Teller
typet =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.val operations : t Numeric.numericval inv : t -> tinv x returns the value of 1/xval succ : t -> tComplex.one to this number.val pred : t -> tComplex.one from this number.val abs : t -> tabs c returns the module of this complex number,
i.e. abs c = Float.sqrt((re c) *. (re c) +. (im c) *. (im c) )val modulo : t ->
t -> tval pow : t ->
t -> tval compare : t -> t -> intval of_int : int -> tval to_int : t -> intval of_string : string -> tval to_string : t -> stringval (+) : t ->
t -> tval (-) : t ->
t -> tval (*) : t ->
t -> tval (/) : t ->
t -> tval (**) : t ->
t -> tval (<>) : t -> t -> boolval (>=) : t -> t -> boolval (<=) : t -> t -> boolval (>) : t -> t -> boolval (<) : t -> t -> boolval (=) : t -> t -> boolval t_of_sexp : Sexplib.Sexp.t -> tval sexp_of_t : t -> Sexplib.Sexp.tval print : 'a Extlib.InnerIO.output -> t -> unit