OPAL (Object Oriented Parallel Accelerator Library)
2.2.0
OPAL
|
#include <CoordinateSystemTrafo.h>
Public Member Functions | |
CoordinateSystemTrafo () | |
CoordinateSystemTrafo (const CoordinateSystemTrafo &right) | |
CoordinateSystemTrafo (const Vector_t &origin, const Quaternion &orientation) | |
Vector_t | transformTo (const Vector_t &r) const |
Vector_t | transformFrom (const Vector_t &r) const |
Vector_t | rotateTo (const Vector_t &r) const |
Vector_t | rotateFrom (const Vector_t &r) const |
void | invert () |
CoordinateSystemTrafo | inverted () const |
CoordinateSystemTrafo | operator* (const CoordinateSystemTrafo &right) const |
void | operator*= (const CoordinateSystemTrafo &right) |
Vector_t | getOrigin () const |
Quaternion | getRotation () const |
void | print (std::ostream &) const |
Private Attributes | |
Vector_t | origin_m |
Quaternion | orientation_m |
Tenzor< double, 3 > | rotationMatrix_m |
Definition at line 8 of file CoordinateSystemTrafo.h.
CoordinateSystemTrafo::CoordinateSystemTrafo | ( | ) |
Definition at line 6 of file CoordinateSystemTrafo.cpp.
CoordinateSystemTrafo::CoordinateSystemTrafo | ( | const CoordinateSystemTrafo & | right | ) |
Definition at line 12 of file CoordinateSystemTrafo.cpp.
CoordinateSystemTrafo::CoordinateSystemTrafo | ( | const Vector_t & | origin, |
const Quaternion & | orientation | ||
) |
Definition at line 18 of file CoordinateSystemTrafo.cpp.
|
inline |
Definition at line 59 of file CoordinateSystemTrafo.h.
References origin_m.
Referenced by OpalElement::fillRegisteredAttributes(), OpalBeamline::save3DInput(), OpalBeamline::save3DLattice(), OpalSBend::update(), OpalRBend::update(), and OpalRBend3D::update().
|
inline |
Definition at line 64 of file CoordinateSystemTrafo.h.
References orientation_m.
Referenced by OpalElement::fillRegisteredAttributes(), OpalBeamline::save3DInput(), OpalSBend::update(), OpalRBend::update(), OpalRBend3D::update(), and H5PartWrapperForPT::writeStepHeader().
void CoordinateSystemTrafo::invert | ( | ) |
Definition at line 25 of file CoordinateSystemTrafo.cpp.
References Quaternion::conjugate(), orientation_m, origin_m, Quaternion::rotate(), rotationMatrix_m, and transpose().
Referenced by inverted().
|
inline |
Definition at line 69 of file CoordinateSystemTrafo.h.
References invert().
Referenced by MeshGenerator::add(), ParallelTTracker::applyFractionalStep(), ParallelSliceTracker::computeExternalFields(), ParallelTTracker::computeExternalFields(), ParallelTTracker::computeParticleMatterInteraction(), ParallelTTracker::computeSpaceChargeFields(), ParallelTTracker::computeWakefield(), ParallelTTracker::emitParticles(), ParallelTTracker::execute(), ParallelSliceTracker::findStartPosition(), ParallelSliceTracker::ParallelSliceTracker(), ThickTracker::ThickTracker(), ParallelTTracker::updateRefToLabCSTrafo(), and ParallelTTracker::writePhaseSpace().
CoordinateSystemTrafo CoordinateSystemTrafo::operator* | ( | const CoordinateSystemTrafo & | right | ) | const |
Definition at line 31 of file CoordinateSystemTrafo.cpp.
void CoordinateSystemTrafo::operator*= | ( | const CoordinateSystemTrafo & | right | ) |
Definition at line 38 of file CoordinateSystemTrafo.cpp.
References Quaternion::conjugate(), Quaternion::getRotationMatrix(), Quaternion::normalize(), orientation_m, origin_m, Quaternion::rotate(), and rotationMatrix_m.
|
inline |
Definition at line 52 of file CoordinateSystemTrafo.h.
References Quaternion::conjugate(), orientation_m, origin_m, and Quaternion::rotate().
Referenced by operator<<().
Definition at line 92 of file CoordinateSystemTrafo.h.
References dot(), rotationMatrix_m, and transpose().
Referenced by ParallelTTracker::applyFractionalStep(), Monitor::applyToReferenceParticle(), ParallelSliceTracker::autophaseCavities(), Bend2D::calcEntranceFringeField(), Bend2D::calcExitFringeField(), CollimatorPhysics::computeCoulombScattering(), ThickTracker::dump_m(), ParallelSliceTracker::execute(), Bend2D::getSurfaceMesh(), OpalBeamline::rotateFrom(), ParallelSliceTracker::updateReferenceParticle(), ParallelTTracker::updateReferenceParticle(), ParallelTTracker::updateRefToLabCSTrafo(), and ParallelTTracker::writePhaseSpace().
Definition at line 87 of file CoordinateSystemTrafo.h.
References dot(), and rotationMatrix_m.
Referenced by MeshGenerator::add(), ParallelSliceTracker::autophaseCavities(), CollimatorPhysics::computeCoulombScattering(), ParallelSliceTracker::computeExternalFields(), ParallelTTracker::computeExternalFields(), ParallelTTracker::computeParticleMatterInteraction(), ParallelTTracker::computeWakefield(), ThickTracker::dump_m(), ParallelTTracker::emitParticles(), ParallelSliceTracker::execute(), ParallelSliceTracker::findStartPosition(), ParallelTTracker::findStartPosition(), OpalBeamline::rotateTo(), ParallelTTracker::transformBunch(), ParallelSliceTracker::updateReferenceParticle(), ParallelTTracker::updateReferenceParticle(), and ParallelTTracker::writePhaseSpace().
Definition at line 82 of file CoordinateSystemTrafo.h.
References dot(), origin_m, rotationMatrix_m, and transpose().
Referenced by ParallelTTracker::applyFractionalStep(), Monitor::applyToReferenceParticle(), ParallelSliceTracker::autophaseCavities(), CollimatorPhysics::computeCoulombScattering(), ParallelSliceTracker::execute(), Bend2D::getOutline(), Bend2D::getSurfaceMesh(), Bend2D::setFieldCalcParam(), OpalBeamline::transformFrom(), and ParallelTTracker::updateRefToLabCSTrafo().
Definition at line 77 of file CoordinateSystemTrafo.h.
References dot(), origin_m, and rotationMatrix_m.
Referenced by MeshGenerator::add(), ParallelSliceTracker::autophaseCavities(), Bend2D::calcEntranceFringeField(), Bend2D::calcExitFringeField(), Bend2D::calculateMapField(), ParallelSliceTracker::computeExternalFields(), ParallelTTracker::computeExternalFields(), ParallelTTracker::computeParticleMatterInteraction(), ParallelTTracker::computeWakefield(), ThickTracker::dump_m(), ParallelTTracker::emitParticles(), ParallelSliceTracker::execute(), ParallelSliceTracker::findStartPosition(), Bend2D::getOutline(), Bend2D::getSurfaceMesh(), Bend2D::inMagnetCentralRegion(), Bend2D::inMagnetExitRegion(), Bend2D::isPositionInExitField(), Bend2D::setFieldCalcParam(), ParallelTTracker::transformBunch(), OpalBeamline::transformTo(), Bend2D::transformToEntranceRegion(), Bend2D::transformToExitRegion(), ParallelSliceTracker::updateReferenceParticle(), and ParallelTTracker::updateReferenceParticle().
|
private |
Definition at line 35 of file CoordinateSystemTrafo.h.
Referenced by getRotation(), invert(), operator*=(), and print().
|
private |
Definition at line 34 of file CoordinateSystemTrafo.h.
Referenced by getOrigin(), invert(), operator*=(), print(), transformFrom(), and transformTo().
|
private |
Definition at line 36 of file CoordinateSystemTrafo.h.
Referenced by invert(), operator*=(), rotateFrom(), rotateTo(), transformFrom(), and transformTo().