Import Geant4 10.5.0 source tree
This commit is contained in:
@@ -23,7 +23,6 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: ActionInitialization.cc 68058 2013-03-13 14:47:43Z gcosmo $
|
||||
//
|
||||
/// \file ActionInitialization.cc
|
||||
/// \brief Implementation of the ActionInitialization class
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file DetectorConstruction.cc
|
||||
/// \brief Implementation of the DetectorConstruction class
|
||||
//
|
||||
// $Id: DetectorConstruction.cc 70755 2013-06-05 12:17:48Z ihrivnac $
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file DetectorMessenger.cc
|
||||
/// \brief Implementation of the DetectorMessenger class
|
||||
//
|
||||
// $Id: DetectorMessenger.cc 70755 2013-06-05 12:17:48Z ihrivnac $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -26,8 +26,6 @@
|
||||
/// \file ElectromagneticPhysics.cc
|
||||
/// \brief Implementation of the ElectromagneticPhysics class
|
||||
//
|
||||
// $Id: ElectromagneticPhysics.cc 71570 2013-06-18 10:14:44Z gcosmo $
|
||||
// GEANT4 tag $Name: not supported by cvs2svn $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file EventAction.cc
|
||||
/// \brief Implementation of the EventAction class
|
||||
//
|
||||
// $Id: EventAction.cc 76293 2013-11-08 13:11:23Z gcosmo $
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file GammaNuclearPhysics.cc
|
||||
/// \brief Implementation of the GammaNuclearPhysics class
|
||||
//
|
||||
// $Id: GammaNuclearPhysics.cc 66587 2012-12-21 11:06:44Z ihrivnac $
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file HadronElasticPhysicsHP.hh
|
||||
/// \brief Definition of the HadronElasticPhysicsHP class
|
||||
//
|
||||
// $Id:HadronElasticPhysicsHP.cc 71037 2013-06-10 09:20:54Z gcosmo $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file HistoManager.cc
|
||||
/// \brief Implementation of the HistoManager class
|
||||
//
|
||||
// $Id: HistoManager.cc 67909 2013-03-12 18:51:09Z vnivanch $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file NeutronHPMessenger.cc
|
||||
/// \brief Implementation of the NeutronHPMessenger class
|
||||
//
|
||||
// $Id: NeutronHPMessenger.cc 67268 2013-02-13 11:38:40Z ihrivnac $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file PhysicsList.cc
|
||||
/// \brief Implementation of the PhysicsList class
|
||||
//
|
||||
// $Id: PhysicsList.cc 70268 2013-05-28 14:17:50Z maire $
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -39,10 +38,13 @@
|
||||
|
||||
#include "G4HadronPhysicsFTFP_BERT_HP.hh"
|
||||
#include "G4HadronPhysicsQGSP_BIC_HP.hh"
|
||||
#include "G4HadronPhysicsQGSP_BIC_AllHP.hh"
|
||||
#include "G4HadronInelasticQBBC.hh"
|
||||
#include "G4HadronPhysicsINCLXX.hh"
|
||||
|
||||
#include "G4IonPhysics.hh"
|
||||
#include "G4IonElasticPhysics.hh"
|
||||
#include "G4IonPhysicsXS.hh"
|
||||
#include "G4IonPhysicsPHP.hh"
|
||||
#include "G4IonINCLXXPhysics.hh"
|
||||
|
||||
#include "G4StoppingPhysics.hh"
|
||||
@@ -53,48 +55,69 @@
|
||||
#include "G4DecayPhysics.hh"
|
||||
#include "G4RadioactiveDecayPhysics.hh"
|
||||
|
||||
#include "G4Neutron.hh"
|
||||
#include "G4ProcessManager.hh"
|
||||
#include "G4HadronicInteraction.hh"
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
PhysicsList::PhysicsList()
|
||||
:G4VModularPhysicsList()
|
||||
:G4VModularPhysicsList(),
|
||||
fHadronElastic(nullptr), fHadronInelastic(nullptr),
|
||||
fIonElastic(nullptr), fIonInelastic(nullptr),
|
||||
fGammaNuclear(nullptr), fElectromagnetic(nullptr),
|
||||
fDecay(nullptr), fRadioactiveDecay(nullptr)
|
||||
{
|
||||
G4int verb = 0;
|
||||
SetVerboseLevel(verb);
|
||||
|
||||
//add new units
|
||||
//
|
||||
new G4UnitDefinition( "millielectronVolt", "meV", "Energy", 1.e-3*eV);
|
||||
new G4UnitDefinition( "millielectronVolt", "meV", "Energy", 1.e-3*eV);
|
||||
new G4UnitDefinition( "mm2/g", "mm2/g", "Surface/Mass", mm2/g);
|
||||
new G4UnitDefinition( "um2/mg", "um2/mg","Surface/Mass", um*um/mg);
|
||||
|
||||
// Hadron Elastic scattering
|
||||
RegisterPhysics( new HadronElasticPhysicsHP(verb));
|
||||
fHadronElastic = new HadronElasticPhysicsHP(verb);
|
||||
RegisterPhysics(fHadronElastic);
|
||||
|
||||
// Hadron Inelastic Physics
|
||||
////RegisterPhysics( new G4HadronPhysicsFTFP_BERT_HP(verb));
|
||||
RegisterPhysics( new G4HadronPhysicsQGSP_BIC_HP(verb));
|
||||
////RegisterPhysics( new G4HadronInelasticQBBC(verb));
|
||||
////RegisterPhysics( new G4HadronPhysicsINCLXX(verb));
|
||||
////fHadronInelastic = new G4HadronPhysicsFTFP_BERT_HP(verb);
|
||||
fHadronInelastic = new G4HadronPhysicsQGSP_BIC_HP(verb);
|
||||
////fHadronInelastic = new G4HadronPhysicsQGSP_BIC_AllHP(verb);
|
||||
////fHadronInelastic = new G4HadronInelasticQBBC(verb);
|
||||
////fHadronInelastic = new G4HadronPhysicsINCLXX(verb);
|
||||
RegisterPhysics(fHadronInelastic);
|
||||
|
||||
// Ion Physics
|
||||
RegisterPhysics( new G4IonPhysics(verb));
|
||||
////RegisterPhysics( new G4IonINCLXXPhysics(verb));
|
||||
// Ion Elastic Physics
|
||||
fIonElastic = new G4IonElasticPhysics(verb);
|
||||
RegisterPhysics(fIonElastic);
|
||||
|
||||
// Ion Inelastic Physics
|
||||
fIonInelastic = new G4IonPhysicsXS(verb);
|
||||
////fIonInelastic = new G4IonPhysicsPHP(verb)
|
||||
////fIonInelastic = new G4IonINCLXXPhysics(verb);
|
||||
RegisterPhysics(fIonInelastic);
|
||||
|
||||
// stopping Particles
|
||||
///RegisterPhysics( new G4StoppingPhysics(verb));
|
||||
|
||||
// Gamma-Nuclear Physics
|
||||
RegisterPhysics( new GammaNuclearPhysics("gamma"));
|
||||
fGammaNuclear = new GammaNuclearPhysics("gamma");
|
||||
RegisterPhysics(fGammaNuclear);
|
||||
|
||||
// EM physics
|
||||
RegisterPhysics(new ElectromagneticPhysics());
|
||||
////RegisterPhysics(new G4EmStandardPhysics());
|
||||
fElectromagnetic = new ElectromagneticPhysics();
|
||||
////fElectromagnetic = new G4EmStandardPhysics();
|
||||
RegisterPhysics(fElectromagnetic);
|
||||
|
||||
// Decay
|
||||
RegisterPhysics(new G4DecayPhysics());
|
||||
fDecay = new G4DecayPhysics();
|
||||
RegisterPhysics(fDecay);
|
||||
|
||||
// Radioactive decay
|
||||
RegisterPhysics(new G4RadioactiveDecayPhysics());
|
||||
fRadioactiveDecay = new G4RadioactiveDecayPhysics();
|
||||
RegisterPhysics(fRadioactiveDecay);
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
@@ -104,12 +127,40 @@ PhysicsList::~PhysicsList()
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
void PhysicsList::ConstructProcess()
|
||||
{
|
||||
// Transportation first (mandatory)
|
||||
//
|
||||
AddTransportation();
|
||||
|
||||
// Physics constructors
|
||||
//
|
||||
fHadronElastic->ConstructProcess();
|
||||
fHadronInelastic->ConstructProcess();
|
||||
fIonElastic->ConstructProcess();
|
||||
fIonInelastic->ConstructProcess();
|
||||
fGammaNuclear->ConstructProcess();
|
||||
fElectromagnetic->ConstructProcess();
|
||||
fDecay->ConstructProcess();
|
||||
fRadioactiveDecay->ConstructProcess();
|
||||
|
||||
// example of GetHadronicModel (due to bug in QGSP_BIC_AllHP)
|
||||
//
|
||||
G4ProcessManager* pManager = G4Neutron::Neutron()->GetProcessManager();
|
||||
G4HadronicProcess* process
|
||||
= dynamic_cast<G4HadronicProcess*>(pManager->GetProcess("nCapture"));
|
||||
G4HadronicInteraction* model = process->GetHadronicModel("nRadCapture");
|
||||
if(model) model->SetMinEnergy(19.9*MeV);
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
void PhysicsList::SetCuts()
|
||||
{
|
||||
SetCutValue(0*mm, "proton");
|
||||
SetCutValue(10*km, "e-");
|
||||
SetCutValue(10*km, "e+");
|
||||
SetCutValue(10*km, "gamma");
|
||||
SetCutValue(10*km, "gamma");
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
/// \brief Implementation of the PrimaryGeneratorAction class
|
||||
//
|
||||
//
|
||||
// $Id: PrimaryGeneratorAction.cc 67268 2013-02-13 11:38:40Z ihrivnac $
|
||||
//
|
||||
//
|
||||
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file Run.cc
|
||||
/// \brief Implementation of the Run class
|
||||
//
|
||||
// $Id: Run.cc 71376 2013-06-14 07:44:50Z maire $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file RunAction.cc
|
||||
/// \brief Implementation of the RunAction class
|
||||
//
|
||||
// $Id: RunAction.cc 70756 2013-06-05 12:20:06Z ihrivnac $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file SteppingAction.cc
|
||||
/// \brief Implementation of the SteppingAction class
|
||||
//
|
||||
// $Id: SteppingAction.cc 71404 2013-06-14 16:56:38Z maire $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
/// \brief Implementation of the SteppingVerbose class
|
||||
//
|
||||
//
|
||||
// $Id: SteppingVerbose.cc 71654 2013-06-19 18:20:04Z maire $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
/// \file TrackingAction.cc
|
||||
/// \brief Implementation of the TrackingAction class
|
||||
//
|
||||
// $Id: TrackingAction.cc 69099 2013-04-18 12:25:19Z maire $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
Reference in New Issue
Block a user