Module Eigen

module Eigen: sig .. end
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 ->
[< `A of float array * int * int
| `AA of float array array
| `M of Matrix.matrix
| `MF of Matrix_flat.matrix ] ->
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 ->
[< `A of float array * int * int
| `AA of float array array
| `M of Matrix.matrix
| `MF of Matrix_flat.matrix ] ->
Vector.vector * Matrix.matrix
type sort = 
| VAL_ASC
| VAL_DESC
| ABS_ASC
| 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 ->
[< `CA of Gsl_complex.complex_array * int * int
| `CM of Matrix_complex.matrix
| `CMF of Matrix_complex_flat.matrix ] ->
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 ->
[< `CA of Gsl_complex.complex_array * int * int
| `CM of Matrix_complex.matrix
| `CMF of Matrix_complex_flat.matrix ] ->
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 ->
[< `A of float array * int * int
| `AA of float array array
| `M of Matrix.matrix
| `MF of Matrix_flat.matrix ] ->
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 ->
[< `A of float array * int * int
| `AA of float array array
| `M of Matrix.matrix
| `MF of Matrix_flat.matrix ] ->
Vector_complex.vector * Matrix_complex.matrix
val nonsymmv_sort : Vector_complex.vector * Matrix_complex.matrix -> sort -> unit