Pieces

A few data formats
mxl (int * int * 'a) array -> int -> int -> 'a
mxl takes an array of triples: (int * int * float) and returns a function with the same information. An element of the input identifies two vertices and the ds2 between them. Inside is an array of lists indexed by the smaller name of the two edge end points. This form is faster to look up metric information.
inv float array array -> float array array
Ocaml Matrix Inversion—inverts an array of arrays of floats.
boundary int list list -> int list list
Computes the boundary of a complex.
boundary int list list -> int list list
Variant on above; also builds scaffold.
Zone
Zone centered logic
Tensor Advection