include Owl_dense_matrix_d
Create dense matrices
val empty : int ‑> int ‑> matval create : int ‑> int ‑> elt ‑> matval init : int ‑> int ‑> (int ‑> elt) ‑> matval init_nd : int ‑> int ‑> (int ‑> int ‑> elt) ‑> matval zeros : int ‑> int ‑> matval ones : int ‑> int ‑> matval sequential : ?a:elt ‑> ?step:elt ‑> int ‑> int ‑> matval gaussian : ?sigma:float ‑> int ‑> int ‑> matval bernoulli : ?p:float ‑> ?seed:int ‑> int ‑> int ‑> matval diagm : ?k:int ‑> mat ‑> matval triu : ?k:int ‑> mat ‑> matval tril : ?k:int ‑> mat ‑> matval symmetric : ?upper:bool ‑> mat ‑> matval bidiagonal : ?upper:bool ‑> mat ‑> mat ‑> matval hadamard : int ‑> matDense row vectors and meshgrids
val vector_zeros : int ‑> matval vector_ones : int ‑> matval logspace : ?base:float ‑> elt ‑> elt ‑> int ‑> matObtain the basic properties of a matrix
val shape : mat ‑> int * intval density : mat ‑> floatval size_in_bytes : mat ‑> intval same_shape : mat ‑> mat ‑> boolManipulate a matrix
val get : mat ‑> int ‑> int ‑> eltval set : mat ‑> int ‑> int ‑> elt ‑> unitval get_index : mat ‑> int array array ‑> elt arrayval set_index : mat ‑> int array array ‑> elt array ‑> unitval get_slice_simple : int list list ‑> mat ‑> matval set_slice_simple : int list list ‑> mat ‑> mat ‑> unitval rows : mat ‑> int array ‑> matval cols : mat ‑> int array ‑> matval resize : ?head:bool ‑> mat ‑> int array ‑> matval reshape : mat ‑> int array ‑> matval flip : ?axis:int ‑> mat ‑> matval rotate : mat ‑> int ‑> matval copy_to : mat ‑> mat ‑> unitval copy_row_to : mat ‑> mat ‑> int ‑> unitval copy_col_to : mat ‑> mat ‑> int ‑> unitval concatenate : ?axis:int ‑> mat array ‑> matval split : ?axis:int ‑> int array ‑> mat ‑> mat arrayval diag : ?k:int ‑> mat ‑> matval swap_rows : mat ‑> int ‑> int ‑> unitval swap_cols : mat ‑> int ‑> int ‑> unitval tile : mat ‑> int array ‑> matval repeat : ?axis:int ‑> mat ‑> int ‑> matval pad : ?v:elt ‑> int list list ‑> mat ‑> matval dropout : ?rate:float ‑> ?seed:int ‑> mat ‑> matval top : mat ‑> int ‑> int array arrayval bottom : mat ‑> int ‑> int array arrayIterate 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 iter2i_rows : (int ‑> mat ‑> mat ‑> unit) ‑> mat ‑> mat ‑> unitval iteri_cols : (int ‑> mat ‑> unit) ‑> mat ‑> unitval iter_cols : (mat ‑> unit) ‑> mat ‑> unitval filteri_rows : (int ‑> mat ‑> bool) ‑> mat ‑> int arrayval filter_rows : (mat ‑> bool) ‑> mat ‑> int arrayval filteri_cols : (int ‑> mat ‑> bool) ‑> mat ‑> int arrayval filter_cols : (mat ‑> bool) ‑> mat ‑> int arrayval fold_rows : ('a ‑> mat ‑> 'a) ‑> 'a ‑> mat ‑> 'aval fold_cols : ('a ‑> mat ‑> 'a) ‑> 'a ‑> mat ‑> 'aval 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 mapi_at_row : (int ‑> int ‑> elt ‑> elt) ‑> mat ‑> int ‑> matval mapi_at_col : (int ‑> int ‑> elt ‑> elt) ‑> mat ‑> int ‑> matExamin elements and compare two matrices
val exists : (elt ‑> bool) ‑> mat ‑> boolval not_exists : (elt ‑> bool) ‑> mat ‑> boolval for_all : (elt ‑> bool) ‑> mat ‑> boolval is_zero : mat ‑> boolval is_positive : mat ‑> boolval is_negative : mat ‑> boolval is_nonpositive : mat ‑> boolval is_nonnegative : mat ‑> boolval is_normal : mat ‑> boolval not_nan : mat ‑> boolval not_inf : mat ‑> boolval equal : mat ‑> mat ‑> boolval not_equal : mat ‑> mat ‑> boolval greater : mat ‑> mat ‑> boolval greater_equal : mat ‑> mat ‑> boolval less_equal : mat ‑> mat ‑> boolval equal_scalar : mat ‑> elt ‑> boolval not_equal_scalar : mat ‑> elt ‑> boolval less_scalar : mat ‑> elt ‑> boolval greater_scalar : mat ‑> elt ‑> boolval less_equal_scalar : mat ‑> elt ‑> boolval greater_equal_scalar : mat ‑> elt ‑> boolval elt_less_equal_scalar : mat ‑> elt ‑> matval elt_greater_equal_scalar : mat ‑> elt ‑> matval approx_equal : ?eps:float ‑> mat ‑> mat ‑> boolval approx_equal_scalar : ?eps:float ‑> mat ‑> elt ‑> boolval approx_elt_equal : ?eps:float ‑> mat ‑> mat ‑> matval approx_elt_equal_scalar : ?eps:float ‑> mat ‑> elt ‑> matRandomisation functions
val draw_rows : ?replacement:bool ‑> mat ‑> int ‑> mat * int arrayval draw_cols : ?replacement:bool ‑> mat ‑> int ‑> mat * int arrayval draw_rows2 : ?replacement:bool ‑> mat ‑> mat ‑> int ‑> mat * mat * int arrayval draw_cols2 : ?replacement:bool ‑> mat ‑> mat ‑> int ‑> mat * mat * int arrayInput/Output and helper functions
val to_array : mat ‑> elt arrayval of_array : elt array ‑> int ‑> int ‑> matval to_arrays : mat ‑> elt array arrayval of_arrays : elt array array ‑> matval to_rows : mat ‑> mat arrayval of_rows : mat array ‑> matval to_cols : mat ‑> mat arrayval of_cols : mat array ‑> matval print : ?max_row:int ‑> ?max_col:int ‑> ?header:bool ‑> ?fmt:(elt ‑> string) ‑> mat ‑> unitval save : mat ‑> string ‑> unitval save_txt : mat ‑> string ‑> unitval load_txt : string ‑> matUnary mathematical operations
val min_i : mat ‑> elt * int arrayval max_i : mat ‑> elt * int arrayval minmax_i : mat ‑> (elt * int array) * (elt * int array)val sum_ : ?axis:int ‑> mat ‑> matval prod : ?axis:int option array ‑> mat ‑> eltval min_rows : mat ‑> (elt * int * int) arrayval min_cols : mat ‑> (elt * int * int) arrayval max_rows : mat ‑> (elt * int * int) arrayval max_cols : mat ‑> (elt * int * int) arrayval cumsum : ?axis:int ‑> mat ‑> matval cumprod : ?axis:int ‑> mat ‑> matval cummin : ?axis:int ‑> mat ‑> matval cummax : ?axis:int ‑> mat ‑> matval var : ?axis:int ‑> mat ‑> matval std : ?axis:int ‑> mat ‑> matBinary mathematical operations