G4NeutronTrackingCut Class Reference

#include <G4NeutronTrackingCut.hh>

Inheritance diagram for G4NeutronTrackingCut:

G4VPhysicsConstructor

Public Member Functions

 G4NeutronTrackingCut (G4int ver=0)
 G4NeutronTrackingCut (const G4String &name, G4int ver=0)
virtual ~G4NeutronTrackingCut ()
virtual void ConstructParticle ()
virtual void ConstructProcess ()
void SetTimeLimit (G4double)
void SetKineticEnergyLimit (G4double)

Detailed Description

Definition at line 46 of file G4NeutronTrackingCut.hh.


Constructor & Destructor Documentation

G4NeutronTrackingCut::G4NeutronTrackingCut ( G4int  ver = 0  ) 

Definition at line 53 of file G4NeutronTrackingCut.cc.

00054   :  G4VPhysicsConstructor("neutronTrackingCut")
00055    , verbose(ver), wasActivated(false)
00056 {
00057   timeLimit          = 10.*microsecond;
00058   kineticEnergyLimit = 0.0;
00059   pNeutronKiller     = 0;
00060 }

G4NeutronTrackingCut::G4NeutronTrackingCut ( const G4String name,
G4int  ver = 0 
)

Definition at line 62 of file G4NeutronTrackingCut.cc.

00063   :  G4VPhysicsConstructor(name), verbose(ver), wasActivated(false)
00064 {
00065   timeLimit          = 10.*microsecond;
00066   kineticEnergyLimit = 0.0;
00067   pNeutronKiller     = 0;
00068 }

G4NeutronTrackingCut::~G4NeutronTrackingCut (  )  [virtual]

Definition at line 70 of file G4NeutronTrackingCut.cc.

00071 {
00072   delete pNeutronKiller;
00073 }


Member Function Documentation

void G4NeutronTrackingCut::ConstructParticle (  )  [virtual]

Implements G4VPhysicsConstructor.

Definition at line 75 of file G4NeutronTrackingCut.cc.

References G4Neutron::NeutronDefinition().

00076 {
00077   G4Neutron::NeutronDefinition();
00078 }

void G4NeutronTrackingCut::ConstructProcess (  )  [virtual]

Implements G4VPhysicsConstructor.

Definition at line 80 of file G4NeutronTrackingCut.cc.

References G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetProcessManager(), G4Neutron::Neutron(), ns, G4NeutronKiller::SetKinEnergyLimit(), and G4NeutronKiller::SetTimeLimit().

00081 {
00082   if(wasActivated) return;
00083   wasActivated = true;
00084 
00085   // Add Process
00086 
00087   pNeutronKiller = new G4NeutronKiller();
00088   G4ParticleDefinition * particle = G4Neutron::Neutron();
00089   G4ProcessManager * pmanager = particle->GetProcessManager();
00090 
00091   if(verbose > 0) {
00092     G4cout << "### Adding tracking cuts for " << particle->GetParticleName() 
00093            << "  TimeCut(ns)= " << timeLimit/ns 
00094            << "  KinEnergyCut(MeV)= " <<  kineticEnergyLimit/MeV
00095            <<  G4endl;
00096   }
00097   pmanager -> AddDiscreteProcess(pNeutronKiller);
00098   pNeutronKiller->SetKinEnergyLimit(kineticEnergyLimit);
00099   pNeutronKiller->SetTimeLimit(timeLimit);
00100 }

void G4NeutronTrackingCut::SetKineticEnergyLimit ( G4double   )  [inline]

Definition at line 81 of file G4NeutronTrackingCut.hh.

00082 {
00083   kineticEnergyLimit = val;
00084 }

void G4NeutronTrackingCut::SetTimeLimit ( G4double   )  [inline]

Definition at line 76 of file G4NeutronTrackingCut.hh.

00077 {
00078   timeLimit = val;
00079 }


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