This class represents a three-vector. Operators are overloaded to provide for the familiar operations of vector addition, subtraction, scalar multiplication and division, and the dot product. More...
#include <vector.hh>
Public Member Functions | |
double | operator[] (int i) const |
Vector (double x_inp, double y_inp, double z_inp) | |
Vector (double *xarray) | |
Vector (double theta, double phi) | |
Vector () | |
Vector | RotateX (double angle) const |
Vector | RotateY (double angle) const |
Vector | RotateZ (double angle) const |
Vector | Cross (const Vector &vec) const |
double | Dot (const Vector &vec) const |
Vector | Rotate (double angle, const Vector &axis) const |
Vector | Zero () |
double | Mag () const |
double | Angle (const Vector &vec) const |
Vector | ChangeCoord (const Vector &new_x_axis, const Vector &new_y_axis) const |
Vector | ChangeCoord (const Vector &new_z_axis) const |
Vector | Unit () const |
double | GetX () const |
double | GetY () const |
double | GetZ () const |
double | Theta () const |
double | Phi () const |
void | Print () const |
void | SetX (double inp) |
void | SetY (double inp) |
void | SetZ (double inp) |
void | SetXYZ (double inpx, double inpy, double inpz) |
void | Reset (double x_inp, double y_inp, double z_inp) |
Protected Member Functions | |
void | UpdateThetaPhi () |
Protected Attributes | |
double | x |
double | y |
double | z |
double | theta |
double | phi |
Friends | |
Vector | operator+ (const Vector &vector1, const Vector &vector2) |
void | operator+= (Vector &vector1, const Vector &vector2) |
Vector | operator- (const Vector &vector1, const Vector &vector2) |
void | operator-= (Vector &vector1, const Vector &vector2) |
Vector | operator- (const Vector &vec) |
double | operator* (const Vector &vector1, const Vector &vector2) |
Vector | operator/ (const Vector &v, const double &a) |
Vector | operator* (const double &a, const Vector &v) |
ostream & | operator<< (ostream &outs, const Vector &vec) |
This class represents a three-vector. Operators are overloaded to provide for the familiar operations of vector addition, subtraction, scalar multiplication and division, and the dot product.
Vector::Vector | ( | double | x_inp, |
double | y_inp, | ||
double | z_inp | ||
) |
Vector::Vector | ( | double * | xarray | ) |
Vector::Vector | ( | double | theta, |
double | phi | ||
) |
Vector::Vector | ( | ) |
double Vector::Angle | ( | const Vector & | vec | ) | const |
double Vector::Dot | ( | const Vector & | vec | ) | const |
double Vector::GetX | ( | ) | const |
double Vector::GetY | ( | ) | const |
double Vector::GetZ | ( | ) | const |
double Vector::Mag | ( | ) | const |
double Vector::operator[] | ( | int | i | ) | const |
double Vector::Phi | ( | ) | const |
void Vector::Print | ( | ) | const |
void Vector::Reset | ( | double | x_inp, |
double | y_inp, | ||
double | z_inp | ||
) |
Vector Vector::RotateX | ( | double | angle | ) | const |
Vector Vector::RotateY | ( | double | angle | ) | const |
Vector Vector::RotateZ | ( | double | angle | ) | const |
void Vector::SetX | ( | double | inp | ) |
void Vector::SetXYZ | ( | double | inpx, |
double | inpy, | ||
double | inpz | ||
) |
void Vector::SetY | ( | double | inp | ) |
void Vector::SetZ | ( | double | inp | ) |
double Vector::Theta | ( | ) | const |
Vector Vector::Unit | ( | ) | const |
|
protected |
Vector Vector::Zero | ( | ) |
|
friend |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |