sig
val random :
?rnd_state:Random.State.t ->
?re_from:float ->
?re_range:float ->
?im_from:float -> ?im_range:float -> int -> int -> Lacaml.C.mat
val create : int -> int -> Lacaml.C.mat
val make : int -> int -> Lacaml.C.num_type -> Lacaml.C.mat
val make0 : int -> int -> Lacaml.C.mat
val of_array : Lacaml.C.num_type array array -> Lacaml.C.mat
val to_array : Lacaml.C.mat -> Lacaml.C.num_type array array
val of_col_vecs : Lacaml.C.vec array -> Lacaml.C.mat
val to_col_vecs : Lacaml.C.mat -> Lacaml.C.vec array
val as_vec : Lacaml.C.mat -> Lacaml.C.vec
val init_rows :
int -> int -> (int -> int -> Lacaml.C.num_type) -> Lacaml.C.mat
val init_cols :
int -> int -> (int -> int -> Lacaml.C.num_type) -> Lacaml.C.mat
val create_mvec : int -> Lacaml.C.mat
val make_mvec : int -> Lacaml.C.num_type -> Lacaml.C.mat
val mvec_of_array : Lacaml.C.num_type array -> Lacaml.C.mat
val mvec_to_array : Lacaml.C.mat -> Lacaml.C.num_type array
val from_col_vec : Lacaml.C.vec -> Lacaml.C.mat
val from_row_vec : Lacaml.C.vec -> Lacaml.C.mat
val empty : Lacaml.C.mat
val identity : int -> Lacaml.C.mat
val of_diag : Lacaml.C.vec -> Lacaml.C.mat
val dim1 : Lacaml.C.mat -> int
val dim2 : Lacaml.C.mat -> int
val col : Lacaml.C.mat -> int -> Lacaml.C.vec
val copy_row : ?vec:Lacaml.C.vec -> Lacaml.C.mat -> int -> Lacaml.C.vec
val transpose_copy :
?m:int ->
?n:int ->
?ar:int ->
?ac:int -> Lacaml.C.mat -> ?br:int -> ?bc:int -> Lacaml.C.mat -> unit
val transpose :
?m:int -> ?n:int -> ?ar:int -> ?ac:int -> Lacaml.C.mat -> Lacaml.C.mat
val detri :
?up:bool -> ?n:int -> ?ar:int -> ?ac:int -> Lacaml.C.mat -> unit
val packed :
?up:bool -> ?n:int -> ?ar:int -> ?ac:int -> Lacaml.C.mat -> Lacaml.C.vec
val unpacked : ?up:bool -> ?n:int -> Lacaml.C.vec -> Lacaml.C.mat
val add_const :
Lacaml.C.num_type ->
?m:int ->
?n:int ->
?br:int ->
?bc:int ->
?b:Lacaml.C.mat -> ?ar:int -> ?ac:int -> Lacaml.C.mat -> Lacaml.C.mat
val sum :
?m:int ->
?n:int -> ?ar:int -> ?ac:int -> Lacaml.C.mat -> Lacaml.C.num_type
val fill :
?m:int ->
?n:int -> ?ar:int -> ?ac:int -> Lacaml.C.mat -> Lacaml.C.num_type -> unit
val copy_diag : Lacaml.C.mat -> Lacaml.C.vec
val trace : Lacaml.C.mat -> Lacaml.C.num_type
val scal :
?m:int ->
?n:int -> Lacaml.C.num_type -> ?ar:int -> ?ac:int -> Lacaml.C.mat -> unit
val scal_cols :
?m:int ->
?n:int ->
?ar:int -> ?ac:int -> Lacaml.C.mat -> ?ofs:int -> Lacaml.C.vec -> unit
val scal_rows :
?m:int ->
?n:int ->
?ofs:int -> Lacaml.C.vec -> ?ar:int -> ?ac:int -> Lacaml.C.mat -> unit
val axpy :
?m:int ->
?n:int ->
?alpha:Lacaml.C.num_type ->
?xr:int ->
?xc:int -> x:Lacaml.C.mat -> ?yr:int -> ?yc:int -> Lacaml.C.mat -> unit
val gemm_diag :
?n:int ->
?k:int ->
?beta:Lacaml.C.num_type ->
?ofsy:int ->
?y:Lacaml.C.vec ->
?transa:Lacaml.C.trans3 ->
?alpha:Lacaml.C.num_type ->
?ar:int ->
?ac:int ->
Lacaml.C.mat ->
?transb:Lacaml.C.trans3 ->
?br:int -> ?bc:int -> Lacaml.C.mat -> Lacaml.C.vec
val syrk_diag :
?n:int ->
?k:int ->
?beta:Lacaml.C.num_type ->
?ofsy:int ->
?y:Lacaml.C.vec ->
?trans:Lacaml.Common.trans2 ->
?alpha:Lacaml.C.num_type ->
?ar:int -> ?ac:int -> Lacaml.C.mat -> Lacaml.C.vec
val gemm_trace :
?n:int ->
?k:int ->
?transa:Lacaml.C.trans3 ->
?ar:int ->
?ac:int ->
Lacaml.C.mat ->
?transb:Lacaml.C.trans3 ->
?br:int -> ?bc:int -> Lacaml.C.mat -> Lacaml.C.num_type
val syrk_trace :
?n:int ->
?k:int -> ?ar:int -> ?ac:int -> Lacaml.C.mat -> Lacaml.C.num_type
val symm2_trace :
?n:int ->
?upa:bool ->
?ar:int ->
?ac:int ->
Lacaml.C.mat ->
?upb:bool -> ?br:int -> ?bc:int -> Lacaml.C.mat -> Lacaml.C.num_type
val map :
(Lacaml.C.num_type -> Lacaml.C.num_type) ->
?m:int ->
?n:int ->
?br:int ->
?bc:int ->
?b:Lacaml.C.mat -> ?ar:int -> ?ac:int -> Lacaml.C.mat -> Lacaml.C.mat
val fold_cols :
('a -> Lacaml.C.vec -> 'a) ->
?n:int -> ?ac:int -> 'a -> Lacaml.C.mat -> 'a
end