struct   type int_array = int array   type elt_array = (Complex.t, complex64_elt, c_layout) Array1.t   
  (** record definition for sparse matrix *)
  type spmat_record = {     mutable m   : int;           (* number of rows *)     mutable n   : int;           (* number of columns *)     mutable i   : int_array;     (* i index, meaning depends on the matrix format *)     mutable d   : elt_array;     (* where data actually stored *)     mutable p   : int_array;     (* p index, meaning depends on the matrix format *)     mutable nz  : int;           (* total number of non-zero elements *)     mutable typ : int;           (* sparse matrix format, 0:triplet; 1:CCS; 2:CRS *)     mutable h   : (int, int) Hashtbl.t   } end