General Storage Matrix Utilities

**R8GE**,
a MATLAB library which
carries out some basic linear algebra operations on R8GE matrices
(real 64 bit precision general MxN format).

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

**R8GE** is available in
a C version and
a C++ version and
a FORTRAN90 version and
a MATLAB version and
a Python version.

R8COL, a MATLAB library which contains utility routines for R8COL's, that is, double precision real MxN arrays, considered as N column vectors, each of length M. The data may be thought of as a matrix of multiple columns, and many operations will be carried out columnwise.

R8ROW, a MATLAB library which contains utility routines for R8ROW's, that is, double precision real MxN arrays, considered as M row vectors, each of length N. The data may be thought of as a matrix of multiple rows, and many operations will be carried out rowwise.

- i4_log_10.m, returns the integer part of the logarithm base 10 of abs(X);
- i4vec_print.m, prints an I4VEC;
- r8_sign.m, returns the sign of a double precision number;
- r8_uniform_01.m, is a uniform random number generator;
- r8ge_cg.m, applies the conjugate gradient method to a linear system stored as an R8GE matrix.
- r8ge_co.m, factors an R8GE matrix and estimates its condition number;
- r8ge_det.m, computes the determinant of a factored R8GE matrix;
- r8ge_dif2.m, returns the second difference matrix as an R8GE matrix;
- r8ge_dilu.m, produces the diagonal incomplete LU factor of an R8GE matrix;
- r8ge_fa.m, factors an R8GE matrix;
- r8ge_fs.m, factors and solves an R8GE system;
- r8ge_fss.m, factors and solves multiple R8GE systems;
- r8ge_hilbert.m, returns the Hilbert matrix as an R8GE matrix;
- r8ge_hilbert_inverse.m, returns the inverse of the Hilbert matrix as an R8GE matrix;
- r8ge_identity.m, copies the identity matrix to an R8GE matrix;
- r8ge_ilu.m, produces the incomplete LU factors of an R8GE matrix;
- r8ge_indicator.m, returns an R8GE indicator matrix;
- r8ge_inverse.m, returns the inverse of an R8GE matrix;
- r8ge_ml.m, multiplies an R8GE matrix factored by R8GE_FA times a vector;
- r8ge_mm.m, multiplies two R8GE matrices;
- r8ge_mtm.m, computes C=A'*B for R8GE matrices;
- r8ge_mtv.m, multiplies a vector times an R8GE matrix;
- r8ge_mu.m, multiplies an R8GE matrix factored by R8GE_TRF times a vector;
- r8ge_mv.m, multiplies an R8GE matrix times a vector;
- r8ge_plu.m, produces the PLU factors of an R8GE matrix;
- r8ge_poly.m, computes the characteristic polynomial of an R8GE matrix;
- r8ge_print.m, prints an R8GE matrix;
- r8ge_print_some.m, prints some of an R8GE matrix;
- r8ge_random.m, returns a random R8GE matrix;
- r8ge_res.m, computes the residual of an R8GE linear system;
- r8ge_sl.m, solves a linear system factored by R8GE_FA;
- r8ge_sl_it.m, applies one step of iterative refinement to a factored linear system;
- r8ge_to_r8vec.m, converts an R8GE matrix to an R8VEC;
- r8ge_transpose_print.m, prints the transpose of an R8GE matrix;
- r8ge_transpose_print_some.m, prints some of the transpose of an R8GE matrix;
- r8ge_trf.m, factors an R8GE matrix;
- r8ge_trs.m, solves a system factored by R8GE_TRF;
- r8ge_zeros.m, zeros out space for an R8GE matrix.
- r8vec_indicator1.m, sets an R8VEC to the indicator1 vector;
- r8vec_print.m, prints an R8VEC;
- r8vec_print_some.m, prints some of an R8VEC;
- r8vec_to_r8ge.m, converts an R8VEC to an R8GE matrix;
- r8vec_uniform_01.m, returns a unit pseudorandom R8VEC.
- r8vec2_print_some.m, prints some of a pair R8VEC's;
- timestamp.m, prints the current YMDHMS date as a timestamp;