blas-hs-0.1.1.0: Low-level Haskell bindings to Blas.

StabilityStable
Safe HaskellSafe
LanguageHaskell98

Blas.Primitive.Safe

Description

Foreign function interface to Blas. These functions use safe foreign calls. Refer to the GHC documentation for more information regarding appropriate use of safe and unsafe foreign calls.

Documentation

sdsdot :: Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> IO Float #

dsdot :: Int -> Ptr Float -> Int -> Ptr Float -> Int -> IO Double #

sdot :: Int -> Ptr Float -> Int -> Ptr Float -> Int -> IO Float #

ddot :: Int -> Ptr Double -> Int -> Ptr Double -> Int -> IO Double #

cdotu_sub :: Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> IO () #

cdotc_sub :: Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> IO () #

snrm2 :: Int -> Ptr Float -> Int -> IO Float #

sasum :: Int -> Ptr Float -> Int -> IO Float #

isamax :: Int -> Ptr Float -> Int -> IO Int #

idamax :: Int -> Ptr Double -> Int -> IO Int #

icamax :: Int -> Ptr (Complex Float) -> Int -> IO Int #

sswap :: Int -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dswap :: Int -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

cswap :: Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

zswap :: Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

scopy :: Int -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dcopy :: Int -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

ccopy :: Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

zcopy :: Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

saxpy :: Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

daxpy :: Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

caxpy :: Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

srotg :: Ptr Float -> Ptr Float -> Ptr Float -> Ptr Float -> IO () #

srotmg :: Ptr Float -> Ptr Float -> Ptr Float -> Float -> Ptr Float -> IO () #

srot :: Int -> Ptr Float -> Int -> Ptr Float -> Int -> Float -> Float -> IO () #

drot :: Int -> Ptr Double -> Int -> Ptr Double -> Int -> Double -> Double -> IO () #

srotm :: Int -> Ptr Float -> Int -> Ptr Float -> Int -> Ptr Float -> IO () #

drotm :: Int -> Ptr Double -> Int -> Ptr Double -> Int -> Ptr Double -> IO () #

sscal :: Int -> Float -> Ptr Float -> Int -> IO () #

dscal :: Int -> Double -> Ptr Double -> Int -> IO () #

cscal :: Int -> Complex Float -> Ptr (Complex Float) -> Int -> IO () #

csscal :: Int -> Float -> Ptr (Complex Float) -> Int -> IO () #

zscal :: Int -> Complex Double -> Ptr (Complex Double) -> Int -> IO () #

zdscal :: Int -> Double -> Ptr (Complex Double) -> Int -> IO () #

sgemv :: Order -> Transpose -> Int -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> Float -> Ptr Float -> Int -> IO () #

dgemv :: Order -> Transpose -> Int -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> Double -> Ptr Double -> Int -> IO () #

sgbmv :: Order -> Transpose -> Int -> Int -> Int -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> Float -> Ptr Float -> Int -> IO () #

dgbmv :: Order -> Transpose -> Int -> Int -> Int -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> Double -> Ptr Double -> Int -> IO () #

cgbmv :: Order -> Transpose -> Int -> Int -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> IO () #

zgbmv :: Order -> Transpose -> Int -> Int -> Int -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> IO () #

strmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dtrmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

ctrmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

ztrmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

stbmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Int -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dtbmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Int -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

ctbmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

ztbmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

stpmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr Float -> Ptr Float -> Int -> IO () #

dtpmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr Double -> Ptr Double -> Int -> IO () #

ctpmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr (Complex Float) -> Ptr (Complex Float) -> Int -> IO () #

ztpmv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr (Complex Double) -> Ptr (Complex Double) -> Int -> IO () #

strsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dtrsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

ctrsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

ztrsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

stbsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Int -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dtbsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Int -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

ctbsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

ztbsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

stpsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr Float -> Ptr Float -> Int -> IO () #

dtpsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr Double -> Ptr Double -> Int -> IO () #

ctpsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr (Complex Float) -> Ptr (Complex Float) -> Int -> IO () #

ztpsv :: Order -> Uplo -> Transpose -> Diag -> Int -> Ptr (Complex Double) -> Ptr (Complex Double) -> Int -> IO () #

ssymv :: Order -> Uplo -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> Float -> Ptr Float -> Int -> IO () #

dsymv :: Order -> Uplo -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> Double -> Ptr Double -> Int -> IO () #

ssbmv :: Order -> Uplo -> Int -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> Float -> Ptr Float -> Int -> IO () #

dsbmv :: Order -> Uplo -> Int -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> Double -> Ptr Double -> Int -> IO () #

sspmv :: Order -> Uplo -> Int -> Float -> Ptr Float -> Ptr Float -> Int -> Float -> Ptr Float -> Int -> IO () #

dspmv :: Order -> Uplo -> Int -> Double -> Ptr Double -> Ptr Double -> Int -> Double -> Ptr Double -> Int -> IO () #

sger :: Order -> Int -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dger :: Order -> Int -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

ssyr :: Order -> Uplo -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dsyr :: Order -> Uplo -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

ssyr2 :: Order -> Uplo -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dsyr2 :: Order -> Uplo -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

sspr :: Order -> Uplo -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> IO () #

dspr :: Order -> Uplo -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> IO () #

sspr2 :: Order -> Uplo -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> Ptr Float -> IO () #

dspr2 :: Order -> Uplo -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> Ptr Double -> IO () #

chemv :: Order -> Uplo -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> IO () #

chbmv :: Order -> Uplo -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> IO () #

cgeru :: Order -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

zgeru :: Order -> Int -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

cgerc :: Order -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

zgerc :: Order -> Int -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

cher :: Order -> Uplo -> Int -> Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

zher :: Order -> Uplo -> Int -> Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

chpr :: Order -> Uplo -> Int -> Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> IO () #

zhpr :: Order -> Uplo -> Int -> Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> IO () #

cher2 :: Order -> Uplo -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

zher2 :: Order -> Uplo -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

chpr2 :: Order -> Uplo -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> IO () #

sgemm :: Order -> Transpose -> Transpose -> Int -> Int -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> Float -> Ptr Float -> Int -> IO () #

dgemm :: Order -> Transpose -> Transpose -> Int -> Int -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> Double -> Ptr Double -> Int -> IO () #

ssymm :: Order -> Side -> Uplo -> Int -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> Float -> Ptr Float -> Int -> IO () #

dsymm :: Order -> Side -> Uplo -> Int -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> Double -> Ptr Double -> Int -> IO () #

csymm :: Order -> Side -> Uplo -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> IO () #

zsymm :: Order -> Side -> Uplo -> Int -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> IO () #

ssyrk :: Order -> Uplo -> Transpose -> Int -> Int -> Float -> Ptr Float -> Int -> Float -> Ptr Float -> Int -> IO () #

dsyrk :: Order -> Uplo -> Transpose -> Int -> Int -> Double -> Ptr Double -> Int -> Double -> Ptr Double -> Int -> IO () #

csyrk :: Order -> Uplo -> Transpose -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> IO () #

ssyr2k :: Order -> Uplo -> Transpose -> Int -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> Float -> Ptr Float -> Int -> IO () #

dsyr2k :: Order -> Uplo -> Transpose -> Int -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> Double -> Ptr Double -> Int -> IO () #

csyr2k :: Order -> Uplo -> Transpose -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> IO () #

chemm :: Order -> Side -> Uplo -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> IO () #

zhemm :: Order -> Side -> Uplo -> Int -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> IO () #

cherk :: Order -> Uplo -> Transpose -> Int -> Int -> Float -> Ptr (Complex Float) -> Int -> Float -> Ptr (Complex Float) -> Int -> IO () #

zherk :: Order -> Uplo -> Transpose -> Int -> Int -> Double -> Ptr (Complex Double) -> Int -> Double -> Ptr (Complex Double) -> Int -> IO () #

cher2k :: Order -> Uplo -> Transpose -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> Float -> Ptr (Complex Float) -> Int -> IO () #

zher2k :: Order -> Uplo -> Transpose -> Int -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> Double -> Ptr (Complex Double) -> Int -> IO () #

strmm :: Order -> Side -> Uplo -> Transpose -> Diag -> Int -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dtrmm :: Order -> Side -> Uplo -> Transpose -> Diag -> Int -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

ctrmm :: Order -> Side -> Uplo -> Transpose -> Diag -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

ztrmm :: Order -> Side -> Uplo -> Transpose -> Diag -> Int -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #

strsm :: Order -> Side -> Uplo -> Transpose -> Diag -> Int -> Int -> Float -> Ptr Float -> Int -> Ptr Float -> Int -> IO () #

dtrsm :: Order -> Side -> Uplo -> Transpose -> Diag -> Int -> Int -> Double -> Ptr Double -> Int -> Ptr Double -> Int -> IO () #

ctrsm :: Order -> Side -> Uplo -> Transpose -> Diag -> Int -> Int -> Complex Float -> Ptr (Complex Float) -> Int -> Ptr (Complex Float) -> Int -> IO () #

ztrsm :: Order -> Side -> Uplo -> Transpose -> Diag -> Int -> Int -> Complex Double -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> IO () #