Newmat11 beta version


20 July, 2008

This is the version of the Newmat matrix package currently under development. This version is checked with the main C++ compilers, but the checking is not as detailed as with a release version. The full documentation is at newmat11 documentation.

I suggest you use newmat11 in preference to newmat10.

Changes in this version include:

It works with Borland Builder version 6, 8; Microsoft Visual C++ 6,7,8; Open Watcom 1.7a; Gnu version 3, 4 and Intel for Windows & Linux compilers 9, 10.

Options and work-arounds for older compilers are being removed.

You can enter values from an integer array with statements like

    Matrix A(3,2); int a[] = { 11,12,21,22,31,33 };  A << a;

There is a new matrix type SquareMatrix. You can use this where you know a matrix is square. The only place where the information that a matrix is used is in the Kronecker product KP(A,B). If A is band and B is any square matrix type (i.e. type SquareMatrix or band, triangular, symmetric or diagonal) the result is band. If B is type Matrix then the result is of type Matrix. Apart from this it may be worth using the SquareMatrix type to improve readability of a program and to make sure that a matrix that is intended to be square really is square.

There is a new routine for carrying out cross products of ColumnVectors or RowVectors of length 3 and new routines for updating a triangular matrix derived from a Cholesky decomposition.

Interfacing with old C functions involving one and two dimensional arrays is simplified.

Additional QR functions, extend_orthogonal function.

Lower-case versions of functions.

You can use the manipulators scientific and fixed in the matrix output expressions.