module Slap: sig
.. end
A linear algebra library with type-based static size checking for matrix
operations. SLAP (Sized Linear Algebra Package) helps debug of your programs
by detecting dimensional inconsistency, e.g., addition of two- and three-
dimensional vectors, at
compile time (instead of runtime) and at
higher level (i.e., at a caller site rather than somewhere deep inside of a
call stack). This library is a wrapper of
LACAML, a binding of widely-used linear
algebra libraries
BLAS (Basic Linear Algebra
Subprograms) and
LAPACK (Linear Algebra
PACKage) in FORTRAN. Many functions are compatible with the interface of
LACAML. You can make use of SLAP by referring
Slap.Common
and the module
corresponding to the precision and the number type you need:
open Slap.Common
open Slap.S (* 32-bit real BLAS and LAPACK functions *)
open Slap.D (* 64-bit real BLAS and LAPACK functions *)
open Slap.C (* 32-bit complex BLAS and LAPACK functions *)
open Slap.Z (* 64-bit complex BLAS and LAPACK functions *)
To use this library, the following documentation may be useful to you:
The man pages are also available on your machine if
you installed
manpages.tgz or
the corresponding package provided by your distribution.
include Slap_misc
Miscellaneous definitions.
module Size: Slap_size
Sizes (the dimensions of vectors and matrices).
module Vec: Slap_vec
Sized vectors.
module Mat: Slap_mat
Sized matrices.
module Io: Slap_io
Pretty printers.
module Version: Slap_version
The version number of SLAP.
module Common: Slap_common
Types, flags and functions commonly used in precision dependent modules.
module D: Slap_D
64-bit real BLAS and LAPACK functions.
module S: Slap_S
32-bit real BLAS and LAPACK functions.
module Z: Slap_Z
64-bit complex BLAS and LAPACK functions.
module C: Slap_C
32-bit complex BLAS and LAPACK functions.