Module Owl_sparse_matrix_z
Create sparse matrices
val zeros : int -> int -> matval ones : int -> int -> matval binary : int -> int -> matval sequential : int -> int -> matObtain the basic properties of a matrix
val shape : mat -> int * intval row_num_nz : mat -> intval col_num_nz : mat -> intval nnz_rows : mat -> int arrayval nnz_cols : mat -> int arrayval density : mat -> floatManipulate a matrix
val insert : mat -> int -> int -> elt -> unitval set : mat -> int -> int -> elt -> unitval get : mat -> int -> int -> eltval rows : mat -> int array -> matval cols : mat -> int array -> matval prune : mat -> elt -> float -> unitIterate elements, columns, and rows
val iteri : (int -> int -> elt -> unit) -> mat -> unitval iter : (elt -> unit) -> mat -> unitval foldi : (int -> int -> 'a -> elt -> 'a) -> 'a -> mat -> 'aval fold : ('a -> elt -> 'a) -> 'a -> mat -> 'aval filteri : (int -> int -> elt -> bool) -> mat -> (int * int) arrayval filter : (elt -> bool) -> mat -> (int * int) arrayval iteri_rows : (int -> mat -> unit) -> mat -> unitval iter_rows : (mat -> unit) -> mat -> unitval iteri_cols : (int -> mat -> unit) -> mat -> unitval iter_cols : (mat -> unit) -> mat -> unitval mapi_rows : (int -> mat -> 'a) -> mat -> 'a arrayval map_rows : (mat -> 'a) -> mat -> 'a arrayval mapi_cols : (int -> mat -> 'a) -> mat -> 'a arrayval map_cols : (mat -> 'a) -> mat -> 'a arrayval fold_rows : ('a -> mat -> 'a) -> 'a -> mat -> 'aval fold_cols : ('a -> mat -> 'a) -> 'a -> mat -> 'aval iteri_nz : (int -> int -> elt -> unit) -> mat -> unitval iter_nz : (elt -> unit) -> mat -> unitval foldi_nz : (int -> int -> 'a -> elt -> 'a) -> 'a -> mat -> 'aval fold_nz : ('a -> elt -> 'a) -> 'a -> mat -> 'aval filteri_nz : (int -> int -> elt -> bool) -> mat -> (int * int) arrayval filter_nz : (elt -> bool) -> mat -> (int * int) arrayval iteri_rows_nz : (int -> mat -> unit) -> mat -> unitval iter_rows_nz : (mat -> unit) -> mat -> unitval iteri_cols_nz : (int -> mat -> unit) -> mat -> unitval iter_cols_nz : (mat -> unit) -> mat -> unitval mapi_rows_nz : (int -> mat -> 'a) -> mat -> 'a arrayval map_rows_nz : (mat -> 'a) -> mat -> 'a arrayval mapi_cols_nz : (int -> mat -> 'a) -> mat -> 'a arrayval map_cols_nz : (mat -> 'a) -> mat -> 'a arrayval fold_rows_nz : ('a -> mat -> 'a) -> 'a -> mat -> 'aval fold_cols_nz : ('a -> mat -> 'a) -> 'a -> mat -> 'aExamin elements and compare two matrices
val exists : (elt -> bool) -> mat -> boolval not_exists : (elt -> bool) -> mat -> boolval for_all : (elt -> bool) -> mat -> boolval exists_nz : (elt -> bool) -> mat -> boolval not_exists_nz : (elt -> bool) -> mat -> boolval for_all_nz : (elt -> bool) -> mat -> boolval is_zero : mat -> boolval is_positive : mat -> boolval is_negative : mat -> boolval is_nonnegative : mat -> boolval equal : mat -> mat -> boolval not_equal : mat -> mat -> boolval greater : mat -> mat -> boolval greater_equal : mat -> mat -> boolval less_equal : mat -> mat -> boolRandomisation functions
val permutation_matrix : int -> matval draw_rows : ?replacement:bool -> mat -> int -> mat * int arrayval draw_cols : ?replacement:bool -> mat -> int -> mat * int arrayval to_array : mat -> (int array * elt) arrayval of_array : int -> int -> (int array * elt) array -> matval save : mat -> string -> unitUnary mathematical operations
Binary mathematical operations
val mpow : mat -> float -> mat