Module VectorMatrix.ArrayMatrix

Array-based matrix implementation. It provides a normalization function to reduce a matrix into reduced row echelon form. Operations exploit that the input matrix/matrices are in reduced row echelon form already.

Parameters

module A : RatOps
module V : AbstractVector

Signature

include Matrix with type vec := V(A).t and type num := A.t
type t
val equal : t -> t -> Ppx_deriving_runtime.bool
val compare : t -> t -> Ppx_deriving_runtime.int
val hash : t -> int
val empty : unit -> t
val is_empty : t -> bool
val show : t -> string
val add_empty_columns : t -> int array -> t
val append_row : t -> V(A).t -> t
val get_row : t -> int -> V(A).t
val del_col : t -> int -> t
val del_cols : t -> int array -> t
val remove_row : t -> int -> t
val get_col : t -> int -> V(A).t
val append_matrices : t -> t -> t
val num_rows : t -> int
val num_cols : t -> int
val reduce_col : t -> int -> t
val reduce_col_with : t -> int -> unit
val normalize : t -> t Batteries.Option.t
val normalize_with : t -> bool
val rref_vec_with : t -> V(A).t -> t Batteries.Option.t
val rref_matrix_with : t -> t -> t Batteries.Option.t
val find_opt : (V(A).t -> bool) -> t -> V(A).t option
val map2 : (V(A).t -> A.t -> V(A).t) -> t -> V(A).t -> t
val map2_with : (V(A).t -> A.t -> V(A).t) -> t -> V(A).t -> unit
val map2i : (int -> V(A).t -> A.t -> V(A).t) -> t -> V(A).t -> t
val map2i_with : (int -> V(A).t -> A.t -> V(A).t) -> t -> V(A).t -> unit
val set_col : t -> V(A).t -> int -> t
val set_col_with : t -> V(A).t -> int -> t
val init_with_vec : V(A).t -> t
val remove_zero_rows : t -> t
val is_covered_by : t -> t -> bool
val copy : t -> t