33 #define INCLXX_IN_GEANT4_MODE 1
88 theHelicity(rhs.theHelicity),
89 emissionTime(rhs.emissionTime),
90 outOfWell(rhs.outOfWell),
131 std::swap(emissionTime, rhs.emissionTime);
145 swap(temporaryParticle);
204 ERROR(
"Trying to set particle type to Unknown!" << std::endl);
295 const G4double gamma = 1.0 / std::sqrt(1.0 - beta2);
313 const G4double gamma = 1.0 / std::sqrt(1.0 - beta2);
315 const ThreeVector transversePosition = theRelativePosition - aBoostVector * (theRelativePosition.
dot(aBoostVector) / aBoostVector.
mag2());
316 const ThreeVector longitudinalPosition = theRelativePosition - transversePosition;
318 thePosition = refPos + transversePosition + longitudinalPosition / gamma;
347 ERROR(
"Particle::getINCLMass: Unknown particle type." << std::endl);
376 ERROR(
"Particle::getTableMass: Unknown particle type." << std::endl);
405 ERROR(
"Particle::getRealMass: Unknown particle type." << std::endl);
443 theQValue = massTableParent - massTableDaughter - massTableParticle;
451 return theQValue - (massINCLParent-massINCLDaughter-massINCLParticle);
470 const G4int AFromDaughter = AFrom -
theA;
471 const G4int ZFromDaughter = ZFrom -
theZ;
486 return theQValue - (massINCLToDaughter-massINCLTo-massINCLParticle);
497 ERROR(
"E*E - p*p is negative." << std::endl);
500 return std::sqrt(mass);
526 this->theMass = mass;
576 thePosition += ((*thePropagationMomentum)*(step/(*thePropagationEnergy)));
631 return (std::find(l.begin(), l.end(),
this)!=l.end());
687 std::stringstream ss;
688 ss <<
"Particle (ID = " <<
ID <<
") type = ";
691 <<
" energy = " <<
theEnergy << std::endl
702 std::stringstream ss;
703 ss <<
"(particle " <<
ID <<
" ";
720 WARN(
"Particle::getParticles() method was called on a Particle object" << std::endl);