package owl

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

LAPACKE interface: high-level interface between Owl and LAPACKE

Please refer to the documentation of Intel Math Kernel Library on the LAPACKE Interface. The interface implemented here is compatible the those documented on their website. url: https://software.intel.com/en-us/mkl-developer-reference-c

type ('a, 'b) t = ('a, 'b, Bigarray.c_layout) Bigarray.Genarray.t
type s_t = (float, Bigarray.float32_elt) t
type d_t = (float, Bigarray.float64_elt) t
type lapacke_layout =
  1. | RowMajor
  2. | ColMajor
val lapacke_layout : 'a. 'a Bigarray.layout -> int
type lapacke_transpose =
  1. | NoTrans
  2. | Trans
  3. | ConjTrans
val lapacke_transpose : lapacke_transpose -> char
type lapacke_uplo =
  1. | Upper
  2. | Lower
val lapacke_uplo : lapacke_uplo -> int
type lapacke_diag =
  1. | NonUnit
  2. | Unit
val lapacke_diag : lapacke_diag -> int
type lapacke_side =
  1. | Left
  2. | Right
val lapacke_side : lapacke_side -> int
val check_lapack_error : int -> unit
val _stride : 'a 'b 'c. ('a, 'b, 'c) Bigarray.Genarray.t -> int
val _row_num : ('a, 'b, 'c) Bigarray.Genarray.t -> int
val _col_num : ('a, 'b, 'c) Bigarray.Genarray.t -> int
val gbtrf : 'a 'b. kl:int -> ku:int -> m:int -> ab:('a, 'b) t -> ('a, 'b) t * (int32, Bigarray.int32_elt) t
val gbtrs : 'a 'b. trans:lapacke_transpose -> kl:int -> ku:int -> n:int -> ab:('a, 'b) t -> ipiv:(int32, Bigarray.int32_elt) t -> b:('a, 'b) t -> unit
val gebal : 'a 'b. ?job:char -> a:('a, 'b) t -> int * int * ('a, 'b) t
val gebak : 'a 'b. job:char -> side:char -> ilo:int -> ihi:int -> scale:float Ctypes.ptr -> v:('a, 'b) t -> unit
val gebrd : 'a 'b. a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val gelqf : 'a 'b. a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val geqlf : 'a 'b. a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val geqrf : 'a 'b. a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val gerqf : 'a 'b. a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val geqp3 : 'a 'b. ?jpvt:(int32, Bigarray.int32_elt) t -> a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * (int32, Bigarray.int32_elt) t
val geqrt : 'a 'b. nb:int -> a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val geqrt3 : 'a 'b. a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val getrf : 'a 'b. a:('a, 'b) t -> ('a, 'b) t * (int32, Bigarray.int32_elt) t
val tzrzf : 'a 'b. a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val ormrz : 'a. side:char -> trans:char -> a:(float, 'a) t -> tau:(float, 'a) t -> c:(float, 'a) t -> (float, 'a) t
val gels : 'a 'b. trans:char -> a:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val gesv : 'a 'b. a:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * (int32, Bigarray.int32_elt) t
val getrs : 'a 'b. trans:char -> a:('a, 'b) t -> ipiv:(int32, Bigarray.int32_elt) t -> b:('a, 'b) t -> ('a, 'b) t
val getri : 'a 'b. a:('a, 'b) t -> ipiv:(int32, Bigarray.int32_elt) t -> ('a, 'b) t
val gesvx : 'a 'b. fact:char -> trans:char -> a:('a, 'b) t -> af:('a, 'b) t -> ipiv:(int32, Bigarray.int32_elt) t -> equed:char -> r:('a, 'b) t -> c:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t * char * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * 'a * ('a, 'b) t * ('a, 'b) t * 'a
val gelsd : 'a 'b. a:('a, 'b) t -> b:('a, 'b) t -> rcond:float -> ('a, 'b) t * int
val gelsy : 'a 'b. a:('a, 'b) t -> b:('a, 'b) t -> rcond:float -> ('a, 'b) t * int
val gglse : 'a 'b. a:('a, 'b) t -> b:('a, 'b) t -> c:('a, 'b) t -> d:('a, 'b) t -> ('a, 'b) t * 'a
val geev : 'a 'b. jobvl:char -> jobvr:char -> a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val gesdd : 'a 'b. ?jobz:char -> a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val gesvd : 'a 'b. ?jobu:char -> ?jobvt:char -> a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val ggsvd3 : 'a 'b. ?jobu:char -> ?jobv:char -> ?jobq:char -> a:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * int * int * ('a, 'b) t
val geevx : 'a 'b. balanc:char -> jobvl:char -> jobvr:char -> sense:char -> a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * int * int * ('a, 'b) t * float * ('a, 'b) t * ('a, 'b) t
val ggev : 'a 'b. jobvl:char -> jobvr:char -> a:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val gtsv : 'a 'b. dl:('a, 'b) t -> d:('a, 'b) t -> du:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t
val gttrf : 'a 'b. dl:('a, 'b) t -> d:('a, 'b) t -> du:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * (int32, Bigarray.int32_elt) t
val gttrs : 'a 'b. trans:char -> dl:('a, 'b) t -> d:('a, 'b) t -> du:('a, 'b) t -> du2:('a, 'b) t -> ipiv:(int32, Bigarray.int32_elt) t -> b:('a, 'b) t -> ('a, 'b) t
val orglq : 'a. ?k:int -> a:(float, 'a) t -> tau:(float, 'a) t -> (float, 'a) t
val unglq : 'a. ?k:int -> a:(Complex.t, 'a) t -> tau:(Complex.t, 'a) t -> (Complex.t, 'a) t
val orgqr : 'a. ?k:int -> a:(float, 'a) t -> tau:(float, 'a) t -> (float, 'a) t
val ungqr : 'a. ?k:int -> a:(Complex.t, 'a) t -> tau:(Complex.t, 'a) t -> (Complex.t, 'a) t
val orgql : 'a. ?k:int -> a:(float, 'a) t -> tau:(float, 'a) t -> (float, 'a) t
val orgrq : 'a. ?k:int -> a:(float, 'a) t -> tau:(float, 'a) t -> (float, 'a) t
val ormlq : 'a. side:char -> trans:char -> a:(float, 'a) t -> tau:(float, 'a) t -> c:(float, 'a) t -> (float, 'a) t
val ormqr : 'a. side:char -> trans:char -> a:(float, 'a) t -> tau:(float, 'a) t -> c:(float, 'a) t -> (float, 'a) t
val ormql : 'a. side:char -> trans:char -> a:(float, 'a) t -> tau:(float, 'a) t -> c:(float, 'a) t -> (float, 'a) t
val ormrq : 'a. side:char -> trans:char -> a:(float, 'a) t -> tau:(float, 'a) t -> c:(float, 'a) t -> (float, 'a) t
val gemqrt : 'a 'b. side:char -> trans:char -> v:('a, 'b) t -> t:('a, 'b) t -> c:('a, 'b) t -> ('a, 'b) t
val posv : 'a 'b. uplo:char -> a:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val potrf : 'a 'b. uplo:char -> a:('a, 'b) t -> ('a, 'b) t
val potri : 'a 'b. uplo:char -> a:('a, 'b) t -> ('a, 'b) t
val potrs : 'a 'b. uplo:char -> a:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t
val pstrf : 'a 'b. uplo:char -> a:('a, 'b) t -> tol:'a -> ('a, 'b) t * (int32, Bigarray.int32_elt) t * int * int
val ptsv : 'a 'b. d:('a, 'b) t -> e:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t
val pttrf : 'a 'b. d:('a, 'b) t -> e:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val pttrs : 'a 'b. ?uplo:char -> d:('a, 'b) t -> e:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t
val trtri : 'a 'b. uplo:char -> diag:char -> a:('a, 'b) t -> ('a, 'b) t
val trtrs : 'a 'b. uplo:char -> trans:char -> diag:char -> a:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t
val trcon : 'a 'b. norm:char -> uplo:char -> diag:char -> a:('a, 'b) t -> float
val trevc : 'a 'b. side:char -> howmny:char -> select:(int32, Bigarray.int32_elt) t -> t:('a, 'b) t -> (int32, Bigarray.int32_elt) t * ('a, 'b) t * ('a, 'b) t
val trrfs : 'a 'b. uplo:char -> trans:char -> diag:char -> a:('a, 'b) t -> b:('a, 'b) t -> x:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val stev : 'a. jobz:char -> d:(float, 'a) t -> e:(float, 'a) t -> (float, 'a) t * (float, 'a) t
val stebz : 'a. range:char -> order:char -> vl:float -> vu:float -> il:int -> iu:int -> abstol:float -> d:(float, 'a) t -> e:(float, 'a) t -> (float, 'a) t * (int32, Bigarray.int32_elt) t * (int32, Bigarray.int32_elt) t
val stegr : 'a 'b. kind:('a, 'b) Bigarray.kind -> jobz:char -> range:char -> d:(float, 'b) t -> e:(float, 'b) t -> vl:float -> vu:float -> il:int -> iu:int -> ('a, 'b) t * ('a, 'b) t
val stein : 'a 'b. kind:('a, 'b) Bigarray.kind -> d:(float, 'b) t -> e:(float, 'b) t -> w:(float, 'b) t -> iblock:(int32, Bigarray.int32_elt) t -> isplit:(int32, Bigarray.int32_elt) t -> ('a, 'b) t * (int32, Bigarray.int32_elt) t
val syconv : 'a 'b. uplo:char -> way:char -> a:('a, 'b) t -> ipiv:(int32, Bigarray.int32_elt) t -> ('a, 'b) t
val sysv : 'a 'b. uplo:char -> a:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * (int32, Bigarray.int32_elt) t
val sytrf : 'a 'b. uplo:char -> a:('a, 'b) t -> ('a, 'b) t * (int32, Bigarray.int32_elt) t * int
val sytrf_rook : 'a 'b. uplo:char -> a:('a, 'b) t -> ('a, 'b) t * (int32, Bigarray.int32_elt) t * int
val sytri : 'a 'b. uplo:char -> a:('a, 'b) t -> ('a, 'b) t
val sytrs : 'a 'b. uplo:char -> a:('a, 'b) t -> ipiv:(int32, Bigarray.int32_elt) t -> b:('a, 'b) t -> ('a, 'b) t
val hesv : 'a. uplo:char -> a:(Complex.t, 'a) t -> b:(Complex.t, 'a) t -> (Complex.t, 'a) t * (Complex.t, 'a) t * (int32, Bigarray.int32_elt) t
val hetrf : 'a 'b. uplo:char -> a:('a, 'b) t -> ('a, 'b) t * (int32, Bigarray.int32_elt) t * int
val hetrf_rook : 'a 'b. uplo:char -> a:('a, 'b) t -> ('a, 'b) t * (int32, Bigarray.int32_elt) t * int
val hetri : 'a. uplo:char -> a:(Complex.t, 'a) t -> ipiv:(int32, Bigarray.int32_elt) t -> (Complex.t, 'a) t
val hetrs : 'a. uplo:char -> a:(Complex.t, 'a) t -> ipiv:(int32, Bigarray.int32_elt) t -> b:(Complex.t, 'a) t -> (Complex.t, 'a) t
val syev : 'a. jobz:char -> uplo:char -> a:(float, 'a) t -> (float, 'a) t * (float, 'a) t
val syevr : 'a. jobz:char -> range:char -> uplo:char -> a:(float, 'a) t -> vl:float -> vu:float -> il:int -> iu:int -> abstol:float -> (float, 'a) t * (float, 'a) t
val sygvd : 'a. ityp:int -> jobz:char -> uplo:char -> a:(float, 'a) t -> b:(float, 'a) t -> (float, 'a) t * (float, 'a) t * (float, 'a) t
val bdsqr : 'a 'b. uplo:char -> d:(float, 'b) t -> e:(float, 'b) t -> vt:('a, 'b) t -> u:('a, 'b) t -> c:('a, 'b) t -> (float, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val bdsdc : 'a. uplo:char -> compq:char -> d:(float, 'a) t -> e:(float, 'a) t -> (float, 'a) t * (float, 'a) t * (float, 'a) t * (float, 'a) t * (float, 'a) t * (int32, Bigarray.int32_elt) t
val gecon : 'a 'b. norm:char -> a:('a, 'b) t -> anorm:float -> float
val gehrd : 'a 'b. ilo:int -> ihi:int -> a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t
val orghr : 'a. ilo:int -> ihi:int -> a:(float, 'a) t -> tau:(float, 'a) t -> (float, 'a) t
val unghr : 'a. ilo:int -> ihi:int -> a:(Complex.t, 'a) t -> tau:(Complex.t, 'a) t -> (Complex.t, 'a) t
val gees : 'a 'b. jobvs:char -> a:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val gges : 'a 'b. jobvsl:char -> jobvsr:char -> a:('a, 'b) t -> b:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val trexc : 'a 'b. compq:char -> t:('a, 'b) t -> q:('a, 'b) t -> ifst:int -> ilst:int -> ('a, 'b) t * ('a, 'b) t
val trsen : 'a 'b. job:char -> compq:char -> select:(int32, Bigarray.int32_elt) t -> t:('a, 'b) t -> q:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val tgsen : 'a 'b. select:(int32, Bigarray.int32_elt) t -> a:('a, 'b) t -> b:('a, 'b) t -> q:('a, 'b) t -> z:('a, 'b) t -> ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t * ('a, 'b) t
val trsyl : 'a 'b. trana:char -> tranb:char -> isgn:int -> a:('a, 'b) t -> b:('a, 'b) t -> c:('a, 'b) t -> ('a, 'b) t * float