Matrix3SVD.h

Go to the documentation of this file.
00001 #ifndef __VECMATH_MATRIX3SVD_HPP
00002 #define __VECMATH_MATRIX3SVD_HPP
00003 
00004 #ifndef __LANG_MATH_HPP
00005 #include <vecmath/Math.h>
00006 #endif
00007 
00008 class Matrix3SVD {
00009 public:
00010     static const double EPS1;// = 1.110223024E-16;
00011     static const double EPS2;// = 4.89E-15;
00012     static const double EPS3;// = 1E-08;
00013 
00014     static bool almostEqual(double d, double d1);
00015     static int compute_2X2(double d, double d1, double d2, double ad[], double ad1[],
00016                            double ad2[], double ad3[], double ad4[], int i);
00017     static int compute_qr(double ad[], double ad1[], double ad2[], double ad3[], bool flag);
00018     static double compute_rot(double d, double d1, double ad[], double ad1[], int i, int j);
00019     static double compute_shift(double d, double d1, double d2);
00020     static void compute_svd(double mat[9], double scale[9], double rot[9], bool flag);
00021     static double d_sign(double d, double d1);
00022     static void mat_mul(double ad[], double ad1[], double ad2[]);
00023     static double max(double d, double d1);
00024     static double max3(double ad[3]);
00025     static double min(double d, double d1);
00026     static void print_det(double ad[9]);
00027     static void print_mat(double ad[9]);
00028     static void svdReorder(double ad[], double ad1[], double ad2[], double ad3[], double ad4[], double scale[], bool flag);
00029     static void copy(double ad[], double ad1[]);
00030     static void set(double c, double ad[]);
00031     static void transpose_mat(double ad[], double ad1[]);
00032     static void test();
00033 };
00034 
00035 #endif

Generated on Thu Sep 29 13:39:44 2005 for vecmath by  doxygen 1.4.4