HELP POPMATLAB Aaron Sloman January 2005 Based on work by David Young LIB POPMATLAB Pop11 Matrix/Array Linear Algebra Library ----------------------------------------- CONTENTS -- Introduction -- Array creation utilities -- LIB * ARRPACK -- LIB * LAPACK -- LIB * LAPOP -- External language interface -- NOTE: -- Introduction This is a 'virtual' package which makes visible a subset of the facilities included in the popvision package, providing general purpose mathematical tools that are not restricted to being used for vision, including the well known BLAS and LAPACK toolkits, which are here made available from pop11. (At some later stage, the relevant portions of the Popvision library may be extracted to form a separate package located here.) To make the facilities available do uses popmatlab This will make the following available: -- Array creation utilities Facilities for creating a variety of types of arrays: of integers, bytes, single floats, double floats, single complex numbers, double complex numbers. * newintarray creates packed integer arrays. * newdfloatarray creates double-precision packed floating-point arrays. * newrfloatarray creates packed floating-point arrays with precision depending on popdprecision. * newcfloatarray creates complex single-precision packed floating-point arrays with alternating real and imaginary parts. * newzfloatarray creates complex double-precision packed floating-point arrays with alternating real and imaginary parts. -- LIB * ARRPACK This provides procedures for arithmetic and logical operations on real and complex arrays, using external procedures for efficiency. This includes facilities for manipulating 1-D and 2-D arrays, treating them as matrices to which matrix operations can be applied. A whole array or a subset of its elements may be processed in a single procedure call. To make it available do uses arrpack For further details see HELP * ARRPACK -- LIB * LAPACK provides an interface between Pop-11 and the Lapack and BLAS libraries of routines for linear algebra (matrix operations). Lapack and BLAS together provide a suite of high-quality routines for linear algebra. For more details, see their web sites: http://www.netlib.org/lapack/ http://www.netlib.org/blas/ LIB LAPACK offers a straightforward way to call many of these routines from Pop-11. It offers: * loading of the external procedures; * simplified calling sequences; * argument consistency checking; * translation from Pop-11 arrays and array regions to external representations; * efficient management of workspace arguments. To make it available do uses lapack For further details, including problems of checking that the BLAS and LAPACK libraries are available and accessible, see HELP * LAPACK -- LIB * LAPOP This provides a set of procedures for linear algebra, based on BLAS and LAPACK. The library provides a set of procedures for performing some of the standard operations of linear algebra. It does not attempt to cover all possible operations on arrays, but rather those specific to their use as representations of matrices: matrix multiplication; exact and least-squares solution of linear equations; eigenvalues and eigenvectors; singular value decomposition. Both real and complex calculations are supported. The calling sequences and conventions are as simple as possible, and the library is flexible with respect to the types of data arrays. However, it may be used in a way that maximises efficiency - for example, garbage generation may be kept low if that is important. To make it available do uses lapop For further details, including examples, see HELP * LAPOP NOTE: * lapack gives a direct interface to the Lapack linear algebra package, which has very wide scope. * lapop gives a simpler, higher-level interface to some common linear algebra functions, including matrix multiplication, linear equations, least-squares problems, eigenvalue and singular value decompositions. -- External language interface * excall allows external functions to be passed the addresses of arbitrary elements of vectors. To make it available do uses excall See also HELP * EXCALL -- NOTE: If you don't have blas and lapack on your machine, and wish to use the new mathematical libraries, you can fetch and install the following from: http://ftp.pld.org.pl/dists/ac/ready/ --- $usepop/pop/packages/popmatlab/help/popmatlab --- Copyright University of Sussex 2005. All rights reserved.