Psi4
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)

Vector3 (const std::array< double, 3 > 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

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
 psi::Vector3::Vector3 ( const std::array< double, 3 > 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: