ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/Vector3d.cpp
Revision: 1452
Committed: Mon Aug 23 15:11:36 2004 UTC (20 years, 8 months ago) by tim
File size: 1064 byte(s)
Log Message:
*** empty log message ***

File Contents

# Content
1 #include "Vector3d.hpp"
2 #include "Mat3x3d.hpp"
3
4 Vector3d& Vector3d::operator*= ( const Mat3x3d & m){
5 Vector3d temp;
6
7 temp = *this;
8 x = temp.x*m.element[0][0] + temp.y*m.element[1][0] + temp.z* m.element[2][0];
9 y = temp.x*m.element[0][1] + temp.y*m.element[1][1] + temp.z* m.element[2][1];
10 z = temp.x*m.element[0][2] + temp.y*m.element[1][2] + temp.z* m.element[2][2];
11
12 return *this;
13 }
14
15 Mat3x3d Vector3d::makeSkewMat(){
16 Mat3x3d m;
17
18 m.element[0][0] = 0;
19 m.element[0][1] = z;
20 m.element[0][2] = -y;
21
22 m.element[1][0] = -z;
23 m.element[1][1] = 0;
24 m.element[1][2] = x;
25
26 m.element[2][0] = y;
27 m.element[2][1] = -x;
28 m.element[2][2] = 0;
29
30 return m;
31 }
32
33 Mat3x3d outProduct(const Vector3d& v1, const Vector3d& v2){
34 Mat3x3d m;
35
36 m.element[0][0] = v1.x * v2.x;
37 m.element[0][1] = v1.x * v2.y;
38 m.element[0][2] = v1.x * v2.z;
39
40 m.element[1][0] = v1.y * v2.x;
41 m.element[1][1] = v1.y * v2.y;
42 m.element[1][2] = v1.y * v2.z;
43
44 m.element[2][0] = v1.z * v2.x;
45 m.element[2][1] = v1.z * v2.y;
46 m.element[2][2] = v1.z * v2.z;
47
48 return m;
49 }
50

Properties

Name Value
svn:executable *