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

#include <G4FTFPNeutronBuilder.hh>

Inheritance diagram for G4FTFPNeutronBuilder:

Public Member Functions

 G4FTFPNeutronBuilder (G4bool quasiElastic=false)
virtual ~G4FTFPNeutronBuilder ()
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
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

Definition at line 57 of file G4FTFPNeutronBuilder.hh.

Constructor & Destructor Documentation

◆ G4FTFPNeutronBuilder()

G4FTFPNeutronBuilder::G4FTFPNeutronBuilder ( G4bool quasiElastic = false)

Definition at line 50 of file G4FTFPNeutronBuilder.cc.

52{
55 theModel = new G4TheoFSGenerator("FTFP");
56
57 G4FTFModel* theStringModel = new G4FTFModel();
58 theStringModel->SetFragmentationModel(new G4ExcitedStringDecay());
59
60 G4GeneratorPrecompoundInterface* theCascade =
61 new G4GeneratorPrecompoundInterface();
62
63 theModel->SetHighEnergyGenerator(theStringModel);
64 if (quasiElastic) {
65 theModel->SetQuasiElasticChannel(new G4QuasiElasticChannel());
66 }
67
68 theModel->SetTransport(theCascade);
69 theModel->SetMinEnergy(theMin);
70 theModel->SetMaxEnergy(theMax);
71}
static G4HadronicParameters * Instance()
G4double GetMinEnergyTransitionFTF_Cascade() const
void SetFragmentationModel(G4VStringFragmentation *aModel)

◆ ~G4FTFPNeutronBuilder()

G4FTFPNeutronBuilder::~G4FTFPNeutronBuilder ( )
virtual

Definition at line 73 of file G4FTFPNeutronBuilder.cc.

75{
76}

Member Function Documentation

◆ Build() [1/4]

virtual void G4FTFPNeutronBuilder::Build ( G4HadronElasticProcess * )
inlinefinaloverridevirtual

◆ Build() [2/4]

void G4FTFPNeutronBuilder::Build ( G4HadronInelasticProcess * aP)
finaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 78 of file G4FTFPNeutronBuilder.cc.

80{
81 theModel->SetMinEnergy(theMin);
82 theModel->SetMaxEnergy(theMax);
83 aP->RegisterMe(theModel);
84 aP->AddDataSet(new G4NeutronInelasticXS());
85}
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
void RegisterMe(G4HadronicInteraction *a)

◆ Build() [3/4]

virtual void G4FTFPNeutronBuilder::Build ( G4NeutronCaptureProcess * )
inlinefinaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 66 of file G4FTFPNeutronBuilder.hh.

66{}

◆ Build() [4/4]

virtual void G4FTFPNeutronBuilder::Build ( G4NeutronFissionProcess * )
inlinefinaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 65 of file G4FTFPNeutronBuilder.hh.

65{}

◆ SetMaxEnergy()

virtual void G4FTFPNeutronBuilder::SetMaxEnergy ( G4double aM)
inlinefinaloverridevirtual

◆ SetMinEnergy()

virtual void G4FTFPNeutronBuilder::SetMinEnergy ( G4double aM)
inlinefinaloverridevirtual

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