Geant4 11.1.1
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)
 
virtual void Build (G4HadronElasticProcess *aP)=0
 
virtual void Build (G4NeutronFissionProcess *aP)=0
 
virtual void Build (G4NeutronCaptureProcess *aP)=0
 
virtual void Build (G4HadronInelasticProcess *aP)=0
 
- Public Member Functions inherited from G4VNeutronBuilder
 G4VNeutronBuilder ()=default
 
virtual ~G4VNeutronBuilder ()
 
virtual void Build (G4HadronElasticProcess *aP)=0
 
virtual void Build (G4NeutronFissionProcess *aP)=0
 
virtual void Build (G4NeutronCaptureProcess *aP)=0
 
virtual void Build (G4HadronInelasticProcess *aP)=0
 
virtual void Build ()
 
- Public Member Functions inherited from G4PhysicsBuilderInterface
 G4PhysicsBuilderInterface ()=default
 
virtual ~G4PhysicsBuilderInterface ()
 
virtual void Build ()
 
virtual void RegisterMe (G4PhysicsBuilderInterface *)
 
virtual void SetMinEnergy (G4double)
 
virtual void SetMaxEnergy (G4double)
 

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/8]

virtual void G4INCLXXNeutronBuilder::Build ( G4HadronElasticProcess )
inlinefinaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 60 of file G4INCLXXNeutronBuilder.hh.

60{}

◆ Build() [2/8]

virtual void G4VNeutronBuilder::Build ( G4HadronElasticProcess aP)
virtual

Implements G4VNeutronBuilder.

◆ Build() [3/8]

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() [4/8]

virtual void G4VNeutronBuilder::Build ( G4HadronInelasticProcess aP)
virtual

Implements G4VNeutronBuilder.

◆ Build() [5/8]

virtual void G4INCLXXNeutronBuilder::Build ( G4NeutronCaptureProcess )
inlinefinaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 62 of file G4INCLXXNeutronBuilder.hh.

62{}

◆ Build() [6/8]

virtual void G4VNeutronBuilder::Build ( G4NeutronCaptureProcess aP)
virtual

Implements G4VNeutronBuilder.

◆ Build() [7/8]

virtual void G4INCLXXNeutronBuilder::Build ( G4NeutronFissionProcess )
inlinefinaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 61 of file G4INCLXXNeutronBuilder.hh.

61{}

◆ Build() [8/8]

virtual void G4VNeutronBuilder::Build ( G4NeutronFissionProcess aP)
virtual

Implements G4VNeutronBuilder.

◆ 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: