Module Gsl.Blas

BLAS support

type order =
| RowMajor
| ColMajor
type transpose =
| NoTrans
| Trans
| ConjTrans
type uplo =
| Upper
| Lower
type diag =
| NonUnit
| Unit
type side =
| Left
| Right

LEVEL 1

external dot : Vector.vector ‑> Vector.vector ‑> float = "ml_gsl_blas_ddot"
external nrm2 : Vector.vector ‑> float = "ml_gsl_blas_dnrm2"
external asum : Vector.vector ‑> float = "ml_gsl_blas_dasum"
external iamax : Vector.vector ‑> int = "ml_gsl_blas_idamax"
external swap : Vector.vector ‑> Vector.vector ‑> unit = "ml_gsl_blas_dswap"
external copy : Vector.vector ‑> Vector.vector ‑> unit = "ml_gsl_blas_dcopy"
external axpy : float ‑> Vector.vector ‑> Vector.vector ‑> unit = "ml_gsl_blas_daxpy"
external rot : Vector.vector ‑> Vector.vector ‑> float ‑> float ‑> unit = "ml_gsl_blas_drot"
external scal : float ‑> Vector.vector ‑> unit = "ml_gsl_blas_dscal"

LEVEL 2

external gemv : transpose ‑> alpha:float ‑> a:Matrix.matrix ‑> x:Vector.vector ‑> beta:float ‑> y:Vector.vector ‑> unit = "ml_gsl_blas_dgemv_bc" "ml_gsl_blas_dgemv"
external trmv : uplo ‑> transpose ‑> diag ‑> a:Matrix.matrix ‑> x:Vector.vector ‑> unit = "ml_gsl_blas_dtrmv"
external trsv : uplo ‑> transpose ‑> diag ‑> a:Matrix.matrix ‑> x:Vector.vector ‑> unit = "ml_gsl_blas_dtrsv"
external symv : uplo ‑> alpha:float ‑> a:Matrix.matrix ‑> x:Vector.vector ‑> beta:float ‑> y:Vector.vector ‑> unit = "ml_gsl_blas_dsymv_bc" "ml_gsl_blas_dsymv"
external dger : alpha:float ‑> x:Vector.vector ‑> y:Vector.vector ‑> a:Matrix.matrix ‑> unit = "ml_gsl_blas_dger"
external syr : uplo ‑> alpha:float ‑> x:Vector.vector ‑> a:Matrix.matrix ‑> unit = "ml_gsl_blas_dsyr"
external syr2 : uplo ‑> alpha:float ‑> x:Vector.vector ‑> y:Vector.vector ‑> a:Matrix.matrix ‑> unit = "ml_gsl_blas_dsyr2"

LEVEL 3

external gemm : ta:transpose ‑> tb:transpose ‑> alpha:float ‑> a:Matrix.matrix ‑> b:Matrix.matrix ‑> beta:float ‑> c:Matrix.matrix ‑> unit = "ml_gsl_blas_dgemm_bc" "ml_gsl_blas_dgemm"
external symm : side ‑> uplo ‑> alpha:float ‑> a:Matrix.matrix ‑> b:Matrix.matrix ‑> beta:float ‑> c:Matrix.matrix ‑> unit = "ml_gsl_blas_dsymm_bc" "ml_gsl_blas_dsymm"
external trmm : side ‑> uplo ‑> transpose ‑> diag ‑> alpha:float ‑> a:Matrix.matrix ‑> b:Matrix.matrix ‑> unit = "ml_gsl_blas_dtrmm_bc" "ml_gsl_blas_dtrmm"
external trsm : side ‑> uplo ‑> transpose ‑> diag ‑> alpha:float ‑> a:Matrix.matrix ‑> b:Matrix.matrix ‑> unit = "ml_gsl_blas_dtrsm_bc" "ml_gsl_blas_dtrsm"
external syrk : uplo ‑> transpose ‑> alpha:float ‑> a:Matrix.matrix ‑> beta:float ‑> c:Matrix.matrix ‑> unit = "ml_gsl_blas_dsyrk_bc" "ml_gsl_blas_dsyrk"
external syr2k : uplo ‑> transpose ‑> alpha:float ‑> a:Matrix.matrix ‑> b:Matrix.matrix ‑> beta:float ‑> c:Matrix.matrix ‑> unit = "ml_gsl_blas_dsyr2k_bc" "ml_gsl_blas_dsyr2k"

Single precision

module Single : sig ... end
module Complex : sig ... end

Complex single precision

module Complex_Single : sig ... end