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

#include <G4INCLXXNeutronBuilder.hh>

+ Inheritance diagram for G4INCLXXNeutronBuilder:

Public Member Functions

 G4INCLXXNeutronBuilder ()
 
virtual ~G4INCLXXNeutronBuilder ()
 
virtual void Build (G4HadronElasticProcess *) final override
 
virtual void Build (G4NeutronFissionProcess *) final override
 
virtual void Build (G4NeutronCaptureProcess *) final override
 
virtual void Build (G4HadronInelasticProcess *aP) final override
 
virtual void SetMinEnergy (G4double aM) final override
 
virtual void SetMaxEnergy (G4double aM) final override
 
void SetMinPreCompoundEnergy (G4double aM)
 
void SetMaxPreCompoundEnergy (G4double aM)
 
void UsePreCompound (const G4bool w)
 
- Public Member Functions inherited from G4VNeutronBuilder
 G4VNeutronBuilder ()=default
 
virtual ~G4VNeutronBuilder ()
 
virtual void Build ()
 
- Public Member Functions inherited from G4PhysicsBuilderInterface
 G4PhysicsBuilderInterface ()=default
 
virtual ~G4PhysicsBuilderInterface ()=default
 
virtual void RegisterMe (G4PhysicsBuilderInterface *)
 

Detailed Description

Builder for neutron processes using the INCL++ intra-nuclear cascade model.

By default the INCL++ model is used for projectile energies 0 - 3 GeV.

The builder uses INCL++ cascade model with G4ExcitationHandler de-excitation. This is implemented in interface G4INCLXXInterface.

See also
G4INCLXXInterface
G4INCLXXProtonBuilder
G4INCLXXPiKBuilder

Definition at line 53 of file G4INCLXXNeutronBuilder.hh.

Constructor & Destructor Documentation

◆ G4INCLXXNeutronBuilder()

G4INCLXXNeutronBuilder::G4INCLXXNeutronBuilder ( )

Definition at line 38 of file G4INCLXXNeutronBuilder.cc.

40{
41 withPreCompound = true;
42 thePreCompoundMin = 0;
43 thePreCompoundMax = 2*MeV;
44 theMin = 1.0*MeV;
45 theMax = 3.0*GeV;
48 thePreCompoundModel = static_cast<G4VPreCompoundModel*>(p);
49 if(!thePreCompoundModel) { thePreCompoundModel = new G4PreCompoundModel(); }
50 theModel = new G4INCLXXInterface(thePreCompoundModel);
51}
G4HadronicInteraction * FindModel(const G4String &name)
static G4HadronicInteractionRegistry * Instance()
INCL++ intra-nuclear cascade.

◆ ~G4INCLXXNeutronBuilder()

virtual G4INCLXXNeutronBuilder::~G4INCLXXNeutronBuilder ( )
inlinevirtual

Definition at line 57 of file G4INCLXXNeutronBuilder.hh.

57{}

Member Function Documentation

◆ Build() [1/4]

virtual void G4INCLXXNeutronBuilder::Build ( G4HadronElasticProcess * )
inlinefinaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 60 of file G4INCLXXNeutronBuilder.hh.

60{}

◆ Build() [2/4]

void G4INCLXXNeutronBuilder::Build ( G4HadronInelasticProcess * aP)
finaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 53 of file G4INCLXXNeutronBuilder.cc.

55{
56 if(withPreCompound) {
57 thePreCompoundModel->SetMinEnergy(thePreCompoundMin);
58 thePreCompoundModel->SetMaxEnergy(thePreCompoundMax);
59 aP->RegisterMe(thePreCompoundModel);
60 }
61 theModel->SetMinEnergy(theMin);
62 theModel->SetMaxEnergy(theMax);
63 aP->RegisterMe(theModel);
65}
static G4CrossSectionDataSetRegistry * Instance()
void SetMinEnergy(G4double anEnergy)
void SetMaxEnergy(const G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
void RegisterMe(G4HadronicInteraction *a)
static const char * Default_Name()

◆ Build() [3/4]

virtual void G4INCLXXNeutronBuilder::Build ( G4NeutronCaptureProcess * )
inlinefinaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 62 of file G4INCLXXNeutronBuilder.hh.

62{}

◆ Build() [4/4]

virtual void G4INCLXXNeutronBuilder::Build ( G4NeutronFissionProcess * )
inlinefinaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 61 of file G4INCLXXNeutronBuilder.hh.

61{}

◆ SetMaxEnergy()

virtual void G4INCLXXNeutronBuilder::SetMaxEnergy ( G4double aM)
inlinefinaloverridevirtual

Reimplemented from G4PhysicsBuilderInterface.

Definition at line 66 of file G4INCLXXNeutronBuilder.hh.

66{theMax = aM;}

Referenced by G4HadronPhysicsINCLXX::Neutron().

◆ SetMaxPreCompoundEnergy()

void G4INCLXXNeutronBuilder::SetMaxPreCompoundEnergy ( G4double aM)
inline

Definition at line 69 of file G4INCLXXNeutronBuilder.hh.

69{thePreCompoundMax = aM;}

◆ SetMinEnergy()

virtual void G4INCLXXNeutronBuilder::SetMinEnergy ( G4double aM)
inlinefinaloverridevirtual

Reimplemented from G4PhysicsBuilderInterface.

Definition at line 65 of file G4INCLXXNeutronBuilder.hh.

65{theMin = aM;}

◆ SetMinPreCompoundEnergy()

void G4INCLXXNeutronBuilder::SetMinPreCompoundEnergy ( G4double aM)
inline

Definition at line 68 of file G4INCLXXNeutronBuilder.hh.

68{thePreCompoundMin = aM;}

◆ UsePreCompound()

void G4INCLXXNeutronBuilder::UsePreCompound ( const G4bool w)
inline

Definition at line 71 of file G4INCLXXNeutronBuilder.hh.

71{ withPreCompound = w;}

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