00001 ////////////////////////////////////////////////////////////////////////////// 00002 /*! \file matrixFunctionInterface.h 00003 * \brief Miscellaneous matrix functions 00004 * \author $Author: jayhawk_hokie $ 00005 * \version $Revision: 1.2 $ 00006 * \date $Date: 2007/06/19 19:30:18 $ 00007 *//////////////////////////////////////////////////////////////////////////// 00008 /* 00009 */ 00010 00011 #ifndef _SSSL_MATRIXFUNCTIONINTERFACE_H__ 00012 #define _SSSL_MATRIXFUNCTIONINTERFACE_H__ 00013 00014 #include <iostream.h> 00015 #include <math.h> 00016 00017 #include "matrix/Matrix.h" 00018 #include "rotation/Rotation.h" 00019 00020 #include "src/feigen.h" 00021 #include "src/basis.h" 00022 #include "src/vmblock.h" 00023 00024 00025 void eigenValues( Matrix _Matrix, Matrix &_EigenVectors, Vector &_RealEigenValues, Vector &_ImaginaryEigenValues ); 00026 00027 bool greatestEigenValue( Matrix _Matrix, double &_EigenValue, Vector &_EigenVector, int _MaxIterations ); 00028 00029 double norm2( Matrix _Matrix ); 00030 00031 REAL ** convertMatrix(Matrix _Matrix); 00032 00033 REAL * convertVector(Vector _Vector); 00034 00035 Matrix convertMatrix(REAL ** _Matrix, int rows); 00036 00037 Vector convertVector(REAL * _Vector, int rows); 00038 00039 Matrix matrixInv3x3( Matrix _A ); 00040 00041 double matrixDet( Matrix _A ); 00042 00043 double matrixDet2x2( Matrix _A ); 00044 00045 #endif 00046 // Do not change the comments below - they will be added automatically by CVS 00047 /***************************************************************************** 00048 * $Log: matrixFunctionInterface.h,v $ 00049 * Revision 1.2 2007/06/19 19:30:18 jayhawk_hokie 00050 * Added function to determine inverse for 3x3 matrix. Added function to determine det(A). 00051 * 00052 * Revision 1.1 2007/04/13 16:47:52 bleslie 00053 * Initial submission of the matrix function interface files 00054 * 00055 * Revision 1.6 2006/07/05 20:59:13 jayhawk_hokie 00056 * *** empty log message *** 00057 * 00058 * 00059 * 00060 * 00061 ******************************************************************************/ 00062