Psi4
Public Member Functions | Private Attributes | List of all members
psi::Vector3 Class Reference

#include <vector3.h>

Public Member Functions

 Vector3 ()
 
 Vector3 (const double p[3])
 
 Vector3 (double d)
 
 Vector3 (double x, double y, double z)
 
 Vector3 (const Vector3 &p)
 
void operator= (const double *x)
 
void operator= (const Vector3 &x)
 
void operator= (double d)
 
void operator+= (const Vector3 &x)
 
void operator-= (const Vector3 &x)
 
void operator*= (double m)
 
void operator/= (double m)
 
Vector3 operator* (double d) const
 
Vector3 operator/ (double d) const
 
Vector3 operator+ (const Vector3 &x)
 
Vector3 operator- (const Vector3 &x) const
 
Vector3 operator* (const Vector3 &x) const
 
Vector3 operator- ()
 
double & operator[] (int i)
 
const double & operator[] (int i) const
 
bool operator== (const Vector3 &RHS) const
 Checks for exact equality (i.e. no tolerances) More...
 
bool operator!= (const Vector3 &RHS) const
 True if the coordinates differ in any bit. More...
 
double get (int i)
 
void set (int i, double val)
 
double dot (const Vector3 &x) const
 
double distance (const Vector3 &) const
 
void normalize ()
 
double norm () const
 
void rotate (double theta, Vector3 &v)
 
Vector3 perp_unit (const Vector3 &v) const
 
Vector3 cross (const Vector3 &) const
 
std::string to_string () const
 

Private Attributes

double v_ [3]
 

Constructor & Destructor Documentation

psi::Vector3::Vector3 ( )
inline
psi::Vector3::Vector3 ( const double  p[3])
inline
psi::Vector3::Vector3 ( double  d)
inline
psi::Vector3::Vector3 ( double  x,
double  y,
double  z 
)
inline
psi::Vector3::Vector3 ( const Vector3 p)
inline

Member Function Documentation

Vector3 psi::Vector3::cross ( const Vector3 x) const
inline
double psi::Vector3::distance ( const Vector3 s) const
inline
double psi::Vector3::dot ( const Vector3 x) const
inline
double psi::Vector3::get ( int  i)
inline
double psi::Vector3::norm ( ) const
inline
void psi::Vector3::normalize ( )
inline
bool psi::Vector3::operator!= ( const Vector3 RHS) const
inline

True if the coordinates differ in any bit.

Vector3 psi::Vector3::operator* ( double  d) const
inline
Vector3 psi::Vector3::operator* ( const Vector3 x) const
inline
void psi::Vector3::operator*= ( double  m)
inline
Vector3 psi::Vector3::operator+ ( const Vector3 x)
inline
void psi::Vector3::operator+= ( const Vector3 x)
inline
Vector3 psi::Vector3::operator- ( const Vector3 x) const
inline
Vector3 psi::Vector3::operator- ( )
inline
void psi::Vector3::operator-= ( const Vector3 x)
inline
Vector3 psi::Vector3::operator/ ( double  d) const
inline
void psi::Vector3::operator/= ( double  m)
inline
void psi::Vector3::operator= ( const double *  x)
inline
void psi::Vector3::operator= ( const Vector3 x)
inline
void psi::Vector3::operator= ( double  d)
inline
bool psi::Vector3::operator== ( const Vector3 RHS) const
inline

Checks for exact equality (i.e. no tolerances)

double& psi::Vector3::operator[] ( int  i)
inline
const double& psi::Vector3::operator[] ( int  i) const
inline
Vector3 psi::Vector3::perp_unit ( const Vector3 v) const
inline
void psi::Vector3::rotate ( double  theta,
Vector3 v 
)
inline
void psi::Vector3::set ( int  i,
double  val 
)
inline
std::string psi::Vector3::to_string ( ) const
inline

Member Data Documentation

double psi::Vector3::v_[3]
private

The documentation for this class was generated from the following files: