ScottKolo/suitesparse-matrix-collection-website

View on GitHub
app/views/pages/interfaces.html.haml

Summary

Maintainability
Test Coverage
=provide(:title, "Interfaces")
=provide(:description, "Interfaces for accessing the SuiteSparse Matrix Collection")

%h2 Interfaces
%p
  Here are some other ways to access the collection.

%h3 Java Graphical Interface (ssgui)
%p
  The #{link_to "ssget", "http://sparse.tamu.edu/files/ssget.tar.gz"}
  package includes a Java program (ssgui) for browsing and downloading the
  matrices in any format on any platform.

%div
  #{link_to image_tag("https://sparse.tamu.edu/files/ssget_java.png", alt: "ssgui screenshot"), "http://sparse.tamu.edu/files/ssget.tar.gz"}

%hr

%h3 Yifan Hu
%p
  In addition to creating the 
  #{link_to "graph visualizations", "http://yifanhu.net/GALLERY/GRAPHS/"} used on this site, Yifan Hu maintains a 
  #{link_to "matrix search engine", "http://yifanhu.net/GALLERY/GRAPHS/search.html"} for finding matrices with specific properties.

%hr

%h3 MATLAB Interface (ssget)
%p
  #{link_to "Click here for the ssget MATLAB and ssgui Java interfaces","http://sparse.tamu.edu/files/ssget.tar.gz"}. 
  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.
%p
  For example, to download all symmetric matrices
  into MATLAB, in increasing size as measured by nnz(A):
  %pre
    = preserve do
      :escaped
        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

%hr

%h3 Julia Interface
%p
  #{link_to "Weijian Zhang", "http://www.maths.manchester.ac.uk/~weijian/"}, at the University of Manchester, has created a
  #{link_to "Julia interface to the SuiteSparse collection", "http://matrixdepotjl.readthedocs.org/en/latest/interface.html#interfaces"}.

%h3 Python Interface
%p
  Sudarshan Raghunathan has written a Python interface,
  #{link_to "ssgetpy","https://github.com/drdarshan/ssgetpy"}.
  You can see examples of how to use it in
  #{link_to "this Jupyter notebook","https://nbviewer.jupyter.org/github/drdarshan/ssgetpy/blob/master/demo.ipynb"}.

%h3 R Interface
%p
  #{link_to "Fabian Navarro", "https://fnavarro.perso.math.cnrs.fr/"}, at CREST-ENSAI, France, has an
  #{link_to "R interface to the SuiteSparse collection", "https://cran.r-project.org/web/packages/gasper/index.html"}.

%hr