Interfaces

Here are some other ways to access the collection.

Java Graphical Interface (ssgui)

The ssget package includes a Java program (ssgui) for browsing and downloading the matrices in any format on any platform.

ssgui screenshot

Yifan Hu

In addition to creating the graph visualizations used on this site, Yifan Hu maintains a matrix search engine for finding matrices with specific properties.


MATLAB Interface (ssget)

Click here for the ssget MATLAB and ssgui Java interfaces. ssget.m provides for simple access to the collection, right inside your MATLAB workspace. From inside MATLAB, ssget will download a matrix, cache it locally, and load it into your MATLAB workspace. No need to use a browser to get a matrix. You can even use the built-in index to search for matrices that fit your criteria, all inside MATLAB.

For example, to download all symmetric matrices into MATLAB, in increasing size as measured by nnz(A):

index = ssget ;           % get index of the SuiteSparse Matrix Collection
ids = find (index.numerical_symmetry == 1) ;
[ignore, i] = sort (index.nnz (ids)) ;
ids = ids (i) ;
for id = ids
  Prob = ssget (id)     % Prob is a struct (matrix, name, meta-data, ...)
  A = Prob.A ;          % A is a symmetric sparse matrix


Julia Interface

Weijian Zhang, at the University of Manchester, has created a Julia interface to the SuiteSparse collection.

Python Interface

Sudarshan Raghunathan has written a Python interface, ssgetpy. You can see examples of how to use it in this Jupyter notebook.