Geant4  10.00.p02
G4INCL::SurfaceAvatar Class Reference

Surface avatar. More...

#include <G4INCLSurfaceAvatar.hh>

+ Inheritance diagram for G4INCL::SurfaceAvatar:
+ Collaboration diagram for G4INCL::SurfaceAvatar:

Public Member Functions

 SurfaceAvatar (G4INCL::Particle *aParticle, G4double time, G4INCL::Nucleus *aNucleus)
 
virtual ~SurfaceAvatar ()
 
G4INCL::IChannelgetChannel ()
 
G4INCL::FinalStategetFinalState ()
 
virtual void preInteraction ()
 
virtual FinalStatepostInteraction (FinalState *)
 
ParticleList getParticles () const
 
std::string dump () const
 
G4double getTransmissionProbability (Particle const *const particle)
 Calculate the transmission probability for the particle. More...
 
G4double getCosRefractionAngle () const
 Get the cosine of the refraction angle (precalculated by initializeRefractionVariables) More...
 
G4double getOutgoingMomentum () const
 Get the outgoing momentum (precalculated by initializeRefractionVariables) More...
 
- Public Member Functions inherited from G4INCL::IAvatar
 IAvatar ()
 
 IAvatar (G4double time)
 
virtual ~IAvatar ()
 
G4INCL::FinalStategetFinalState ()
 
G4double getTime () const
 
AvatarType getType () const
 
G4bool isACollision () const
 
G4bool isADecay () const
 
void setType (AvatarType t)
 
long getID () const
 
std::string toString ()
 

Private Member Functions

void initializeRefractionVariables (Particle const *const particle)
 

Private Attributes

G4INCL::ParticletheParticle
 
G4INCL::NucleustheNucleus
 
G4double particlePIn
 
G4double particlePOut
 
G4double particleTOut
 
G4double TMinusV
 
G4double TMinusV2
 
G4double particleMass
 
G4double sinIncidentAngle
 
G4double cosIncidentAngle
 
G4double sinRefractionAngle
 
G4double cosRefractionAngle
 
G4double refractionIndexRatio
 
G4bool internalReflection
 

Additional Inherited Members

- Protected Attributes inherited from G4INCL::IAvatar
G4double theTime
 

Detailed Description

Surface avatar.

The reflection avatar is created when a particle reaches the boundary of the nucleus. At this point it can either be reflected from the boundary or exit the nucleus.

Definition at line 60 of file G4INCLSurfaceAvatar.hh.

Constructor & Destructor Documentation

G4INCL::SurfaceAvatar::SurfaceAvatar ( G4INCL::Particle aParticle,
G4double  time,
G4INCL::Nucleus aNucleus 
)

Definition at line 54 of file G4INCLSurfaceAvatar.cc.

References G4INCL::IAvatar::setType(), and G4INCL::SurfaceAvatarType.

+ Here is the call graph for this function:

G4INCL::SurfaceAvatar::~SurfaceAvatar ( )
virtual

Definition at line 72 of file G4INCLSurfaceAvatar.cc.

Member Function Documentation

std::string G4INCL::SurfaceAvatar::dump ( ) const
virtual

Implements G4INCL::IAvatar.

Definition at line 192 of file G4INCLSurfaceAvatar.cc.

References G4INCL::Particle::dump(), theParticle, and G4INCL::IAvatar::theTime.

+ Here is the call graph for this function:

G4double G4INCL::SurfaceAvatar::getCosRefractionAngle ( ) const
inline

Get the cosine of the refraction angle (precalculated by initializeRefractionVariables)

Definition at line 83 of file G4INCLSurfaceAvatar.hh.

References cosRefractionAngle.

G4INCL::FinalState * G4INCL::SurfaceAvatar::getFinalState ( )

Definition at line 165 of file G4INCLSurfaceAvatar.cc.

References getChannel(), and G4INCL::IChannel::getFinalState().

+ Here is the call graph for this function:

G4double G4INCL::SurfaceAvatar::getOutgoingMomentum ( ) const
inline

Get the outgoing momentum (precalculated by initializeRefractionVariables)

Definition at line 86 of file G4INCLSurfaceAvatar.hh.

References particlePOut.

ParticleList G4INCL::SurfaceAvatar::getParticles ( ) const
inlinevirtual

Implements G4INCL::IAvatar.

Definition at line 71 of file G4INCLSurfaceAvatar.hh.

References theParticle.

G4double G4INCL::SurfaceAvatar::getTransmissionProbability ( Particle const *const  particle)

Calculate the transmission probability for the particle.

Definition at line 201 of file G4INCLSurfaceAvatar.cc.

References cosIncidentAngle, cosRefractionAngle, G4INCL::Particle::getA(), G4INCL::Store::getConfig(), G4INCL::Particle::getEmissionQValueCorrection(), G4INCL::Particle::getKineticEnergy(), G4INCL::Particle::getMass(), G4INCL::Particle::getMomentum(), G4INCL::Particle::getPotentialEnergy(), G4INCL::Config::getRefraction(), G4INCL::Nucleus::getStore(), G4INCL::Nucleus::getTransmissionBarrier(), G4INCL::Particle::getZ(), INCL_DEBUG, initializeRefractionVariables(), internalReflection, G4INCL::ThreeVector::mag2(), particleMass, particlePIn, particlePOut, particleTOut, refractionIndexRatio, theNucleus, TMinusV, and TMinusV2.

Referenced by getChannel().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4INCL::SurfaceAvatar::initializeRefractionVariables ( Particle const *const  particle)
private

Definition at line 272 of file G4INCLSurfaceAvatar.cc.

References cosIncidentAngle, cosRefractionAngle, G4INCL::Particle::getCosRPAngle(), INCL_DEBUG, internalReflection, particlePIn, particlePOut, refractionIndexRatio, sinIncidentAngle, and sinRefractionAngle.

Referenced by getTransmissionProbability().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

FinalState * G4INCL::SurfaceAvatar::postInteraction ( FinalState fs)
virtual

Implements G4INCL::IAvatar.

Definition at line 171 of file G4INCLSurfaceAvatar.cc.

References G4INCL::Book::decrementCascading(), G4INCL::Store::getBook(), G4INCL::FinalState::getOutgoingParticles(), G4INCL::Cluster::getParticles(), G4INCL::Nucleus::getStore(), G4INCL::Particle::isCluster(), G4INCL::Particle::isTargetSpectator(), G4INCL::Particle::rpCorrelate(), theNucleus, and theParticle.

+ Here is the call graph for this function:

void G4INCL::SurfaceAvatar::preInteraction ( )
virtual

Implements G4INCL::IAvatar.

Definition at line 169 of file G4INCLSurfaceAvatar.cc.

Member Data Documentation

G4double G4INCL::SurfaceAvatar::cosIncidentAngle
private
G4double G4INCL::SurfaceAvatar::cosRefractionAngle
private
G4bool G4INCL::SurfaceAvatar::internalReflection
private
G4double G4INCL::SurfaceAvatar::particleMass
private

Definition at line 100 of file G4INCLSurfaceAvatar.hh.

Referenced by getTransmissionProbability().

G4double G4INCL::SurfaceAvatar::particlePIn
private
G4double G4INCL::SurfaceAvatar::particlePOut
private
G4double G4INCL::SurfaceAvatar::particleTOut
private

Definition at line 97 of file G4INCLSurfaceAvatar.hh.

Referenced by getTransmissionProbability().

G4double G4INCL::SurfaceAvatar::refractionIndexRatio
private
G4double G4INCL::SurfaceAvatar::sinIncidentAngle
private

Definition at line 101 of file G4INCLSurfaceAvatar.hh.

Referenced by initializeRefractionVariables().

G4double G4INCL::SurfaceAvatar::sinRefractionAngle
private

Definition at line 103 of file G4INCLSurfaceAvatar.hh.

Referenced by initializeRefractionVariables().

G4INCL::Nucleus* G4INCL::SurfaceAvatar::theNucleus
private

Definition at line 93 of file G4INCLSurfaceAvatar.hh.

Referenced by getChannel(), getTransmissionProbability(), and postInteraction().

G4INCL::Particle* G4INCL::SurfaceAvatar::theParticle
private

Definition at line 92 of file G4INCLSurfaceAvatar.hh.

Referenced by dump(), getChannel(), getParticles(), and postInteraction().

G4double G4INCL::SurfaceAvatar::TMinusV
private

Definition at line 98 of file G4INCLSurfaceAvatar.hh.

Referenced by getChannel(), and getTransmissionProbability().

G4double G4INCL::SurfaceAvatar::TMinusV2
private

Definition at line 99 of file G4INCLSurfaceAvatar.hh.

Referenced by getTransmissionProbability().


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