James Baglama


Dr. James Baglama Chair of Mathematics
Department of Mathematics and Applied Mathematical Sciences
University of Rhode Island
Kingston, Rhode Island 02881
Office: Lippitt Hall 200D
Phone: 401.874.2709
Fax: 401.874.4454


Brightspace login URI Arts and Science Curriculum Vitæ
e-Campus Starfish URI Manual
Faculty Senate           Papers Quotes
Fall 2021 MTH 215
Fall 2021 MTH 472 / AMS 590
Software 2019 Calc-Bowl
URI Catalog URI Academic Calendars AAUP
A-Z Directory URI Catalog-Courses Zoom



Education


Professional Links


Software


All computer codes are illustrations of methods developed in the Papers listed below. They are not optimized for performance or set up for commercial use. Any use beyond illustrative or public use requires consent of the code author(s) - James Baglama.


EIGENVALUES
Symmetric
The program irbleigs.m is a MATLAB program for computing a few eigenvalues and associated eigenvectors located anywhere in spectrum of a large sparse Hermitian matrix. The irbleigs.m program is matrix-free, i.e., the matrix is accessed only through the evaluation of matrix-vector products. The code can also compute the generalized eigenpairs of certain generalized eigenvalue problems. References (papers) 1, 2, 3, 9, and 10.
Click here to download the MATLAB code irbleigs.m.
The program trreigs.m is a MATLAB program for computing a few extreme eigenvalues and associated eigenvectors of a large sparse symmetric matrix. The trreigs.m program is matrix-free, i.e., the matrix is accessed only through the evaluation of matrix-vector products. This MATLAB code trreigs.m is provided to illustrate Algorithm 6.1 in the paper An Iterative Method for Computing a Few Eigenpairs of a Large Sparse Symmetric Matrix paper33.pdf
Click here to download the MATLAB code trreigs.m.
   
Non-Symmetric
The program ahbeigs.m is a MATLAB program for computing a few eigenvalues and associated eigenvectors located anywhere in spectrum of a large sparse non-symmetric matrix. The program ahbeigs.m is based on a block Arnoldi method that makes use of Householder reflections to maintain orthogonality and restarting is accomplished by augmentation of the Krylov subspace with Schur vectors. No factorization is required in order to find extreme eigenvalues, however factorization is performed when searching for non-extreme eigenvalues. The program can solve the standard or the generalized eigenvalue problem. Research supported by NSF grant DMS-0311786. Reference paper: Augmented Block Householder Arnoldi Method paper21.pdf
Click here to download the MATLAB code ahbeigs.m.


SINGULAR VALUES
The routine irblsvds.m is a MATLAB program for computing a few singular values and singular vectors of a m x n matrix A. irblsvds.m uses the (m+n) x (m+n) Hermitian matrix Z = [0 A; A' 0] and calls irbleigs.m to find a few eigenvalues and eigenvectors of the matrix Z. The singular values of A are the positive eigenvalues of Z, the "right" singular vectors V, correspond to the last n elements of the eigenvectors of Z, and the "left" singular vectors U, correspond to the first m elements of the eigenvectors of Z.References (papers) 1, 2, 3, 9, and 10.
Click here to download the MATLAB code irblsvds.m.
The routines irlba.m and irlbablk.m are MATLAB programs for computing a few singular values and singular vectors of a m x n matrix A. irlba.m is a restarted Lanczos bidiagonalization method and irlbablk.m is a restarted block Lanczos bidiagonalization method. Restarting is carried out by augmentation of Krylov subspaces with either Ritz vectors or harmonic Ritz vectors. Reference papers: Augmented Implicitly Restarted Lanczos Bidiagonalization Methods paper14.pdf and Restarted Block Lanczos Bidiagonalization Methods paper17.pdf
Click here to download the MATLAB code irlba.m.
Click here to download the block MATLAB code irlbablk.m.
The code irlba has also been written in the language R by Bryan Lewis. Click here for the video and slides.
Click here for the R package on CRAN for the code irlba. Code is maintained by Bryan Lewis.
Click here for the Python package of irlba. Code is maintained by Bryan Lewis.
The routines rd2svds.m and trrsvds.m are MATLAB programs for computing a few singular values and singular vectors of a m x n matrix A. trrsvds.m is a hybrid restarted Lanczos bidiagonalization method using thick-restarting and restarting with linear combination to compute the k largest (or smallest) singular values and associated vectors. Implements Algorithm 4 the paper Hybrid Iterative Refined Restarted Lanczos Bidiagonalization Method rd2svds.m is a restarted Lanczos bidiagonalization method using deflation to compute the k largest singular values and associated vectors. Implements Algorithm 5 the paper Hybrid Iterative Refined Restarted Lanczos Bidiagonalization Method paper34.pdf
Click here to download the readme file readme.txt.
Click here to download the MATLAB driver code driver_trrsvds_rd2svds.m.
Click here to download the MATLAB code trrsvds.m.
Click here to download the MATLAB code rd2svds.m.


LEAST SQUARES
The routines alsqr.m and irlsqr.m are MATLAB programs for computing the solution of min ||Ax-b|| where A is an (m x n) matrix, b an (m x 1) vector, and x is an (n x 1) vector. b is not assumed to be in span(Col(A)). The routine alsqr.m is an augmented preconditioned LSQR method. The preconditioner is computed via an augmented Lanczos bidiagonalization method with harmonic Ritz vectors. The program then runs LSQR on the preconditioned system. The routine irlsqr.m is a preconditioned implictly restarted LSQR method, that is mathematically equivalent to< i>alsqr.m . The preconditioner is computed via implicitly restarted Lanczos bidiagonalization method with harmonic Ritz values. The program then runs LSQR on the preconditioned system. References: An Augmented LSQR Method http://link.springer.com/article/10.1007%2Fs11075-012-9665-8 and Implicitly Restarting the LSQR Algorithm http://etna.mcs.kent.edu/vol.42.2014/pp85-105.dir/pp85-105.pdf
Click here to download the MATLAB code alsqr.m.
Click here to download the MATLAB code irlsqr.m.


DIRECT SOLVER FOR BANDED LINEAR SYSTEMS
The following are the MATLAB and FORTRAN 95 codes associated with the paper, An asynchronous direct solver for banded linear systems. This package provides a set of functions to solve linear systems that do not require row echelon form. The functions are (i) Algorithm_21_TMFS.m, a MATLAB function to solve tridiagonal linear systems without exponential growth using a modified forward substitution technique, and (ii) Algorithm_22_TMFBS.m, a MATLAB function to solve tridiagonal linear systems without exponential growth using a modified forward and backward substitution technique, and (iii) Algorithm_31_BMFS.m, a MATLAB and FORTRAN function to solve banded systems using a forward substitution technique. Note that the current implementation in Fortran requires the ISML add-on. In MATLAB, one can see a demonstration of the algorithms compared to the built-in backslash solver by running the associated driver.m functions. Reference: An Asynchronous Direct Solver for Banded Linear Systems http://link.springer.com/article/10.1007/s11075-016-0251-3
Click here to download the README file README.txt.
Click here to download the MATLAB code Algorithm_21_TMFS_Driver.m.
Click here to download the MATLAB code Algorithm_21_TMFS.m.
Click here to download the MATLAB code Algorithm_22_TMFBS_Driver.m.
Click here to download the MATLAB code Algorithm_22_TMFBS.m.
Click here to download the MATLAB code Algorithm_31_BMFS.m.
Click here to download the MATLAB code Algorithm_31_BMFS_Driver.m.
Click here to download the FORTRAN 95 code Algorithm_31_BMFS.f90.



Papers
  1. Iterative Methods for the Computation of a Few Eigenvalues of a Large Symmetric Matrix
    (with D.Calvetti and L.Reichel), BIT, 36 (1996), pp. 400-421.
    paper1.pdf
       
  2. Computation of a few small eigenvalues of a large matrix with application to liquid crystal modeling
    (with D. Calvetti, L. Reichel, and A. Ruttan) Journal of Computational Physics, 146, (1998) pp. 203-226.
    paper2.pdf
       
  3. Fast Leja points
    (with D.Calvetti and L.Reichel) ETNA (1998) Vol. 7, (1998) pp. 126-140.
    paper3.pdf
       
  4. Adaptively Preconditioned GMRES Algorithms
    (with D. Calvetti, G.H. Golub, and L. Reichel) ,SIAM J. Sci. Comput., 20, No. 1, (1998), pp. 243-269.
    paper4.pdf
       
  5. Qualitative behavior of a variable-yield simple food chain with an inhibiting nutrient
    (with S. R. Jang), Mathematical Biosciences, 164, (2000) pp. 65-80.
    paper5.pdf
       
  6. Numerical Approximation of the Product of the Square Root of a Matrix With a Vector
    (with E. J. Allen and S. K. Boyd) Linear Algebra and Its Applications, 310, (2000) pp. 167-181.
    paper6.pdf
       
  7. Dealing With Linear Dependence during the Iterations of the Restarted Block Lanczos Methods
    Numerical Algorithms, 25, (2000) pp. 23-36.
    paper7.pdf
       
  8. A nutrient-prey-predator model with intratrophic predation
    (with S. R. Jang), Applied Mathematics and Computation, 129, (2002), pp. 517-536.
    paper8.pdf
       
  9. IRBL: An Implicitly Restarted Block Lanczos Method for Large-Scale Hermitian Eigenproblems
    (with D.Calvetti and L.Reichel) SIAM J. Sci. Comput., 24, No. 5, (2003), pp. 1650-1677.
    paper9.pdf
       
  10. irbleigs: A MATLAB program for computing a few eigenpairs of a large sparse Hermitian matrix
    (with D.Calvetti and L.Reichel) TOMS, Vol. 29, No. 5, (2003), pp. 337-348.
    paper10.pdf
       
  11. Persistence in variable-yield nutrient-plankton models with nutrient recycling
    (with S. R. Jang), Mathematical and Computer Modelling, 38 (2003), pp. 281-298.
    paper11.pdf
       
  12. Intratrophic predation in a simple food chain with fluctuating nutrient
    (with S. R. Jang and P. Seshaiyer), Discrete and Continuous Dynamical Systems-Series B, Vol. 5, No. 2, May (2005), pp. 335-352.
    paper12.pdf
       
  13. Nutrient-plankton models with nutrient recycling
    (with S. R. Jang) Computers and Mathematics with Application, Vol. 49, (2005), pp. 375-387.
    paper13.pdf
       
  14. Augmented Implicitly Restarted Lanczos Bidiagonalization Methods
    (with L. Reichel) SIAM J. Sci. Comput., 27 (2005), pp. 19-42.
    paper14.pdf
       
  15. Droop models of nutrient-plankton interaction with intratrophic predation
    (with S. R. Jang) Applied Mathematics and Computation, Vol. 169, (2005), pp. 1106-1128.
    paper15.pdf
       
  16. Nutrient-phytoplankton-zooplankton models with a toxin
    (with S. R. Jang and J. Rick) Mathematical and Computer Modelling, Vol. 43, Issues 1-2, January (2006), pp. 105-118.
    paper16.pdf
       
  17. Restarted Block Lanczos Bidiagonalization Methods
    (with L. Reichel) Numerical Algorithms, 43 (2006), pp. 251-272.
    paper17.pdf
       
  18. Nutrient-Plankton Interaction with a Toxin in a Variable Input Nutrient Environment
    (with S. R. Jang) Current Development in Mathematical Biology, Proceedings of the Conference on Mathematical Biology and Dynamical Systems,
    Series on Knots and Everything, 38 (2007), ISBN 981-270-015-3.
    paper18.pdf
       
  19. Decomposition methods for large linear discrete ill-posed problems
    (with L. Reichel) Journal of Computation and Applied Mathematics, 18 (2007), pp. 332-343.
    paper19.pdf
       
  20. Augmented GMRES-type methods
    (with L. Reichel) Numer. Linear Algebra Appl., 14 (2007), pp. 337-350.
    paper20.pdf
       
  21. Augmented Block Householder Arnoldi Method
    Linear Algebra Appl.,Vol. 429, Issue 10, (2008) pp. 2315-2334
    paper21.pdf
       
  22. Plankton-toxin interaction with a variable input nutrient
    (with S. R. Jang and J. Rick) Journal of Biological Dynamics, Volume 2, Issue 1 (2008), pp. 14 - 30
    paper22.pdf
       
  23. Continuous-time predator-prey models with parasites
    (with S.R. Jang) Journal of Biological Dynamics, Volume 3, (2009) pp. 87 - 98
    paper23.pdf
       
  24. Random dispersal in a predator-prey-parasite system
    (with S. R. Jang and L. Wu) Journal of Biological Systems, Vol. 18, No. 4 (2010) pp. 825 - 845
    paper24.pdf
       
  25. An Implicitly Restarted Block Lanczos Bidiagonalization Method Using Leja Shifts
    (with L. Reichel) BIT Numerical Mathematics Vol. 53, Issue 2 (2013) pp 285-310
    http://link.springer.com/article/10.1007%2Fs10543-012-0409-x
       
  26. An Augmented LSQR Method
    (with L. Reichel and D. Richmond) Numerical Algorithms Volume 64, Issue 2 (2013), pp 263-293.
    http://link.springer.com/article/10.1007%2Fs11075-012-9665-8
       
  27. Dynamics of phytoplankton-zooplankton systems with toxin producing phytoplankton
    (with S. R. Jang and L. Wu) Applied Mathematics and Computation, Vol. 227, (2014) pp. 717-740.
       
  28. Implicitly Restarting the LSQR Algorithm
    (with D. Richmond) ETNA, Vol. 42 (2014) pp. 85-105.
    http://etna.mcs.kent.edu/vol.42.2014/pp85-105.dir/pp85-105.pdf
       
  29. Analysis of directed networks via partial singular value decomposition and Gauss quadrature
    (with C. Fenu, L. Reichel, and G. Rodriguez) Linear Algebra and its Applications Vol. 456 (2014) pp. 93-121.
    http://www.sciencedirect.com/science/article/pii/S0024379514003097
       
  30. IRLBA: Fast Partial Singular Value Decomposition Method
    Handbook of Big Data (2016) pp. 125 - 136.
       
  31. An Asynchronous Direct Solver for Banded Linear Systems
    (with Michael A. Jandron and Anthony A. Ruff) Numerical Algorithms Vol. 76, Issue 1, (2017) pp. 211-235.
    http://link.springer.com/article/10.1007/s11075-016-0251-3
       
  32. Efficient Thresholded Correlation using Truncated Singular Value Decomposition
    (with M. Kane, B. Lewis, and A. Poliakov)
    http://arxiv.org/abs/1512.07246
       
  33. Hybrid Iterative Refined Method for Computing a Few Extreme Eigenpairs of a Symmetric Matrix
    (with T. Bella and J. Picucci) SIAM J. Sci. Comput. Special session on iterative methods, May 4, 2021.
    https://doi.org/10.1137/20M1344834
    paper33.pdf
       
  34. Hybrid Iterative Refined Restarted Lanczos Bidiagonalization Method
    (with V. Perovic and J. Picucci) submitted to Numerical Algorithms (July 30, 2021) for publication.
    paper34.pdf


Quotes


"Experience is what you get when you didn't get what you wanted"
- Randy Pausch


"Don't waste time calculating your chances of success and failure. Just fix your aim and begin"
- Guan Yin Tzu


"An invisible red thread connects those who are destined to meet, regardless of time, place, or circumstance. The thread may stretch or tangle, but will never break."
- An ancient Chinese belief


"The most exciting phrase to hear in science, the one that heralds new discoveries, is not `Eureka!' but `That's funny...' "
- Isaac Asmiov


"Time and space are modes by which we think and not conditions in which we live."
- Albert Einstein


"It is a miracle that curiosity survives formal education."
- Albert Einstein


" It is the supreme art of the teacher to awaken joy in creative expression and knowledge."
- Albert Einstein


"I am not a teacher, I am an awakener."
- Robert Frost


"If nothing's fair, why can't it ever be unfair in *my* favor?"
- Calvin and Hobbes, "Calvin and Hobbes"



NOTICE: The information presented on this page represents the personal views, ideas, and opinions of the author. This is not an official University of Rhode Island web page. Links contained at this web site to other organizations, are presented as a service and neither constitute nor imply university endorsement or warranty.


James Baglama