I work on various packages in the Trilinos framework. Trilinos has been our primary delivery vehicle for the algorithms we have developed at Sandia.

I am the lead developer of ShyLU (Scalable Hybrid LU, pronounced Shy-Loo) a hybrid proconditioner/solver. ShyLU uses the hybrid (direct + iterative) approach to be robust and MPI + Threads to be a scalable solver. ShyLU is already being used in Xyce Circuit Simulation Package.

I am the lead developer of Amesos2, the interface to different direct solvers in Trilinos. Amesos2 is designed to work with the next generation Trilinos stack, with interfaces to multiple direct solvers.

I am also developer of Zoltan, load balancing and partitioning package. Some of the combinatorial algorithms like the multithreaded matching algorithms we developed were delivered through the Isorropia package in Trilinos.

CCOLAMD generates constraint preserving ordering that reduces fill-in and requires fewer floating point operations in sparse Cholesky and sparse LU factorizations. It is based on COLAMD. CCOLAMD is part of CHOLMOD. Download or Browse CCOLAMD code.

CCOLAMD generates constraint preserving ordering that reduces fill-in and requires fewer floating point operations in sparse Cholesky and sparse LU factorizations. It is based on COLAMD. CCOLAMD is part of CHOLMOD. Download or Browse CCOLAMD code.

PIRO_BAND reduces symmetric/unsymmetric band matrices to tridiagonal/bidiagonal form. PIRO_BAND supports double and single precision arithmetic for real and complex matrices in architectures with 32-bit and 64-bit integers. PIRO_BAND can also compute the SVD for a band matrix. Browse PIRO_BAND code (beta) or Download PIRO_BAND (beta).

PIRO_SKY finds the singular value decomposition of sparse matrices. PIRO_SKY uses a sparse QR factorization and sparse tridigonalization of the R from the QR factorization to compute the SVD of the sparse matrix. PIRO_SKY will be released in Fall 2009. Send me an e-mail if you would like to see the current version of the code.