|
OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
|
#include <Quaternion.h>
Public Types | |
| enum | |
| enum | |
| typedef double | Element_t |
Public Member Functions | |
| Quaternion () | |
| Quaternion (const Quaternion &) | |
| Quaternion (const double &, const double &, const double &, const double &) | |
| Quaternion (const Vector_t &) | |
| Quaternion (const double &, const Vector_t &) | |
| Quaternion (const matrix_t &) | |
| Quaternion | operator* (const double &) const |
| Quaternion | operator* (const Quaternion &) const |
| Quaternion & | operator= (const Quaternion &)=default |
| Quaternion & | operator*= (const Quaternion &) |
| Quaternion | operator/ (const double &) const |
| double | Norm () const |
| double | length () const |
| Quaternion & | normalize () |
| bool | isUnit () const |
| bool | isPure () const |
| bool | isPureUnit () const |
| Quaternion | inverse () const |
| Quaternion | conjugate () const |
| double | real () const |
| Vector_t | imag () const |
| Vector_t | rotate (const Vector_t &) const |
| matrix_t | getRotationMatrix () const |
| Vektor< double, D > & | operator+= (const Vektor< T1, D > &rhs) |
| Vektor< double, D > & | operator-= (const Vektor< T1, D > &rhs) |
| Vektor< double, D > & | operator*= (const Vektor< T1, D > &rhs) |
| Vektor< double, D > & | operator/= (const Vektor< T1, D > &rhs) |
| Element_t & | operator[] (unsigned int i) |
| Element_t & | operator() (unsigned int i) |
| bool | operator== (const Vektor< double, D > &that) const |
| bool | operator!= (const Vektor< double, D > &that) const |
| Message & | putMessage (Message &m) const |
| Message & | getMessage (Message &m) |
Private Attributes | |
| double | X [D] |
Definition at line 8 of file Quaternion.h.
|
inherited |
Definition at line 35 of file ippl/src/AppTypes/Vektor.h.
|
inherited |
Definition at line 36 of file ippl/src/AppTypes/Vektor.h.
|
inherited |
Definition at line 37 of file ippl/src/AppTypes/Vektor.h.
|
inline |
Definition at line 48 of file Quaternion.h.
References Vektor< double, 4 >::Vektor().
Referenced by conjugate(), getRotationMatrix(), inverse(), normalize(), operator*(), operator*(), operator*=(), operator/(), operator=(), Quaternion(), Quaternion(), Quaternion(), and rotate().
|
inline |
Definition at line 53 of file Quaternion.h.
References Quaternion(), and Vektor< double, 4 >::Vektor().
|
inline |
Definition at line 58 of file Quaternion.h.
References Vektor< double, 4 >::Vektor().
|
inline |
Definition at line 63 of file Quaternion.h.
References Quaternion().
|
inline |
Definition at line 68 of file Quaternion.h.
References Quaternion().
| Quaternion::Quaternion | ( | const matrix_t & | M | ) |
Definition at line 22 of file Quaternion.cpp.
References Vektor< double, 4 >::Vektor().
|
inline |
Definition at line 103 of file Quaternion.h.
References imag(), Quaternion(), and real().
Referenced by OpalBeamline::compute3DLattice(), ParallelTTracker::computeSpaceChargeFields(), Util::getTaitBryantAngles(), inverse(), CoordinateSystemTrafo::operator*=(), H5PartWrapperForPT::readStepHeader(), rotate(), OpalBeamline::save3DInput(), Bend2D::setFieldCalcParam(), and OpalElement::update().
Definition at line 180 of file ippl/src/AppTypes/Vektor.h.
| matrix_t Quaternion::getRotationMatrix | ( | ) | const |
Definition at line 135 of file Quaternion.cpp.
References normalize(), and Quaternion().
|
inline |
Definition at line 117 of file Quaternion.h.
Referenced by conjugate(), operator*(), operator*=(), and operator/().
| Quaternion Quaternion::inverse | ( | ) | const |
Definition at line 115 of file Quaternion.cpp.
References conjugate(), normalize(), and Quaternion().
|
inline |
Definition at line 91 of file Quaternion.h.
Referenced by isPureUnit().
|
inline |
Definition at line 97 of file Quaternion.h.
References isPure(), and isUnit().
|
inline |
Definition at line 85 of file Quaternion.h.
References Norm().
Referenced by isPureUnit(), and rotate().
|
inline |
Definition at line 79 of file Quaternion.h.
References Norm().
Referenced by normalize().
|
inline |
Definition at line 73 of file Quaternion.h.
References dot().
Referenced by isUnit(), length(), normalize(), and rotate().
| Quaternion & Quaternion::normalize | ( | ) |
Definition at line 102 of file Quaternion.cpp.
References length(), Norm(), and Quaternion().
Referenced by getRotationMatrix(), and inverse().
|
inlineinherited |
Definition at line 168 of file ippl/src/AppTypes/Vektor.h.
|
inherited |
Definition at line 160 of file ippl/src/AppTypes/Vektor.h.
| Quaternion Quaternion::operator* | ( | const double & | d | ) | const |
Definition at line 71 of file Quaternion.cpp.
References imag(), Quaternion(), and real().
| Quaternion Quaternion::operator* | ( | const Quaternion & | other | ) | const |
Definition at line 78 of file Quaternion.cpp.
References Quaternion().
| Quaternion & Quaternion::operator*= | ( | const Quaternion & | other | ) |
Definition at line 84 of file Quaternion.cpp.
References cross(), dot(), imag(), and Quaternion().
|
inlineinherited |
Definition at line 130 of file ippl/src/AppTypes/Vektor.h.
|
inlineinherited |
Definition at line 106 of file ippl/src/AppTypes/Vektor.h.
|
inlineinherited |
Definition at line 118 of file ippl/src/AppTypes/Vektor.h.
| Quaternion Quaternion::operator/ | ( | const double & | d | ) | const |
Definition at line 95 of file Quaternion.cpp.
References imag(), Quaternion(), and real().
|
inlineinherited |
Definition at line 142 of file ippl/src/AppTypes/Vektor.h.
|
default |
Definition at line 165 of file ippl/src/AppTypes/Vektor.h.
|
inherited |
Definition at line 156 of file ippl/src/AppTypes/Vektor.h.
Definition at line 174 of file ippl/src/AppTypes/Vektor.h.
|
inline |
Definition at line 111 of file Quaternion.h.
Referenced by conjugate(), operator*(), and operator/().
Definition at line 122 of file Quaternion.cpp.
References conjugate(), isUnit(), Norm(), and Quaternion().
Referenced by OpalBeamline::compute3DLattice(), Bend2D::getOutline(), Bend2D::getSurfaceMesh(), Util::getTaitBryantAngles(), CoordinateSystemTrafo::operator*=(), H5PartWrapperForPT::readStepHeader(), and Bend2D::setFieldCalcParam().
|
privateinherited |
Definition at line 188 of file ippl/src/AppTypes/Vektor.h.