ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/MatVec3.h
Revision: 1097
Committed: Mon Apr 12 20:32:20 2004 UTC (20 years, 2 months ago) by gezelter
Content type: text/plain
File size: 993 byte(s)
Log Message:
Changes for RigidBody dynamics (Somewhat extensive)

File Contents

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