Algorithm 408: a sparse matrix package (part I) [F4]