98 G4bool isPreAssigned = (o_products != 0);
101 if (!isPreAssigned ){
108 return &fParticleChangeForDecay ;
117 if (ParentEnergy < ParentMass) {
118 ParentEnergy = ParentMass;
121 G4cout <<
"G4UnknownDecay::DoIt : Total Energy is less than its mass" <<
G4endl;
123 G4cout <<
" Energy:" << ParentEnergy/
MeV <<
"[MeV]";
124 G4cout <<
" Mass:" << ParentMass/
MeV <<
"[MeV]";
136 products->
Boost( ParentEnergy, ParentDirection);
144 G4cout <<
"G4UnknownDecay::DoIt : Decay vertex :";
145 G4cout <<
" Time: " << finalGlobalTime/
ns <<
"[ns]";
150 G4cout <<
"G4UnknownDecay::DoIt : decay products in Lab. Frame" <<
G4endl;
157 for (index=0; index < numberOfSecondaries; index++)
180 return &fParticleChangeForDecay ;
G4int GetVerboseLevel() const
G4double GetTotalEnergy() const
const G4DynamicParticle * GetDynamicParticle() const
const G4ThreeVector & GetPosition() const
const G4DecayProducts * GetPreAssignedDecayProducts() const
void SetTouchableHandle(const G4TouchableHandle &apValue)
G4ParticleDefinition * GetDefinition() const
void Boost(G4double totalEnergy, const G4ThreeVector &momentumDirection)
void ClearNumberOfInteractionLengthLeft()
const G4String & GetParticleName() const
void ProposeLocalEnergyDeposit(G4double anEnergyPart)
virtual void Initialize(const G4Track &)
G4GLOB_DLL std::ostream G4cout
const G4ThreeVector & GetMomentumDirection() const
static constexpr double cm
G4double GetGlobalTime() const
void AddSecondary(G4Track *aSecondary)
const G4TouchableHandle & GetTouchableHandle() const
void ProposeGlobalTime(G4double t)
void SetNumberOfSecondaries(G4int totSecondaries)
G4DynamicParticle * PopProducts()
static constexpr double MeV
void ProposeTrackStatus(G4TrackStatus status)
G4double GetPreAssignedDecayProperTime() const
void SetGoodForTrackingFlag(G4bool value=true)