NAMD
FreeEnergyVector.h
Go to the documentation of this file.
1 
7 // written by David Hurwitz.
8 
9 #if !defined(VECTOR_HPP)
10  #define VECTOR_HPP
11 
13 
14 class AVector {
15 
16 protected:
17  double m_x;
18  double m_y;
19  double m_z;
20 
21 public:
23  AVector(double x, double y, double z);
24  AVector(const AVector& Vector);
25  Bool_t Set(double x, double y, double z);
28  AVector operator/ (double divisor);
29  AVector& operator/= (double divisor);
30  AVector& operator*= (double scalar);
31  AVector operator* (double scalar);
34  AVector cross(const AVector& Vector);
35  double dot(const AVector& Vector);
36  double& operator[] (int index);
37  double Dist();
38  double DistSqr();
39  double Dist(const AVector& Vector);
40  double DistSqr(const AVector& Vector);
41  void Out();
42  void Output();
43  AVector& Scale(AVector& SmallVec, AVector& BigVec);
44  AVector& Random();
45  // used for casting Vector -> AVector and vice-versa
46  // (I had difficulty overloading operator=)
47  friend void SetEqual(AVector& Vec1, const Vector& Vec2);
48  friend void SetEqual(Vector& Vec1, const AVector& Vec2);
49 };
50 
51 #endif
Bool_t Set(double x, double y, double z)
AVector operator+(const AVector &Vector)
void Output()
AVector & operator+=(const AVector &Vector)
AVector cross(const AVector &Vector)
AVector & Scale(AVector &SmallVec, AVector &BigVec)
AVector & operator*=(double scalar)
AVector operator*(double scalar)
Definition: Vector.h:64
AVector & operator/=(double divisor)
friend void SetEqual(AVector &Vec1, const Vector &Vec2)
double & operator[](int index)
AVector operator/(double divisor)
double dot(const AVector &Vector)
Bool_t
double m_z
gridSize z
AVector operator-(const AVector &Vector)
AVector & operator=(const AVector &Vector)
double m_x
double Dist()
double DistSqr()
gridSize y
Vector_t
AVector & Random()
AVector(Vector_t Type=kRegular)
gridSize x
double m_y