sig
type spmat
val zeros : int -> int -> Owl_sparse_real.spmat
val ones : int -> int -> Owl_sparse_real.spmat
val eye : int -> Owl_sparse_real.spmat
val binary : int -> int -> Owl_sparse_real.spmat
val uniform : ?scale:float -> int -> int -> Owl_sparse_real.spmat
val uniform_int : ?a:int -> ?b:int -> int -> int -> Owl_sparse_real.spmat
val linspace : float -> float -> int -> Owl_sparse_real.spmat
val shape : Owl_sparse_real.spmat -> int * int
val row_num : Owl_sparse_real.spmat -> int
val col_num : Owl_sparse_real.spmat -> int
val row_num_nz : Owl_sparse_real.spmat -> int
val col_num_nz : Owl_sparse_real.spmat -> int
val numel : Owl_sparse_real.spmat -> int
val nnz : Owl_sparse_real.spmat -> int
val nnz_rows : Owl_sparse_real.spmat -> int array
val nnz_cols : Owl_sparse_real.spmat -> int array
val density : Owl_sparse_real.spmat -> float
val get : Owl_sparse_real.spmat -> int -> int -> float
val set : Owl_sparse_real.spmat -> int -> int -> float -> unit
val reset : Owl_sparse_real.spmat -> unit
val clone : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val transpose : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val diag : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val trace : Owl_sparse_real.spmat -> float
val row : Owl_sparse_real.spmat -> int -> Owl_sparse_real.spmat
val col : Owl_sparse_real.spmat -> int -> Owl_sparse_real.spmat
val rows : Owl_sparse_real.spmat -> int array -> Owl_sparse_real.spmat
val cols : Owl_sparse_real.spmat -> int array -> Owl_sparse_real.spmat
val iteri : (int -> int -> float -> unit) -> Owl_sparse_real.spmat -> unit
val iter : (float -> unit) -> Owl_sparse_real.spmat -> unit
val mapi :
(int -> int -> float -> float) ->
Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val map :
(float -> float) -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val fold : ('a -> float -> 'a) -> 'a -> Owl_sparse_real.spmat -> 'a
val filteri :
(int -> int -> float -> bool) ->
Owl_sparse_real.spmat -> (int * int) array
val filter : (float -> bool) -> Owl_sparse_real.spmat -> (int * int) array
val iteri_rows :
(int -> Owl_sparse_real.spmat -> unit) -> Owl_sparse_real.spmat -> unit
val iter_rows :
(Owl_sparse_real.spmat -> unit) -> Owl_sparse_real.spmat -> unit
val iteri_cols :
(int -> Owl_sparse_real.spmat -> unit) -> Owl_sparse_real.spmat -> unit
val iter_cols :
(Owl_sparse_real.spmat -> unit) -> Owl_sparse_real.spmat -> unit
val mapi_rows :
(int -> Owl_sparse_real.spmat -> 'a) -> Owl_sparse_real.spmat -> 'a array
val map_rows :
(Owl_sparse_real.spmat -> 'a) -> Owl_sparse_real.spmat -> 'a array
val mapi_cols :
(int -> Owl_sparse_real.spmat -> 'a) -> Owl_sparse_real.spmat -> 'a array
val map_cols :
(Owl_sparse_real.spmat -> 'a) -> Owl_sparse_real.spmat -> 'a array
val fold_rows :
('a -> Owl_sparse_real.spmat -> 'a) -> 'a -> Owl_sparse_real.spmat -> 'a
val fold_cols :
('a -> Owl_sparse_real.spmat -> 'a) -> 'a -> Owl_sparse_real.spmat -> 'a
val iteri_nz :
(int -> int -> float -> unit) -> Owl_sparse_real.spmat -> unit
val iter_nz : (float -> unit) -> Owl_sparse_real.spmat -> unit
val mapi_nz :
(int -> int -> float -> float) ->
Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val map_nz :
(float -> float) -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val fold_nz : ('a -> float -> 'a) -> 'a -> Owl_sparse_real.spmat -> 'a
val filteri_nz :
(int -> int -> float -> bool) ->
Owl_sparse_real.spmat -> (int * int) array
val filter_nz :
(float -> bool) -> Owl_sparse_real.spmat -> (int * int) array
val iteri_rows_nz :
(int -> Owl_sparse_real.spmat -> unit) -> Owl_sparse_real.spmat -> unit
val iter_rows_nz :
(Owl_sparse_real.spmat -> unit) -> Owl_sparse_real.spmat -> unit
val iteri_cols_nz :
(int -> Owl_sparse_real.spmat -> unit) -> Owl_sparse_real.spmat -> unit
val iter_cols_nz :
(Owl_sparse_real.spmat -> unit) -> Owl_sparse_real.spmat -> unit
val mapi_rows_nz :
(int -> Owl_sparse_real.spmat -> 'a) -> Owl_sparse_real.spmat -> 'a array
val map_rows_nz :
(Owl_sparse_real.spmat -> 'a) -> Owl_sparse_real.spmat -> 'a array
val mapi_cols_nz :
(int -> Owl_sparse_real.spmat -> 'a) -> Owl_sparse_real.spmat -> 'a array
val map_cols_nz :
(Owl_sparse_real.spmat -> 'a) -> Owl_sparse_real.spmat -> 'a array
val fold_rows_nz :
('a -> Owl_sparse_real.spmat -> 'a) -> 'a -> Owl_sparse_real.spmat -> 'a
val fold_cols_nz :
('a -> Owl_sparse_real.spmat -> 'a) -> 'a -> Owl_sparse_real.spmat -> 'a
val exists : (float -> bool) -> Owl_sparse_real.spmat -> bool
val not_exists : (float -> bool) -> Owl_sparse_real.spmat -> bool
val for_all : (float -> bool) -> Owl_sparse_real.spmat -> bool
val exists_nz : (float -> bool) -> Owl_sparse_real.spmat -> bool
val not_exists_nz : (float -> bool) -> Owl_sparse_real.spmat -> bool
val for_all_nz : (float -> bool) -> Owl_sparse_real.spmat -> bool
val mul_scalar : Owl_sparse_real.spmat -> float -> Owl_sparse_real.spmat
val div_scalar : Owl_sparse_real.spmat -> float -> Owl_sparse_real.spmat
val add :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val sub :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val mul :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val div :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val dot :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val abs : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val neg : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val sum : Owl_sparse_real.spmat -> float
val average : Owl_sparse_real.spmat -> float
val power : Owl_sparse_real.spmat -> float -> Owl_sparse_real.spmat
val is_zero : Owl_sparse_real.spmat -> bool
val is_positive : Owl_sparse_real.spmat -> bool
val is_negative : Owl_sparse_real.spmat -> bool
val is_nonnegative : Owl_sparse_real.spmat -> bool
val min : Owl_sparse_real.spmat -> float
val max : Owl_sparse_real.spmat -> float
val minmax : Owl_sparse_real.spmat -> float * float
val sum_rows : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val sum_cols : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val average_rows : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val average_cols : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val is_equal : Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val is_unequal : Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val is_greater : Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val is_smaller : Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val equal_or_greater :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val equal_or_smaller :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val permutation_matrix : int -> Owl_sparse_real.spmat
val draw_rows :
?replacement:bool ->
Owl_sparse_real.spmat -> int -> Owl_sparse_real.spmat * int array
val draw_cols :
?replacement:bool ->
Owl_sparse_real.spmat -> int -> Owl_sparse_real.spmat * int array
val shuffle_rows : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val shuffle_cols : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val shuffle : Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val to_dense : Owl_sparse_real.spmat -> Owl_dense_real.mat
val of_dense : Owl_dense_real.mat -> Owl_sparse_real.spmat
val print : Owl_sparse_real.spmat -> unit
val pp_spmat : Owl_sparse_real.spmat -> unit
val save : Owl_sparse_real.spmat -> string -> unit
val load : string -> Owl_sparse_real.spmat
val ( +@ ) :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val ( -@ ) :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val ( *@ ) :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val ( /@ ) :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val ( $@ ) :
Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val ( **@ ) : Owl_sparse_real.spmat -> float -> Owl_sparse_real.spmat
val ( *$ ) : Owl_sparse_real.spmat -> float -> Owl_sparse_real.spmat
val ( /$ ) : Owl_sparse_real.spmat -> float -> Owl_sparse_real.spmat
val ( $* ) : float -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val ( $/ ) : float -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
val ( =@ ) : Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val ( >@ ) : Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val ( <@ ) : Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val ( <>@ ) : Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val ( >=@ ) : Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val ( <=@ ) : Owl_sparse_real.spmat -> Owl_sparse_real.spmat -> bool
val ( @@ ) :
(float -> float) -> Owl_sparse_real.spmat -> Owl_sparse_real.spmat
end