G4NeutronKiller Class Reference

#include <G4NeutronKiller.hh>

Inheritance diagram for G4NeutronKiller:

G4VDiscreteProcess G4VProcess

Public Member Functions

 G4NeutronKiller (const G4String &processName="nKiller", G4ProcessType aType=fGeneral)
virtual ~G4NeutronKiller ()
G4bool IsApplicable (const G4ParticleDefinition &)
void SetTimeLimit (G4double)
void SetKinEnergyLimit (G4double)
G4double PostStepGetPhysicalInteractionLength (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
G4VParticleChangePostStepDoIt (const G4Track &, const G4Step &)
G4double GetMeanFreePath (const G4Track &, G4double, G4ForceCondition *)

Detailed Description

Definition at line 69 of file G4NeutronKiller.hh.


Constructor & Destructor Documentation

G4NeutronKiller::G4NeutronKiller ( const G4String processName = "nKiller",
G4ProcessType  aType = fGeneral 
)

Definition at line 49 of file G4NeutronKiller.cc.

References DBL_MAX, NEUTRON_KILLER, and G4VProcess::SetProcessSubType().

00050  : G4VDiscreteProcess(processName, aType)
00051 {
00052   // set Process Sub Type
00053   SetProcessSubType(static_cast<int>(NEUTRON_KILLER));
00054 
00055   kinEnergyThreshold = 0.0;
00056   timeThreshold = DBL_MAX;
00057   pMess = new G4NeutronKillerMessenger(this);
00058 }

G4NeutronKiller::~G4NeutronKiller (  )  [virtual]

Definition at line 62 of file G4NeutronKiller.cc.

00063 { 
00064   delete pMess; 
00065 }


Member Function Documentation

G4double G4NeutronKiller::GetMeanFreePath ( const G4Track ,
G4double  ,
G4ForceCondition  
) [inline, virtual]

Implements G4VDiscreteProcess.

Definition at line 121 of file G4NeutronKiller.hh.

References DBL_MAX.

00123 {
00124   return DBL_MAX;
00125 }    

G4bool G4NeutronKiller::IsApplicable ( const G4ParticleDefinition  )  [virtual]

Reimplemented from G4VProcess.

Definition at line 69 of file G4NeutronKiller.cc.

References G4ParticleDefinition::GetParticleName().

00070 {
00071   return (particle.GetParticleName() == "neutron");
00072 }

G4VParticleChange * G4NeutronKiller::PostStepDoIt ( const G4Track ,
const G4Step  
) [inline, virtual]

Reimplemented from G4VDiscreteProcess.

Definition at line 129 of file G4NeutronKiller.hh.

References fStopAndKill, G4VParticleChange::Initialize(), G4VProcess::pParticleChange, and G4VParticleChange::ProposeTrackStatus().

00131 {
00132   pParticleChange->Initialize(aTrack);
00133   pParticleChange->ProposeTrackStatus(fStopAndKill);
00134   return pParticleChange;
00135 }

G4double G4NeutronKiller::PostStepGetPhysicalInteractionLength ( const G4Track track,
G4double  previousStepSize,
G4ForceCondition condition 
) [inline, virtual]

Reimplemented from G4VDiscreteProcess.

Definition at line 106 of file G4NeutronKiller.hh.

References DBL_MAX, G4Track::GetGlobalTime(), G4Track::GetKineticEnergy(), and NotForced.

00109 {
00110   // condition is set to "Not Forced"
00111   *condition = NotForced;
00112   
00113   G4double limit = DBL_MAX; 
00114   if(aTrack.GetGlobalTime() > timeThreshold || 
00115      aTrack.GetKineticEnergy() < kinEnergyThreshold) limit = 0.0;
00116   return limit;
00117 }

void G4NeutronKiller::SetKinEnergyLimit ( G4double   ) 

Definition at line 86 of file G4NeutronKiller.cc.

References G4cout, G4endl, and G4VProcess::verboseLevel.

Referenced by G4NeutronTrackingCut::ConstructProcess(), and G4NeutronKillerMessenger::SetNewValue().

00087 {
00088   kinEnergyThreshold = val;
00089   if(verboseLevel > 0) 
00090     G4cout << "### G4NeutronKiller: Tracking cut E(MeV) = " 
00091            << kinEnergyThreshold/MeV << G4endl;
00092 }

void G4NeutronKiller::SetTimeLimit ( G4double   ) 

Definition at line 76 of file G4NeutronKiller.cc.

References G4cout, G4endl, ns, and G4VProcess::verboseLevel.

Referenced by G4NeutronTrackingCut::ConstructProcess(), and G4NeutronKillerMessenger::SetNewValue().

00077 {
00078   timeThreshold = val;
00079   if(verboseLevel > 0) 
00080     G4cout << "### G4NeutronKiller: timeLimit(ns) = " 
00081            << timeThreshold/ns << G4endl;
00082 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:52:44 2013 for Geant4 by  doxygen 1.4.7