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.