ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/MatVec3.h
Revision: 1118
Committed: Mon Apr 19 03:52:27 2004 UTC (20 years, 2 months ago) by tim
Content type: text/plain
File size: 1010 byte(s)
Log Message:
new implement of quickLate using visitor and composite pattern

File Contents

# User Rev Content
1 gezelter 1097 #ifndef __MATVEC3_H__
2     #define __MATVEC3_H__
3    
4 tim 1118 #include <cmath>
5 gezelter 1097 #ifdef __cplusplus
6     extern "C" {
7     #endif
8    
9     static void identityMat3(double A[3][3]);
10     void swapVectors3(double v1[3], double v2[3]);
11     static double norm3(const double x[3]){ return sqrt(x[0]*x[0] + x[1]*x[1] + x[2]*x[2]); };
12     static double normalize3(double x[3]);
13     void matMul3(double a[3][3], double b[3][3], double out[3][3]);
14     void matVecMul3(double m[3][3], double inVec[3], double outVec[3]);
15     double matDet3(double m[3][3]);
16     void invertMat3(double in[3][3], double out[3][3]);
17     void transposeMat3(double in[3][3], double out[3][3]);
18     void printMat3(double A[3][3]);
19     void printMat9(double A[9]);
20     double matTrace3(double m[3][3]);
21     void crossProduct3(double a[3],double b[3], double out[3]);
22     double dotProduct3(double a[3], double b[3]);
23     void diagonalize3x3(const double A[3][3],double w[3],double V[3][3]);
24     static int JacobiN(double **a, int n, double *w, double **v);
25    
26     #ifdef __cplusplus
27     }
28     #endif
29    
30     #endif