TEMPLATES
Iterative Solvers
for Linear Systems
TEMPLATES
is a MATLAB library which
implements some common iterative methods of solving a linear system.
Languages:
TEMPLATES is available in
a FORTRAN77 version and
a FORTRAN90 version and
a MATLAB version
Related Data and Programs:
CG_RC,
a MATLAB library which
implements the conjugate gradient method for solving
a positive definite sparse linear system A*x=b, using reverse communication.
HBSMC,
a dataset directory which
contains large sparse matrices stored in the
HarwellBoeing format.
MM,
a data directory which
describes a file format which
is used for storing large sparse matrices in files, as
well as a web site where many such files can be found.
MM_TO_MSM,
a MATLAB program which
reads a Matrix Market file defining a sparse matrix, and creates
a corresponding MATLAB sparse matrix data structure.
TEST_MAT,
a MATLAB library which
defines test matrices.
TEST_MATRIX,
a MATLAB library which
defines test matrices.
Reference:

Richard Barrett, Michael Berry, Tony Chan, James Demmel,
June Donato, Jack Dongarra, Victor Eijkhout, Roidan Pozo,
Charles Romine, Henk van der Vorst,
Templates for the Solution of Linear Systems:
Building Blocks for Iterative Methods,
SIAM, 1994.

M. Newman and J. Todd,
The evaluation of matrix inversion programs,
Journal of the Society for Industrial and Applied Mathematics,
Volume 6, 1958, pages 466476.

Solutions to problem E710 (proposed by D H Lehmer):
The inverse of a matrix,
American Mathematical Monthly,
Volume 53, 1946, pages 534535.

http://www.netlib.org/templates/index.html
the TEMPLATES web site;
Source Code:

bicg.m,
applies the BiConjugate Gradient iteration.

bicgstab.m,
applies the BiConjugate Gradient Stabilized iteration.

cg.m,
applies the Conjugate Gradient iteration.

cgs.m,
applies the Conjugate Gradient Squared iteration.

cheby.m,
applies the Chebyshev iteration.

gmres.m,
applies the Generalized Minimum Residual iteration.

gs.m,
applies the GaussSeidel iteration.

jacobi.m,
applies the Jacobi iteration.

lehmer.m,
generates a Lehmer matrix.

mm_to_msm.m,
reads a Matrix Market file and creates a MATLAB sparse matrix.

poisson.m,
generates a Poisson matrix.

qmr.m,
applies the QuasiMinimum Residual (QMR) method.

r8mat_print.m,
prints an R8MAT.

r8mat_print_some.m,
prints some of an R8MAT.

s_len_trim.m,
returns the length of a string to the last nonblank.

sor.m,
applies the Successive OverRelaxation (SOR) method.

split.m,
returns a splitting of the system matrix for the Jacobi
and SOR methods.

timestamp.m,
prints the current YMDHMS date as a timestamp.

wathen.m,
returns a large sparse positive definite matrix based on
a 2D grid of 8node serendipity elements.
Examples and Tests:

templates_test.m,
calls all the tests.

templates_test_output.txt,
output from a run of all the tests.

bicg_test.m,
tests BICG.

bicgstab_test.m,
tests BICGSTAB.

cg_test.m,
tests CG.

cgs_test.m,
tests CGS.

cheby_test.m,
tests CHEBY.

gmres_test.m,
tests GMRES.

gs_test.m,
tests GS.

jacobi_test.m,
tests JACOBI.

lehmer_test.m,
tests LEHMER.

mm_to_msm_test.m,
tests MM_TO_MSM.

poisson_test.m,
tests POISSON.

qmr_test.m,
tests QMR.

sor_test.m,
tests SOR.

wathen_test.m,
tests WATHEN.

wathen_29_29_adg.txt,
a Matrix Market file containing a 29x29 Wathen Finite Element matrix.
You can go up one level to
the MATLAB source codes.
Last revised on 29 March 2006.