Module Gsl.Eigen

Eigensystems

Real Symmetric Matrices

type symm_ws
val make_symm_ws : int -> symm_ws
val _symm : Vectmat.mat -> Vectmat.vec -> symm_ws -> unit
val symm : ?protect:bool -> [< `M of Matrix.matrix | `MF of Matrix_flat.matrix | `A of float array * int * int | `AA of float array array ] -> Vector.vector
type symmv_ws
val make_symmv_ws : int -> symmv_ws
val _symmv : Vectmat.mat -> Vectmat.vec -> Vectmat.mat -> symmv_ws -> unit
val symmv : ?protect:bool -> [< `M of Matrix.matrix | `MF of Matrix_flat.matrix | `A of float array * int * int | `AA of float array array ] -> Vector.vector * Matrix.matrix
type sort =
  1. | VAL_ASC
  2. | VAL_DESC
  3. | ABS_ASC
  4. | ABS_DESC
val symmv_sort : (Vector.vector * Matrix.matrix) -> sort -> unit

Complex Hermitian Matrices

type herm_ws
val make_herm_ws : int -> herm_ws
val _herm : Vectmat.cmat -> Vectmat.vec -> herm_ws -> unit
val herm : ?protect:bool -> [< `CM of Matrix_complex.matrix | `CMF of Matrix_complex_flat.matrix | `CA of Gsl_complex.complex_array * int * int ] -> Vector.vector
type hermv_ws
val make_hermv_ws : int -> hermv_ws
val _hermv : Vectmat.cmat -> Vectmat.vec -> Vectmat.cmat -> hermv_ws -> unit
val hermv : ?protect:bool -> [< `CM of Matrix_complex.matrix | `CMF of Matrix_complex_flat.matrix | `CA of Gsl_complex.complex_array * int * int ] -> Vector.vector * Matrix_complex.matrix
val hermv_sort : (Vector.vector * Matrix_complex.matrix) -> sort -> unit

Real Nonsymmetric Matrices

type nonsymm_ws
val make_nonsymm_ws : int -> nonsymm_ws
val _nonsymm : Vectmat.mat -> Vectmat.cvec -> nonsymm_ws -> unit
val _nonsymm_Z : Vectmat.mat -> Vectmat.cvec -> Vectmat.mat -> nonsymm_ws -> unit
val nonsymm : ?protect:bool -> [< `M of Matrix.matrix | `MF of Matrix_flat.matrix | `A of float array * int * int | `AA of float array array ] -> Vector_complex.vector
type nonsymmv_ws
val make_nonsymmv_ws : int -> nonsymmv_ws
val _nonsymmv : Vectmat.mat -> Vectmat.cvec -> Vectmat.cmat -> nonsymmv_ws -> unit
val _nonsymmv_Z : Vectmat.mat -> Vectmat.cvec -> Vectmat.cmat -> Vectmat.mat -> nonsymmv_ws -> unit
val nonsymmv : ?protect:bool -> [< `M of Matrix.matrix | `MF of Matrix_flat.matrix | `A of float array * int * int | `AA of float array array ] -> Vector_complex.vector * Matrix_complex.matrix
val nonsymmv_sort : (Vector_complex.vector * Matrix_complex.matrix) -> sort -> unit