Geant4  10.03
G4KineticTrack Class Reference

#include <G4KineticTrack.hh>

+ Inheritance diagram for G4KineticTrack:
+ Collaboration diagram for G4KineticTrack:

Public Types

enum  CascadeState {
  undefined, outside, going_in, inside,
  going_out, gone_out, captured, miss_nucleus
}
 

Public Member Functions

 G4KineticTrack ()
 
 G4KineticTrack (const G4KineticTrack &right)
 
 G4KineticTrack (const G4ParticleDefinition *aDefinition, G4double aFormationTime, const G4ThreeVector &aPosition, const G4LorentzVector &a4Momentum)
 
 G4KineticTrack (G4Nucleon *nucleon, const G4ThreeVector &aPosition, const G4LorentzVector &a4Momentum)
 
 ~G4KineticTrack ()
 
G4KineticTrackoperator= (const G4KineticTrack &right)
 
G4int operator== (const G4KineticTrack &right) const
 
G4int operator!= (const G4KineticTrack &right) const
 
const G4ParticleDefinitionGetDefinition () const
 
void SetDefinition (const G4ParticleDefinition *aDefinition)
 
G4double GetFormationTime () const
 
void SetFormationTime (G4double aFormationTime)
 
const G4ThreeVectorGetPosition () const
 
void SetPosition (const G4ThreeVector aPosition)
 
const G4LorentzVectorGet4Momentum () const
 
void Set4Momentum (const G4LorentzVector &a4Momentum)
 
void Update4Momentum (G4double aEnergy)
 
void Update4Momentum (const G4ThreeVector &aMomentum)
 
void SetTrackingMomentum (const G4LorentzVector &a4Momentum)
 
void UpdateTrackingMomentum (G4double aEnergy)
 
void UpdateTrackingMomentum (const G4ThreeVector &aMomentum)
 
const G4LorentzVectorGetTrackingMomentum () const
 
G4double SampleResidualLifetime ()
 
void Hit ()
 
void SetNucleon (G4Nucleon *aN)
 
G4bool IsParticipant () const
 
G4KineticTrackVectorDecay ()
 
G4doubleGetActualWidth () const
 
G4double GetActualMass () const
 
G4int GetnChannels () const
 
CascadeState SetState (const CascadeState new_state)
 
CascadeState GetState () const
 
void SetProjectilePotential (const G4double aPotential)
 
G4double GetProjectilePotential () const
 
G4double BrWig (const G4double Gamma, const G4double rmass, const G4double mass) const
 
- Public Member Functions inherited from G4VKineticNucleon
 G4VKineticNucleon ()
 
 G4VKineticNucleon (const G4VKineticNucleon &right)
 
virtual ~G4VKineticNucleon ()
 
const G4VKineticNucleonoperator= (const G4VKineticNucleon &right)
 
int operator== (const G4VKineticNucleon &right) const
 
int operator!= (const G4VKineticNucleon &right) const
 

Private Member Functions

void SetnChannels (const G4int aChannel)
 
void SetActualWidth (G4double *anActualWidth)
 
G4double EvaluateTotalActualWidth ()
 
G4double EvaluateCMMomentum (const G4double mass, const G4double *m_ij) const
 
G4double IntegrateCMMomentum (const G4double lowerLimit) const
 
G4double IntegrateCMMomentum (const G4double lowerLimit, const G4double polemass) const
 
G4double IntegrateCMMomentum2 () const
 
G4double IntegrandFunction1 (G4double xmass) const
 
G4double IntegrandFunction2 (G4double xmass) const
 
G4double IntegrandFunction3 (G4double xmass) const
 
G4double IntegrandFunction4 (G4double xmass) const
 

Private Attributes

const G4ParticleDefinitiontheDefinition
 
G4double theFormationTime
 
G4ThreeVector thePosition
 
G4LorentzVector the4Momentum
 
G4LorentzVector theFermi3Momentum
 
G4LorentzVector theTotal4Momentum
 
G4NucleontheNucleon
 
G4int nChannels
 
G4double theActualMass
 
G4doubletheActualWidth
 
G4doubletheDaughterMass
 
G4doubletheDaughterWidth
 
CascadeState theStateToNucleus
 
G4double theProjectilePotential
 

Detailed Description

Definition at line 57 of file G4KineticTrack.hh.

Member Enumeration Documentation

Enumerator
undefined 
outside 
going_in 
inside 
going_out 
gone_out 
captured 
miss_nucleus 

Definition at line 119 of file G4KineticTrack.hh.

Constructor & Destructor Documentation

G4KineticTrack::G4KineticTrack ( )

Definition at line 67 of file G4KineticTrack.cc.

G4KineticTrack::G4KineticTrack ( const G4KineticTrack right)

Definition at line 100 of file G4KineticTrack.cc.

References GetActualMass(), GetDefinition(), GetFormationTime(), GetnChannels(), GetPosition(), GetTrackingMomentum(), nChannels, the4Momentum, theActualMass, theActualWidth, theDaughterMass, theDaughterWidth, theDefinition, theFermi3Momentum, theFormationTime, theNucleon, thePosition, theProjectilePotential, theStateToNucleus, and theTotal4Momentum.

+ Here is the call graph for this function:

G4KineticTrack::G4KineticTrack ( G4Nucleon nucleon,
const G4ThreeVector aPosition,
const G4LorentzVector a4Momentum 
)

Definition at line 416 of file G4KineticTrack.cc.

References Set4Momentum(), and theFermi3Momentum.

+ Here is the call graph for this function:

G4KineticTrack::~G4KineticTrack ( )

Definition at line 438 of file G4KineticTrack.cc.

References theActualWidth, theDaughterMass, and theDaughterWidth.

Member Function Documentation

G4double G4KineticTrack::BrWig ( const G4double  Gamma,
const G4double  rmass,
const G4double  mass 
) const
inline

Definition at line 379 of file G4KineticTrack.hh.

References twopi.

Referenced by IntegrandFunction1(), IntegrandFunction2(), IntegrandFunction3(), and IntegrandFunction4().

+ Here is the caller graph for this function:

G4double G4KineticTrack::EvaluateCMMomentum ( const G4double  mass,
const G4double m_ij 
) const
inlineprivate

Definition at line 365 of file G4KineticTrack.hh.

Referenced by G4KineticTrack().

+ Here is the caller graph for this function:

G4double G4KineticTrack::EvaluateTotalActualWidth ( )
inlineprivate

Definition at line 346 of file G4KineticTrack.hh.

References nChannels, and theActualWidth.

Referenced by Decay(), and SampleResidualLifetime().

+ Here is the caller graph for this function:

const G4LorentzVector & G4KineticTrack::Get4Momentum ( ) const
inlinevirtual

Implements G4VKineticNucleon.

Definition at line 240 of file G4KineticTrack.hh.

References theTotal4Momentum.

Referenced by G4MesonAbsorption::AbsorptionCrossSection(), G4CollisionManager::AddCollision(), G4BinaryCascade::ApplyCollision(), G4KineticTrackVector::Boost(), G4KineticTrackVector::BoostBeam(), G4RKFieldIntegrator::CalculateTotalEnergy(), G4BinaryCascade::Capture(), G4BinaryCascade::CorrectShortlivedPrimaryForFermi(), G4XpimNTotal::CrossSection(), G4XpipNTotal::CrossSection(), G4XNNTotalLowE::CrossSection(), G4XNNElasticLowE::CrossSection(), G4CollisionNN::CrossSection(), G4XResonance::CrossSection(), G4XAnnihilationChannel::CrossSection(), G4XMesonBaryonElastic::CrossSection(), G4CrossSectionPatch::CrossSection(), G4XnpTotalLowE::CrossSection(), G4CrossSectionComposite::CrossSection(), G4XnpElasticLowE::CrossSection(), G4CrossSectionBuffer::CrossSection(), G4XPDGElastic::CrossSection(), G4XPDGTotal::CrossSection(), G4BinaryCascade::DebugApplyCollision(), Decay(), G4VXResonance::DetailedBalance(), G4BinaryCascade::FillVoidNucleusProducts(), G4VElasticCollision::FinalState(), G4VScatteringCollision::FinalState(), G4VAnnihilationCollision::FinalState(), G4BinaryCascade::FindLateParticleCollision(), G4Absorber::FindProducts(), G4QGSMFragmentation::FragmentString(), G4LundStringFragmentation::FragmentString(), G4ExcitedString::Get4Momentum(), G4MesonAbsorption::GetFinalState(), G4MesonAbsorption::GetTimeToAbsorption(), G4Scatterer::GetTimeToInteraction(), G4RKFieldIntegrator::Integrate(), G4BinaryLightIonReaction::Interact(), G4ExcitedString::LorentzRotate(), G4VCrossSectionSource::PrintAll(), G4BinaryCascade::PrintKTVector(), G4IntraNucleiCascader::processSecondary(), G4BinaryCascade::ProductsAddFinalState(), G4DecayStrongResonances::Propagate(), G4CascadeInterface::Propagate(), G4BinaryCascade::Propagate1H1(), G4IntraNucleiCascader::releaseSecondary(), G4Scatterer::Scatter(), G4CrossSectionPatch::Transition(), G4XAnnihilationChannel::VariablePartialWidth(), G4XAnnihilationChannel::VariableWidth(), and G4Absorber::WillBeAbsorbed().

G4double G4KineticTrack::GetActualMass ( ) const
inline
G4double * G4KineticTrack::GetActualWidth ( ) const
inline

Definition at line 334 of file G4KineticTrack.hh.

References theActualWidth.

const G4ParticleDefinition * G4KineticTrack::GetDefinition ( ) const
inlinevirtual

Implements G4VKineticNucleon.

Definition at line 210 of file G4KineticTrack.hh.

References theDefinition.

Referenced by G4MesonAbsorption::AbsorptionCrossSection(), G4CollisionManager::AddCollision(), G4BinaryCascade::ApplyCollision(), G4KineticTrackVector::BoostBeam(), G4CollisionComposite::BufferedCrossSection(), G4RKFieldIntegrator::CalculateTotalEnergy(), G4BinaryCascade::Capture(), G4BinaryCascade::CorrectShortlivedPrimaryForFermi(), G4XAqmTotal::CrossSection(), G4CollisionNN::CrossSection(), G4XResonance::CrossSection(), G4XAnnihilationChannel::CrossSection(), G4XnpElasticLowE::CrossSection(), G4XnpTotalLowE::CrossSection(), G4CollisionComposite::CrossSection(), G4XPDGElastic::CrossSection(), G4XPDGTotal::CrossSection(), G4BinaryCascade::DebugApplyCollision(), G4BinaryCascade::DebugApplyCollisionFail(), G4DecayKineticTracks::Decay(), Decay(), G4VXResonance::DegeneracyFactor(), G4VXResonance::DetailedBalance(), G4RKPropagation::FieldTransport(), G4BinaryCascade::FillVoidNucleusProducts(), G4VElasticCollision::FinalState(), G4VScatteringCollision::FinalState(), G4Absorber::FindAbsorbers(), G4MesonAbsorption::FindAndFillCluster(), G4VCrossSectionSource::FindKeyParticle(), G4BinaryCascade::FindLateParticleCollision(), G4VCrossSectionSource::FindLightParticle(), G4Absorber::FindProducts(), G4QGSMFragmentation::FragmentString(), G4ExcitedStringDecay::FragmentStrings(), G4KineticTrack(), G4BCDecay::GetCollisions(), G4MesonAbsorption::GetFinalState(), G4ParticleTypeConverter::GetGenericType(), G4ConcreteMesonBaryonToResonance::GetOutgoingParticle(), G4MesonAbsorption::GetTimeToAbsorption(), G4Scatterer::GetTimeToInteraction(), G4GeneralNNCollision::IsInCharge(), G4CollisionnpElastic::IsInCharge(), G4CollisionMesonBaryonElastic::IsInCharge(), G4CollisionNNElastic::IsInCharge(), G4ConcreteNNTwoBodyResonance::IsInCharge(), G4VXResonance::IsospinCorrection(), G4LundStringFragmentation::Loop_toFragmentString(), G4XAnnihilationChannel::NormalizedClebsch(), operator=(), G4CollisionManager::Print(), G4CollisionInitialState::Print(), G4BinaryCascade::PrintKTVector(), G4IntraNucleiCascader::processSecondary(), G4BinaryCascade::ProductsAddFinalState(), G4DecayStrongResonances::Propagate(), G4CascadeInterface::Propagate(), G4BinaryCascade::Propagate1H1(), G4IntraNucleiCascader::releaseSecondary(), G4Scatterer::Scatter(), G4BinaryCascade::StepParticlesOut(), G4RKPropagation::Transport(), and G4Absorber::WillBeAbsorbed().

G4double G4KineticTrack::GetFormationTime ( ) const
inline

Definition at line 220 of file G4KineticTrack.hh.

References theFormationTime.

Referenced by G4XMesonBaryonElastic::CrossSection(), G4QGSMFragmentation::FragmentString(), G4LundStringFragmentation::FragmentString(), G4ExcitedString::G4ExcitedString(), G4KineticTrack(), G4BCLateParticle::GetCollisions(), operator=(), and G4CascadeInterface::Propagate().

+ Here is the caller graph for this function:

G4int G4KineticTrack::GetnChannels ( ) const
inline

Definition at line 324 of file G4KineticTrack.hh.

References nChannels.

Referenced by G4KineticTrack(), and operator=().

+ Here is the caller graph for this function:

G4double G4KineticTrack::GetProjectilePotential ( ) const
inline

Definition at line 421 of file G4KineticTrack.hh.

References theProjectilePotential.

Referenced by G4RKPropagation::Transport().

+ Here is the caller graph for this function:

G4KineticTrack::CascadeState G4KineticTrack::GetState ( ) const
inline

Definition at line 402 of file G4KineticTrack.hh.

References theStateToNucleus.

Referenced by G4BinaryCascade::Absorb(), G4BinaryCascade::ApplyCollision(), G4BinaryCascade::Capture(), G4BinaryCascade::CorrectShortlivedPrimaryForFermi(), G4BinaryCascade::FindLateParticleCollision(), G4BinaryCascade::PrintKTVector(), G4BinaryCascade::StepParticlesOut(), and G4RKPropagation::Transport().

+ Here is the caller graph for this function:

const G4LorentzVector & G4KineticTrack::GetTrackingMomentum ( ) const
inline
void G4KineticTrack::Hit ( )
inline

Definition at line 386 of file G4KineticTrack.hh.

References G4Nucleon::Hit(), and theNucleon.

Referenced by G4BinaryCascade::ApplyCollision(), and G4BinaryCascade::Capture().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4KineticTrack::IntegrandFunction1 ( G4double  xmass) const
private

Definition at line 744 of file G4KineticTrack.cc.

References BrWig(), G4INCL::Math::max(), theActualMass, theDaughterMass, and theDaughterWidth.

Referenced by IntegrateCMMomentum().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4KineticTrack::IntegrandFunction2 ( G4double  xmass) const
private

Definition at line 758 of file G4KineticTrack.cc.

References BrWig(), G4ParticleDefinition::GetPDGMass(), G4INCL::Math::max(), theDaughterMass, theDaughterWidth, and theDefinition.

Referenced by IntegrateCMMomentum().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4KineticTrack::IntegrandFunction3 ( G4double  xmass) const
private

Definition at line 771 of file G4KineticTrack.cc.

References BrWig(), G4KineticTrack_Gmass, G4KineticTrack_xmass1, theDaughterMass, and theDaughterWidth.

Referenced by IntegrandFunction4().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4KineticTrack::IntegrandFunction4 ( G4double  xmass) const
private

Definition at line 785 of file G4KineticTrack.cc.

References BrWig(), G4KineticTrack_Gmass, G4KineticTrack_xmass1, IntegrandFunction3(), G4Integrator< T, F >::Simpson(), theDaughterMass, and theDaughterWidth.

Referenced by IntegrateCMMomentum2().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4KineticTrack::IntegrateCMMomentum ( const G4double  lowerLimit) const
private

Definition at line 805 of file G4KineticTrack.cc.

References IntegrandFunction1(), G4Integrator< T, F >::Simpson(), theActualMass, and theDaughterMass.

Referenced by G4KineticTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4KineticTrack::IntegrateCMMomentum ( const G4double  lowerLimit,
const G4double  polemass 
) const
private

Definition at line 818 of file G4KineticTrack.cc.

References IntegrandFunction2(), G4Integrator< T, F >::Simpson(), and theDaughterMass.

+ Here is the call graph for this function:

G4double G4KineticTrack::IntegrateCMMomentum2 ( ) const
private

Definition at line 832 of file G4KineticTrack.cc.

References IntegrandFunction4(), G4Integrator< T, F >::Simpson(), and theActualMass.

Referenced by G4KineticTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4KineticTrack::IsParticipant ( ) const
inline

Definition at line 395 of file G4KineticTrack.hh.

References G4Nucleon::AreYouHit(), and theNucleon.

Referenced by G4BinaryCascade::PrintKTVector(), and G4BinaryCascade::ProductsAddFinalState().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4KineticTrack::operator!= ( const G4KineticTrack right) const

Definition at line 479 of file G4KineticTrack.cc.

G4KineticTrack & G4KineticTrack::operator= ( const G4KineticTrack right)

Definition at line 447 of file G4KineticTrack.cc.

References GetDefinition(), GetFormationTime(), GetnChannels(), GetTrackingMomentum(), nChannels, the4Momentum, theActualWidth, theDefinition, theFermi3Momentum, theFormationTime, theNucleon, theStateToNucleus, and theTotal4Momentum.

+ Here is the call graph for this function:

G4int G4KineticTrack::operator== ( const G4KineticTrack right) const

Definition at line 472 of file G4KineticTrack.cc.

G4double G4KineticTrack::SampleResidualLifetime ( )
inline

Definition at line 357 of file G4KineticTrack.hh.

References EvaluateTotalActualWidth(), G4Log(), G4UniformRand, and the4Momentum.

Referenced by G4BCDecay::GetCollisions().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4KineticTrack::Set4Momentum ( const G4LorentzVector a4Momentum)
inline
void G4KineticTrack::SetActualWidth ( G4double anActualWidth)
inlineprivate

Definition at line 339 of file G4KineticTrack.hh.

References theActualWidth.

void G4KineticTrack::SetDefinition ( const G4ParticleDefinition aDefinition)
inline

Definition at line 215 of file G4KineticTrack.hh.

References theDefinition.

void G4KineticTrack::SetFormationTime ( G4double  aFormationTime)
inline

Definition at line 225 of file G4KineticTrack.hh.

References theFormationTime.

Referenced by G4QGSMFragmentation::FragmentString(), and G4LundStringFragmentation::FragmentString().

+ Here is the caller graph for this function:

void G4KineticTrack::SetnChannels ( const G4int  aChannel)
inlineprivate

Definition at line 329 of file G4KineticTrack.hh.

References nChannels.

void G4KineticTrack::SetNucleon ( G4Nucleon aN)
inline

Definition at line 106 of file G4KineticTrack.hh.

References theNucleon.

Referenced by G4BinaryCascade::BuildTargetList().

+ Here is the caller graph for this function:

void G4KineticTrack::SetPosition ( const G4ThreeVector  aPosition)
inline

Definition at line 235 of file G4KineticTrack.hh.

References thePosition.

Referenced by G4RKPropagation::FieldTransport(), G4QGSMFragmentation::FragmentString(), G4LundStringFragmentation::FragmentString(), G4ExcitedStringDecay::FragmentStrings(), G4RKPropagation::FreeTransport(), G4RKFieldIntegrator::Integrate(), and G4KineticTrackVector::Shift().

+ Here is the caller graph for this function:

void G4KineticTrack::SetProjectilePotential ( const G4double  aPotential)
inline

Definition at line 416 of file G4KineticTrack.hh.

References theProjectilePotential.

Referenced by G4BinaryLightIonReaction::Interact().

+ Here is the caller graph for this function:

G4KineticTrack::CascadeState G4KineticTrack::SetState ( const CascadeState  new_state)
inline

Definition at line 408 of file G4KineticTrack.hh.

References theStateToNucleus.

Referenced by G4BinaryCascade::ApplyYourself(), G4BinaryCascade::BuildTargetList(), G4BinaryCascade::FindLateParticleCollision(), G4BinaryLightIonReaction::Interact(), and G4RKPropagation::Transport().

+ Here is the caller graph for this function:

void G4KineticTrack::SetTrackingMomentum ( const G4LorentzVector a4Momentum)
inline

Definition at line 283 of file G4KineticTrack.hh.

References the4Momentum, theFermi3Momentum, and theTotal4Momentum.

Referenced by G4RKPropagation::FieldTransport(), G4RKPropagation::Transport(), and UpdateTrackingMomentum().

+ Here is the caller graph for this function:

void G4KineticTrack::Update4Momentum ( G4double  aEnergy)
inline

Definition at line 259 of file G4KineticTrack.hh.

References Set4Momentum(), sqr(), the4Momentum, and theTotal4Momentum.

Referenced by G4BinaryCascade::CorrectShortlivedPrimaryForFermi().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4KineticTrack::Update4Momentum ( const G4ThreeVector aMomentum)
inline

Definition at line 275 of file G4KineticTrack.hh.

References Set4Momentum(), and theTotal4Momentum.

+ Here is the call graph for this function:

void G4KineticTrack::UpdateTrackingMomentum ( G4double  aEnergy)
inline

Definition at line 295 of file G4KineticTrack.hh.

References SetTrackingMomentum(), sqr(), the4Momentum, and theTotal4Momentum.

+ Here is the call graph for this function:

void G4KineticTrack::UpdateTrackingMomentum ( const G4ThreeVector aMomentum)
inline

Definition at line 311 of file G4KineticTrack.hh.

References SetTrackingMomentum(), and theTotal4Momentum.

+ Here is the call graph for this function:

Member Data Documentation

G4int G4KineticTrack::nChannels
private
G4double G4KineticTrack::theActualMass
private
G4double* G4KineticTrack::theActualWidth
private
G4double* G4KineticTrack::theDaughterWidth
private
const G4ParticleDefinition* G4KineticTrack::theDefinition
private
G4LorentzVector G4KineticTrack::theFermi3Momentum
private

Definition at line 171 of file G4KineticTrack.hh.

Referenced by G4KineticTrack(), operator=(), Set4Momentum(), and SetTrackingMomentum().

G4double G4KineticTrack::theFormationTime
private

Definition at line 166 of file G4KineticTrack.hh.

Referenced by G4KineticTrack(), GetFormationTime(), operator=(), and SetFormationTime().

G4Nucleon* G4KineticTrack::theNucleon
private

Definition at line 174 of file G4KineticTrack.hh.

Referenced by G4KineticTrack(), Hit(), IsParticipant(), operator=(), and SetNucleon().

G4ThreeVector G4KineticTrack::thePosition
private

Definition at line 168 of file G4KineticTrack.hh.

Referenced by G4KineticTrack(), GetPosition(), and SetPosition().

G4double G4KineticTrack::theProjectilePotential
private
CascadeState G4KineticTrack::theStateToNucleus
private

Definition at line 187 of file G4KineticTrack.hh.

Referenced by G4KineticTrack(), GetState(), operator=(), and SetState().

G4LorentzVector G4KineticTrack::theTotal4Momentum
private

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