free hit counter

Wednesday, November 23, 2005

matrix inverse and determinant

Factiods about determinants:
* Switching two rows or columns changes the sign.
* Scalars can be factored out from rows and columns.
* Multiples of rows and columns can be added together without changing the determinant's value.
* Scalar multiplication of a row by a constant c multiplies the determinant by c.
* A determinant with a row or column of zeros has value 0.
* Any determinant with two rows or columns equal has value 0.

Factoid about the inverse:
* the inverse of A is only valid if the derterminant of A != 0

The uLAPACK templates, built on the bigger CLAPACK library, interface to the boost::ublas matrix type and have inverse and determinant functions.

It takes awhile to walk through all the steps to get CLAPACK to compile, but it all does work on MSVC8 Express.

Relevant qmake lines so the linker will acutally spit out an executable based on this stuff:

INCLUDEPATH += C:\ulapack
debug {
LIBPATH += C:\clapack\Debug
LIBPATH += C:\CLAPACK\F2CLIBS\Debug
LIBPATH += C:\CLAPACK\BLAS\Debug
}
release {
LIBPATH += C:\clapack\release
LIBPATH += C:\CLAPACK\F2CLIBS\Release
LIBPATH += C:\CLAPACK\BLAS\Release
}
LIBS += clapack.lib
LIBS += libF77.lib
LIBS += blas.lib


linkage:
http://mathworld.wolfram.com/Determinant.html
http://www.acfr.usyd.edu.au/homepages/academic/tbailey/software/software.html
http://www.netlib.org/clapack/
http://wims.unice.fr/wims/wims.cgi?session=BVDF4AB014.1%E2%8C%A9=en&module=tool%2Flinear%2Fmatrix.en

0 Comments:

Post a Comment

<< Home