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

#include <G4NeutronPHPBuilder.hh>

Inheritance diagram for G4NeutronPHPBuilder:

Public Member Functions

 G4NeutronPHPBuilder ()
 ~G4NeutronPHPBuilder () override=default
virtual void Build (G4HadronElasticProcess *aP) final override
virtual void Build (G4NeutronFissionProcess *aP) final override
virtual void Build (G4NeutronCaptureProcess *aP) final override
virtual void Build (G4HadronInelasticProcess *aP) final override
virtual void SetMinEnergy (G4double aM) final override
void SetMinInelasticEnergy (G4double aM)
virtual void SetMaxEnergy (G4double aM) final override
void SetMaxInelasticEnergy (G4double aM)
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 46 of file G4NeutronPHPBuilder.hh.

Constructor & Destructor Documentation

◆ G4NeutronPHPBuilder()

G4NeutronPHPBuilder::G4NeutronPHPBuilder ( )

Definition at line 32 of file G4NeutronPHPBuilder.cc.

34{
35 theHPElastic = 0;
36 theHPElasticData = 0;
37
38 theHPFission = 0;
39 theHPFissionData = 0;
40
41 theHPCapture = 0;
42 theHPCaptureData = 0;
43
44 theHPInelastic = 0;
45 theHPInelasticData = 0;
46
47 theMin = 0;
48 theIMin = theMin;
49 theMax = 20*MeV;
50 theIMax = theMax;
51
52}

◆ ~G4NeutronPHPBuilder()

G4NeutronPHPBuilder::~G4NeutronPHPBuilder ( )
overridedefault

Member Function Documentation

◆ Build() [1/4]

void G4NeutronPHPBuilder::Build ( G4HadronElasticProcess * aP)
finaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 54 of file G4NeutronPHPBuilder.cc.

56{
57 if(theHPElastic==0) theHPElastic = new G4ParticleHPElastic;
58 theHPElastic->SetMinEnergy(theMin);
59 theHPElastic->SetMaxEnergy(theMax);
60 if(theHPElasticData == 0) theHPElasticData = new G4ParticleHPElasticData;
61 aP->AddDataSet(theHPElasticData);
62 aP->RegisterMe(theHPElastic);
63}
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
void RegisterMe(G4HadronicInteraction *a)

◆ Build() [2/4]

void G4NeutronPHPBuilder::Build ( G4HadronInelasticProcess * aP)
finaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 87 of file G4NeutronPHPBuilder.cc.

89{
90 if(theHPInelastic==0) theHPInelastic = new G4ParticleHPInelastic(G4Neutron::Neutron(),"NeutronHPInelastic");
91 theHPInelastic->SetMinEnergy(theIMin);
92 theHPInelastic->SetMaxEnergy(theIMax);
93 if(theHPInelasticData==0) theHPInelasticData = new G4ParticleHPInelasticData(G4Neutron::Neutron());
94 aP->AddDataSet(theHPInelasticData);
95 aP->RegisterMe(theHPInelastic);
96}
static G4Neutron * Neutron()
Definition G4Neutron.cc:101

◆ Build() [3/4]

void G4NeutronPHPBuilder::Build ( G4NeutronCaptureProcess * aP)
finaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 76 of file G4NeutronPHPBuilder.cc.

78{
79 if (theHPCapture==nullptr) theHPCapture = new G4NeutronRadCaptureHP;
80 theHPCapture->SetMinEnergy(theMin);
81 theHPCapture->SetMaxEnergy(theMax);
82 if(theHPCaptureData==0) theHPCaptureData = new G4NeutronHPCaptureData;
83 aP->AddDataSet(theHPCaptureData);
84 aP->RegisterMe(theHPCapture);
85}

◆ Build() [4/4]

void G4NeutronPHPBuilder::Build ( G4NeutronFissionProcess * aP)
finaloverridevirtual

Implements G4VNeutronBuilder.

Definition at line 65 of file G4NeutronPHPBuilder.cc.

67{
68 if(theHPFission == 0) theHPFission = new G4ParticleHPFission;
69 theHPFission->SetMinEnergy(theMin);
70 theHPFission->SetMaxEnergy(theMax);
71 if(theHPFissionData==0) theHPFissionData=new G4ParticleHPFissionData;
72 aP->AddDataSet(theHPFissionData);
73 aP->RegisterMe(theHPFission);
74}

◆ SetMaxEnergy()

virtual void G4NeutronPHPBuilder::SetMaxEnergy ( G4double aM)
inlinefinaloverridevirtual

Reimplemented from G4PhysicsBuilderInterface.

Definition at line 67 of file G4NeutronPHPBuilder.hh.

68 {
69 theIMax = aM;
70 theMax=aM;
71 }

◆ SetMaxInelasticEnergy()

void G4NeutronPHPBuilder::SetMaxInelasticEnergy ( G4double aM)
inline

Definition at line 72 of file G4NeutronPHPBuilder.hh.

73 {
74 theIMax = aM;
75 }

◆ SetMinEnergy()

virtual void G4NeutronPHPBuilder::SetMinEnergy ( G4double aM)
inlinefinaloverridevirtual

Reimplemented from G4PhysicsBuilderInterface.

Definition at line 58 of file G4NeutronPHPBuilder.hh.

59 {
60 theMin=aM;
61 theIMin = theMin;
62 }

◆ SetMinInelasticEnergy()

void G4NeutronPHPBuilder::SetMinInelasticEnergy ( G4double aM)
inline

Definition at line 63 of file G4NeutronPHPBuilder.hh.

64 {
65 theIMin=aM;
66 }

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