Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4FermiUnstableFragment Class Reference

#include <G4FermiUnstableFragment.hh>

Inheritance diagram for G4FermiUnstableFragment:

Public Member Functions

 G4FermiUnstableFragment (G4FermiAtomicMass atomicMass, G4FermiChargeNumber chargeNumber, G4int polarization, G4double excitationEnergy, std::vector< G4FermiNucleiData > &&decayData)
void AppendDecayFragments (const G4LorentzVector &momentum, std::vector< G4FermiParticle > &particles) const override
Public Member Functions inherited from G4VFermiFragmentAN
 G4VFermiFragmentAN (G4FermiAtomicMass atomicMass, G4FermiChargeNumber chargeNumber, G4int polarization, G4double excitationEnergy)
 G4VFermiFragmentAN (const G4VFermiFragmentAN &)=delete
G4VFermiFragmentANoperator= (const G4VFermiFragmentAN &)=delete
 ~G4VFermiFragmentAN ()=default
void Initialize ()
std::vector< G4FermiParticleGetDecayFragments (const G4LorentzVector &momentum) const
G4FermiAtomicMass GetAtomicMass () const
G4FermiChargeNumber GetChargeNumber () const
G4int GetPolarization () const
G4double GetExcitationEnergy () const
G4double GetMass () const
G4double GetTotalEnergy () const

Additional Inherited Members

Protected Attributes inherited from G4VFermiFragmentAN
G4FermiAtomicMass atomicMass_
G4FermiChargeNumber chargeNumber_
G4int polarization_
G4double groudStateMass_
G4double excitationEnergy_

Detailed Description

Definition at line 36 of file G4FermiUnstableFragment.hh.

Constructor & Destructor Documentation

◆ G4FermiUnstableFragment()

G4FermiUnstableFragment::G4FermiUnstableFragment ( G4FermiAtomicMass atomicMass,
G4FermiChargeNumber chargeNumber,
G4int polarization,
G4double excitationEnergy,
std::vector< G4FermiNucleiData > && decayData )

Definition at line 36 of file G4FermiUnstableFragment.cc.

40 : G4VFermiFragmentAN(atomicMass, chargeNumber, polarization, excitationEnergy),
41 decayData_(std::move(decayData))
42{}
G4VFermiFragmentAN(G4FermiAtomicMass atomicMass, G4FermiChargeNumber chargeNumber, G4int polarization, G4double excitationEnergy)

Member Function Documentation

◆ AppendDecayFragments()

void G4FermiUnstableFragment::AppendDecayFragments ( const G4LorentzVector & momentum,
std::vector< G4FermiParticle > & particles ) const
overridevirtual

Implements G4VFermiFragmentAN.

Definition at line 44 of file G4FermiUnstableFragment.cc.

46{
47 G4FermiPhaseDecay phaseDecay;
48 auto fragmentsMomentum = phaseDecay.CalculateDecay(momentum, masses_);
49
50 const auto boostVector = momentum.boostVector();
51
52 for (std::size_t i = 0; i < decayData_.size(); ++i) {
53 fragments.emplace_back(decayData_[i].atomicMass, decayData_[i].chargeNumber,
54 fragmentsMomentum[i].boost(boostVector));
55 }
56}
Hep3Vector boostVector() const
std::vector< G4LorentzVector > CalculateDecay(const G4LorentzVector &totalMomentum, const std::vector< G4double > &fragmentsMass) const

The documentation for this class was generated from the following files: