File indexing completed on 2025-01-18 09:58:44
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026 #ifndef G4NeutronPHPBuilder_h
0027 #define G4NeutronPHPBuilder_h 1
0028
0029 #include "globals.hh"
0030
0031 #include "G4HadronElasticProcess.hh"
0032 #include "G4NeutronFissionProcess.hh"
0033 #include "G4NeutronCaptureProcess.hh"
0034 #include "G4HadronInelasticProcess.hh"
0035 #include "G4VNeutronBuilder.hh"
0036
0037 #include "G4ParticleHPElasticData.hh"
0038 #include "G4ParticleHPElastic.hh"
0039 #include "G4ParticleHPInelastic.hh"
0040 #include "G4ParticleHPInelasticData.hh"
0041 #include "G4ParticleHPFission.hh"
0042 #include "G4ParticleHPFissionData.hh"
0043 #include "G4ParticleHPCapture.hh"
0044 #include "G4ParticleHPCaptureData.hh"
0045
0046 class G4NeutronPHPBuilder : public G4VNeutronBuilder
0047 {
0048 public:
0049 G4NeutronPHPBuilder();
0050 virtual ~G4NeutronPHPBuilder() {}
0051
0052 public:
0053 virtual void Build(G4HadronElasticProcess * aP) final override;
0054 virtual void Build(G4NeutronFissionProcess * aP) final override;
0055 virtual void Build(G4NeutronCaptureProcess * aP) final override;
0056 virtual void Build(G4HadronInelasticProcess * aP) final override;
0057
0058 virtual void SetMinEnergy(G4double aM) final override
0059 {
0060 theMin=aM;
0061 theIMin = theMin;
0062 }
0063 void SetMinInelasticEnergy(G4double aM)
0064 {
0065 theIMin=aM;
0066 }
0067 virtual void SetMaxEnergy(G4double aM) final override
0068 {
0069 theIMax = aM;
0070 theMax=aM;
0071 }
0072 void SetMaxInelasticEnergy(G4double aM)
0073 {
0074 theIMax = aM;
0075 }
0076
0077 using G4VNeutronBuilder::Build;
0078
0079 private:
0080
0081 G4double theMin;
0082 G4double theIMin;
0083 G4double theMax;
0084 G4double theIMax;
0085
0086 G4ParticleHPElastic * theHPElastic;
0087 G4ParticleHPElasticData * theHPElasticData;
0088 G4ParticleHPInelastic * theHPInelastic;
0089 G4ParticleHPInelasticData * theHPInelasticData;
0090 G4ParticleHPFission * theHPFission;
0091 G4ParticleHPFissionData * theHPFissionData;
0092 G4ParticleHPCapture * theHPCapture;
0093 G4ParticleHPCaptureData * theHPCaptureData;
0094
0095 };
0096
0097 #endif
0098