64{
65
66
67
69 auto neutron_processes = new G4NeutronBuilder( true );
71 neutron_processes->Build();
72 }
73
74
78
79 auto* neutronLENDBuilder = new G4NeutronLENDBuilder(evaluation);
80 neutronLENDBuilder->Build(neutron_inelastic);
81 neutronLENDBuilder->Build(neutron_capture);
82 neutronLENDBuilder->Build(neutron_fission);
83
84
85
86
87
88
90
91 if( gamma_inelastic == nullptr){
94 if (gproc != nullptr) {
95 G4HadronicProcess* gnuc = gproc->GetGammaNuclear();
96 if (gnuc != nullptr )
97 gamma_inelastic = (G4HadronInelasticProcess*)gnuc;
98 }
99 }
100
101 if( gamma_inelastic == nullptr){
102
103 gamma_inelastic =
new G4HadronInelasticProcess(
"photonNuclear",
G4Gamma::Gamma() );
106
107
109 G4VCrossSectionDataSet* xs = nullptr;
110 xs = xsreg->GetCrossSectionDataSet("GammaNuclearXS");
111 if(nullptr == xs) xs = new G4GammaNuclearXS();
112 gamma_inelastic->AddDataSet(xs);
113 }
114
115
116
117 auto* theGammaReactionLowE =
new G4LENDCombinedModel(
G4Gamma::Gamma() );
119 theGammaReactionLowE->DumpLENDTargetInfo(true);
120 gamma_inelastic->RegisterMe(theGammaReactionLowE);
121
122 G4LENDCombinedCrossSection* theGammaCrossSectionLowE =
new G4LENDCombinedCrossSection(
G4Gamma::Gamma() );
123 gamma_inelastic->AddDataSet(theGammaCrossSectionLowE);
124}
const G4double maxLEND_Energy
static G4CrossSectionDataSetRegistry * Instance()
static G4LossTableManager * Instance()
G4VEmProcess * GetGammaGeneralProcess()
static G4HadronicProcess * FindInelasticProcess(const G4ParticleDefinition *)
static G4HadronicProcess * FindCaptureProcess(const G4ParticleDefinition *)
static G4HadronicProcess * FindFissionProcess(const G4ParticleDefinition *)
G4bool RegisterProcess(G4VProcess *process, G4ParticleDefinition *particle)
static G4PhysicsListHelper * GetPhysicsListHelper()
void AddBuilder(G4PhysicsBuilderInterface *bld)