Complex(3) OCaml library Complex(3) NAME Complex - Complex numbers. Module Module Complex Documentation Module Complex : sig end Complex 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 ). type t = { re : float ; im : float ; } The type of complex numbers. re is the real part and im the imaginary part. val zero : t The complex number 0 . val one : t The complex number 1 . val i : t The complex number i . val neg : t -> t Unary negation. val conj : t -> t Conjugate: given the complex x + i.y , returns x - i.y . val add : t -> t -> t Addition val sub : t -> t -> t Subtraction val mul : t -> t -> t Multiplication val inv : t -> t Multiplicative inverse ( 1/z ). val div : t -> t -> t Division val sqrt : t -> t Square root. The result x + 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 -> float Norm squared: given x + i.y , returns x^2 + y^2 . val norm : t -> float Norm: given x + i.y , returns sqrt(x^2 + y^2) . val arg : t -> float Argument. The argument of a complex number is the angle in the complex plane between the positive real axis and a line passing through zero and the number. This angle ranges from -pi to pi . This function has a discontinuity along the negative real axis. val polar : float -> float -> t polar norm arg returns the complex having norm norm and argument arg . val exp : t -> t Exponentiation. exp z returns e to the z power. val log : t -> t Natural logarithm (in base e ). val pow : t -> t -> t Power function. pow z1 z2 returns z1 to the z2 power. OCamldoc 2024-02-29 Complex(3)