Import Geant4 10.7.0.beta source tree

This commit is contained in:
Gabriele Cosmo
2020-06-26 10:23:25 +02:00
parent c02c370437
commit 67ba86d073
1871 changed files with 174422 additions and 131884 deletions
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/// \file GammaNuclearPhysics.cc
/// \file hadronic/Hadr03/src/GammaNuclearPhysics.cc
/// \brief Implementation of the GammaNuclearPhysics class
//
//
@@ -38,6 +38,7 @@
// Processes
#include "G4PhotoNuclearProcess.hh"
#include "G4LowEGammaNuclearModel.hh"
#include "G4CascadeInterface.hh"
#include "G4SystemOfUnits.hh"
@@ -57,14 +58,26 @@ GammaNuclearPhysics::~GammaNuclearPhysics()
void GammaNuclearPhysics::ConstructProcess()
{
G4ProcessManager* pManager = G4Gamma::Gamma()->GetProcessManager();
//
G4PhotoNuclearProcess* process = new G4PhotoNuclearProcess();
//
G4CascadeInterface* bertini = new G4CascadeInterface();
bertini->SetMaxEnergy(10*GeV);
process->RegisterMe(bertini);
//
// to not register a model, set Emax=0; eg. Emax1 = 0.
const G4double Emax1 = 200*MeV, Emax2 = 10*GeV;
if (Emax1 > 0.) { // model 1
G4LowEGammaNuclearModel* model1 = new G4LowEGammaNuclearModel();
model1->SetMaxEnergy(Emax1);
process->RegisterMe(model1);
}
if (Emax2 > 0.) { // model 2
G4CascadeInterface* model2 = new G4CascadeInterface();
G4double Emin2 = std::max(Emax1-1*MeV, 0.);
model2->SetMinEnergy(Emin2);
model2->SetMaxEnergy(Emax2);
process->RegisterMe(model2);
}
G4ProcessManager* pManager = G4Gamma::Gamma()->GetProcessManager();
pManager->AddDiscreteProcess(process);
}