MatchBox
MatchBox is software for computing matchings in graphs using exact and approximation algorithms. Several variant matching problems are considered: cardinality matching, vertex-weighted matching, edge-weighted matching, submodular matching, etc.
The software is available on Github, and you can download it by clicking on
the word MatchBox in the title of this paragaph.
Several former and current students have contributed to this package, including Florin Dobrian, Mahnatesh Halappanavar, Arif Khan, S M Ferdous, Shivaram Gopal, and others.
The best source for citing this work is
Alex Pothen, S M Ferdous and Fredrik Manne
Approximation Algorithms in Combinatorial Scientific Computing, ,
Acta Numerica, 28, pp. 541-633, 2019.
ReverseAD
ReverseAD is software for computing first and higher order derivatives directly
using the Reverse mode of Algorithmic Differentiation.
We have provided the software on Github, and you can download it by clicking on
the word ReverseAD in the title of this paragaph.
Papers describing this work are going through the publication process.
The best source for citing this work currently is
Mu Wang,
High Order Reverse Mode in Automatic Differentiation,
PhD Thesis, Purdue University, June 2017.
LivarH
LivarH is software for computing Hessians directly using the Reverse mode of
Algorithmic Differentiation,
based on the concept of Live Variables (derived from the Edge Pushing algorithm
of Robert Gower and Margarida Mello). It is implemented on top of ADOL_C.
We have provided the software on Github, and you can download it by clicking on
the word LivarH in the title of this paragaph.
The best source for citing this work is
Mu Wang, Assefaw H. Gebremedhin, and Alex Pothen,
Capitalizing on Live Variables: Efficient Hessian computations for
Automatic Differentiation,
Mathematical Programming Computation, 8(4), pp. 393-433, Dec. 2016.
ColPack
ColPack is a software package consisting of sequential algorithms for a variety of graph
coloring and related problems in sparse derivative matrix computation. It is written in C++ heavily using
the STL. Its first version was released in Sept 2008, and has been updated regularly.
It has been incorporated into ADOL_C, and is also available from Github.
You can download it from there by clicking on the word ColPack in the title of this paragraph.
The best source for citing this work is
Assefaw H. Gebremedhin, Duc Nguyen, Mostofa Ali Patwary, and Alex Pothen,
ColPack: Graph coloring software for derivative computation and beyond,
ACM Transactions on Mathematical Software, 40 (1), 30 pp., 2013.
bMatching
bMatching is C++ software implementing the bSuitor algorithm, a 1/2-approximation
algorithm for a variant of the matching problem in graphs, called bMatching.
The package is currently under active development, but you can download our codes for the
shared memory parallel machines, the Intel Xeon and Intel Xeon Phi, by clicking on the
title of this paragraph.
We have also implemented this algorithm on a distributed memory machine with ten-thousands of cores
at NERSC called Cori.
The best source for citing this work is
Arif Khan, Alex Pothen, Md Mostofa Ali Patwary, Nadathur Satish, Narayanan Sundaram,
Fredrik Manne, Mahantesh Halappanavar and Pradeep Dubey,
Efficient Approximation Algorithms for Weighted b-Matching,
SIAM Journal on Scientific Computing, 38(5), S593-S619, 2016.
FlowMatch
Flowmatch is a software package implementing an algorithmic pipeline,
algorithms for solving a collection of data processing problems in Flow Cytometry.
These problems include matching cell populations
in different samples, building meta-clusters and templates to summarize clustered
samples, organizing templates into a template tree data structure,
and using the tree to classify new samples while dynamically updating the templates.
It is written in C++ and R. Its first version was released in 2014,
and is being updated regularly.
It is available from Bioconductor, and you can download a copy by clicking on the word
FlowMatch in the title of this paragraph.
The best source for citing this work is
Ariful Azad, Bartek Rajwa and Alex Pothen,
Immunophenotype discovery, hierarchical organization, and template-based
classification of flow cytometry samples,
Frontiers in Oncology, August 2016.
OBLIO
An algorithmic laboratory for solving spase symmetric (indefinite and positive definite) systems of linear equations by factorization.
Contact Alex Pothen or Florin Dobrian (dobrian at cs dot odu dot edu) for a copy.
EUCLID
C and MPI software for incomplete factor (ILU and IC) preconditioners on parallel computers. This is pretty dated now, please contact David Hysom (hysom at llnl dot gov) for a copy.
It is included in the Hypre library.