package gsl

  1. Overview
  2. Docs

Complex arithmetic and simple functions

type complex = Complex.t = {
  1. re : float;
  2. im : float;
}
val complex : re:float -> im:float -> complex
type complex_array = float array
val set : complex_array -> int -> complex -> unit
val get : complex_array -> int -> complex
val unpack : complex_array -> complex array
val pack : complex array -> complex_array
val mult : complex_array -> complex_array -> unit
val rect : float -> float -> complex
val polar : float -> float -> complex
Properties of complex numbers
val arg : complex -> float
val abs : complex -> float
val abs2 : complex -> float
val logabs : complex -> float
Complex arithmetic operators
val add : complex -> complex -> complex
val sub : complex -> complex -> complex
val mul : complex -> complex -> complex
val div : complex -> complex -> complex
val add_real : complex -> float -> complex
val sub_real : complex -> float -> complex
val mul_real : complex -> float -> complex
val div_real : complex -> float -> complex
val add_imag : complex -> float -> complex
val sub_imag : complex -> float -> complex
val mul_imag : complex -> float -> complex
val div_imag : complex -> float -> complex
val conjugate : complex -> complex
val inverse : complex -> complex
val negative : complex -> complex
Elementary complex functions
val sqrt : complex -> complex
val sqrt_real : float -> complex
val pow : complex -> complex -> complex
val pow_real : complex -> float -> complex
val exp : complex -> complex
val log : complex -> complex
val log10 : complex -> complex
val log_b : complex -> complex -> complex
Complex trigonometric functions
val sin : complex -> complex
val cos : complex -> complex
val tan : complex -> complex
val sec : complex -> complex
val csc : complex -> complex
val cot : complex -> complex
Inverse complex trigonometric functions
val arcsin : complex -> complex
val arcsin_real : float -> complex
val arccos : complex -> complex
val arccos_real : float -> complex
val arctan : complex -> complex
val arcsec : complex -> complex
val arcsec_real : float -> complex
val arccsc : complex -> complex
val arccsc_real : float -> complex
val arccot : complex -> complex
Complex hyperbolic functions
val sinh : complex -> complex
val cosh : complex -> complex
val tanh : complex -> complex
val sech : complex -> complex
val csch : complex -> complex
val coth : complex -> complex
Inverse complex hyperbolic functions
val arcsinh : complex -> complex
val arccosh : complex -> complex
val arccosh_real : float -> complex
val arctanh : complex -> complex
val arctanh_real : float -> complex
val arcsech : complex -> complex
val arccsch : complex -> complex
val arccoth : complex -> complex