Geant4
10.02.p02
|
#include <G4INCLThreeVector.hh>
Public Member Functions | |
ThreeVector () | |
ThreeVector (G4double ax, G4double ay, G4double az) | |
G4double | getX () const |
G4double | getY () const |
G4double | getZ () const |
G4double | perp () const |
G4double | perp2 () const |
G4double | mag () const |
Get the length of the vector. More... | |
G4double | mag2 () const |
Get the square of the length. More... | |
G4double | theta () const |
Theta angle. More... | |
G4double | phi () const |
Phi angle. More... | |
G4double | dot (const ThreeVector &v) const |
Dot product. More... | |
ThreeVector | vector (const ThreeVector &v) const |
Vector product. More... | |
void | setX (G4double ax) |
Set the x coordinate. More... | |
void | setY (G4double ay) |
Set the y coordinate. More... | |
void | setZ (G4double az) |
Set the z coordinate. More... | |
void | set (const G4double ax, const G4double ay, const G4double az) |
Set all the coordinates. More... | |
void | operator+= (const ThreeVector &v) |
ThreeVector | operator- () const |
Unary minus operator. More... | |
void | operator-= (const ThreeVector &v) |
template<typename T > | |
void | operator*= (const T &c) |
template<typename T > | |
void | operator/= (const T &c) |
ThreeVector | operator- (const ThreeVector &v) const |
ThreeVector | operator+ (const ThreeVector &v) const |
ThreeVector | operator/ (const G4double C) const |
Divides all components of the vector with a constant number. More... | |
ThreeVector | operator* (const G4double C) const |
void | rotate (const G4double angle, const ThreeVector &axis) |
Rotate the vector by a given angle around a given axis. More... | |
ThreeVector | anyOrthogonal () const |
Return a vector orthogonal to this. More... | |
std::string | print () const |
std::string | dump () const |
Private Attributes | |
G4double | x |
G4double | y |
G4double | z |
Definition at line 54 of file G4INCLThreeVector.hh.
|
inline |
Definition at line 56 of file G4INCLThreeVector.hh.
Referenced by anyOrthogonal(), operator*(), operator+(), operator-(), operator/(), and vector().
Definition at line 60 of file G4INCLThreeVector.hh.
|
inline |
Return a vector orthogonal to this.
Simple algorithm from Hughes and Moeller, J. Graphics Tools 4 (1999) 33.
Definition at line 191 of file G4INCLThreeVector.hh.
References ThreeVector(), x, y, and z.
|
inline |
Dot product.
Definition at line 97 of file G4INCLThreeVector.hh.
Referenced by G4INCL::Particle::boost(), G4INCL::ClusteringModelIntercomparison::clusterCanEscape(), G4INCL::CoulombNonRelativistic::distortOut(), G4INCL::ReflectionChannel::fillFinalState(), G4INCL::BinaryCollisionAvatar::getChannel(), G4INCL::ClusteringModelIntercomparison::getCluster(), G4INCL::Particle::getCosRPAngle(), G4INCL::Particle::getInvariantMass(), G4INCL::Particle::getLongitudinalPosition(), G4INCL::StandardPropagationModel::getTime(), G4INCL::Particle::lorentzContract(), G4INCL::KinematicsUtils::momentumInCM(), G4INCL::TransmissionChannel::particleLeaves(), and rotate().
|
inline |
Definition at line 206 of file G4INCLThreeVector.hh.
Referenced by G4INCL::Particle::dump().
|
inline |
Definition at line 64 of file G4INCLThreeVector.hh.
References x.
Referenced by G4INCL::AvatarDumpAction::afterAvatarUserAction(), G4INCL::Cluster::boost(), G4INCL::Nucleus::fillEventInfo(), G4INCL::PiNElasticChannel::fillFinalState(), G4INCL::ReflectionChannel::fillFinalState(), G4INCL::DeltaDecayChannel::fillFinalState(), G4INCL::ElasticChannel::fillFinalState(), and G4INCL::INCL::makeCompoundNucleus().
|
inline |
Definition at line 65 of file G4INCLThreeVector.hh.
References y.
Referenced by G4INCL::AvatarDumpAction::afterAvatarUserAction(), G4INCL::Cluster::boost(), G4INCL::Nucleus::fillEventInfo(), G4INCL::PiNElasticChannel::fillFinalState(), G4INCL::ReflectionChannel::fillFinalState(), G4INCL::DeltaDecayChannel::fillFinalState(), G4INCL::ElasticChannel::fillFinalState(), and G4INCL::INCL::makeCompoundNucleus().
|
inline |
Definition at line 66 of file G4INCLThreeVector.hh.
References z.
Referenced by G4INCL::AvatarDumpAction::afterAvatarUserAction(), G4INCL::Cluster::boost(), G4INCL::Nucleus::fillEventInfo(), G4INCL::PiNElasticChannel::fillFinalState(), G4INCL::ReflectionChannel::fillFinalState(), G4INCL::DeltaDecayChannel::fillFinalState(), G4INCL::ElasticChannel::fillFinalState(), and G4INCL::INCL::makeCompoundNucleus().
|
inline |
Get the length of the vector.
Definition at line 73 of file G4INCLThreeVector.hh.
Referenced by G4INCL::InteractionAvatar::bringParticleInside(), G4INCL::Nucleus::computeOneNucleonRecoilKinematics(), G4INCL::CoulombNonRelativistic::coulombDeviation(), G4INCL::Nucleus::decayOutgoingDeltas(), G4INCL::CoulombNonRelativistic::distortOut(), G4INCL::Nucleus::fillEventInfo(), G4INCL::DeltaProductionChannel::fillFinalState(), G4INCL::DeltaDecayChannel::fillFinalState(), G4INCL::StandardPropagationModel::generateBinaryCollisionAvatar(), G4INCL::Particle::getBeta(), G4INCL::PauliStandard::getBlockingProbability(), G4INCL::ClusteringModelIntercomparison::getCluster(), G4INCL::KinematicsUtils::getLocalEnergy(), G4INCL::Particle::getReflectionMomentum(), G4INCL::BinaryCollisionAvatar::postInteraction(), G4INCL::ParticleSampler::sampleOneParticleWithRPCorrelation(), G4INCL::StandardPropagationModel::shootComposite(), and G4INCL::StandardPropagationModel::shootParticle().
|
inline |
Get the square of the length.
Definition at line 78 of file G4INCLThreeVector.hh.
Referenced by G4INCL::ProjectileRemnant::addAllDynamicalSpectators(), G4INCL::ProjectileRemnant::addDynamicalSpectator(), G4INCL::ProjectileRemnant::addMostDynamicalSpectators(), G4INCL::Particle::adjustEnergyFromMomentum(), G4INCL::Particle::adjustMomentumFromEnergy(), G4INCL::Particle::boost(), G4INCL::InteractionAvatar::bringParticleInside(), G4INCL::ClusteringModelIntercomparison::clusterCanEscape(), G4INCL::Nucleus::computeOneNucleonRecoilKinematics(), G4INCL::CoulombNonRelativistic::coulombDeviation(), G4INCL::KinematicsUtils::energy(), G4INCL::PiNToDeltaChannel::fillFinalState(), G4INCL::ReflectionChannel::fillFinalState(), G4INCL::ElasticChannel::fillFinalState(), G4INCL::Cluster::freezeInternalMotion(), G4INCL::PhaseSpaceRauboldLynch::generateEvent(), G4INCL::PauliStandard::getBlockingProbability(), G4INCL::BinaryCollisionAvatar::getChannel(), G4INCL::Particle::getCosRPAngle(), G4INCL::Particle::getLongitudinalPosition(), G4INCL::StandardPropagationModel::getTime(), G4INCL::SurfaceAvatar::getTransmissionProbability(), G4INCL::Particle::lorentzContract(), G4INCL::INCL::makeCompoundNucleus(), G4INCL::Particle::Particle(), G4INCL::ParticleEntryChannel::particleEnters(), G4INCL::TransmissionChannel::particleLeaves(), G4INCL::Cluster::putParticlesOffShell(), G4INCL::INCL::RecoilCMFunctor::scaleParticleCMMomenta(), G4INCL::INCL::RecoilFunctor::scaleParticleEnergies(), G4INCL::KinematicsUtils::squareInvariantMass(), G4INCL::KinematicsUtils::squareTotalEnergyInCM(), and G4INCL::Nucleus::useFusionKinematics().
|
inline |
Definition at line 170 of file G4INCLThreeVector.hh.
References ThreeVector(), x, y, and z.
|
inline |
Definition at line 142 of file G4INCLThreeVector.hh.
Referenced by operator/=().
|
inline |
Definition at line 158 of file G4INCLThreeVector.hh.
References ThreeVector(), x, y, and z.
|
inline |
Definition at line 124 of file G4INCLThreeVector.hh.
|
inline |
Unary minus operator.
Definition at line 131 of file G4INCLThreeVector.hh.
References ThreeVector(), x, y, and z.
|
inline |
Definition at line 154 of file G4INCLThreeVector.hh.
References ThreeVector(), x, y, and z.
|
inline |
Definition at line 135 of file G4INCLThreeVector.hh.
|
inline |
Divides all components of the vector with a constant number.
Definition at line 165 of file G4INCLThreeVector.hh.
References C(), ThreeVector(), x, y, and z.
|
inline |
Definition at line 149 of file G4INCLThreeVector.hh.
References operator*=().
|
inline |
Definition at line 68 of file G4INCLThreeVector.hh.
Referenced by G4INCL::DeltaDecayChannel::fillFinalState(), and theta().
|
inline |
Definition at line 69 of file G4INCLThreeVector.hh.
Referenced by G4INCL::ElasticChannel::fillFinalState().
|
inline |
Phi angle.
Definition at line 90 of file G4INCLThreeVector.hh.
Referenced by G4INCL::Nucleus::fillEventInfo().
|
inline |
Definition at line 200 of file G4INCLThreeVector.hh.
Referenced by G4INCL::Cluster::print(), and G4INCL::Particle::print().
|
inline |
Rotate the vector by a given angle around a given axis.
angle | the rotation angle |
axis | the rotation axis, which must be a unit vector |
Definition at line 179 of file G4INCLThreeVector.hh.
References dot(), and vector().
Referenced by G4INCL::Particle::rotateMomentum(), and G4INCL::Particle::rotatePosition().
Set all the coordinates.
Definition at line 122 of file G4INCLThreeVector.hh.
|
inline |
Set the x coordinate.
Definition at line 113 of file G4INCLThreeVector.hh.
References x.
Referenced by G4INCL::Nucleus::computeOneNucleonRecoilKinematics(), G4INCL::PhaseSpaceKopylov::generate(), and G4INCL::Cluster::internalBoostToCM().
|
inline |
Set the y coordinate.
Definition at line 116 of file G4INCLThreeVector.hh.
References y.
Referenced by G4INCL::Nucleus::computeOneNucleonRecoilKinematics(), G4INCL::PhaseSpaceKopylov::generate(), and G4INCL::Cluster::internalBoostToCM().
|
inline |
Set the z coordinate.
Definition at line 119 of file G4INCLThreeVector.hh.
References z.
Referenced by G4INCL::Nucleus::computeOneNucleonRecoilKinematics(), G4INCL::PhaseSpaceKopylov::generate(), and G4INCL::Cluster::internalBoostToCM().
|
inline |
Theta angle.
Definition at line 83 of file G4INCLThreeVector.hh.
References perp(), x, y, and z.
Referenced by G4INCL::Nucleus::fillEventInfo().
|
inline |
Vector product.
Definition at line 104 of file G4INCLThreeVector.hh.
References ThreeVector(), x, y, and z.
Referenced by G4INCL::CoulombNonRelativistic::coulombDeviation(), G4INCL::Particle::getAngularMomentum(), and rotate().
|
private |
Definition at line 213 of file G4INCLThreeVector.hh.
Referenced by anyOrthogonal(), dot(), dump(), getX(), mag(), mag2(), operator*(), operator*=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), perp(), perp2(), phi(), print(), set(), setX(), theta(), and vector().
|
private |
Definition at line 213 of file G4INCLThreeVector.hh.
Referenced by anyOrthogonal(), dot(), dump(), getY(), mag(), mag2(), operator*(), operator*=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), perp(), perp2(), phi(), print(), set(), setY(), theta(), and vector().
|
private |
Definition at line 213 of file G4INCLThreeVector.hh.
Referenced by anyOrthogonal(), dot(), dump(), getZ(), mag(), mag2(), operator*(), operator*=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), print(), set(), setZ(), theta(), and vector().