36 #include "PhysicsList.hh"
85 #include "G4ElectronCapture.hh"
102 fCutForGamma = defaultCutValue;
103 fCutForElectron = defaultCutValue;
104 fCutForPositron = defaultCutValue;
105 fCutForProton = defaultCutValue;
155 genericIonsManager->
GetIon(
"alpha++");
156 genericIonsManager->
GetIon(
"alpha+");
157 genericIonsManager->
GetIon(
"helium");
158 genericIonsManager->
GetIon(
"hydrogen");
191 if (particleName ==
"e-") {
236 }
else if ( particleName ==
"proton" ) {
272 (
"proton_G4DNAChargeDecrease");
276 }
else if ( particleName ==
"hydrogen" ) {
285 (
"hydrogen_G4DNAIonisation");
296 (
"hydrogen_G4DNAChargeIncrease");
300 }
else if (particleName ==
"GenericIon") {
315 }
else if ( particleName ==
"alpha" ) {
345 (
"alpha_G4DNAChargeDecrease");
349 }
else if ( particleName ==
"alpha+" ) {
379 (
"alpha+_G4DNAChargeDecrease");
385 (
"alpha+_G4DNAChargeIncrease");
389 }
else if ( particleName ==
"helium" ) {
408 (
"helium_G4DNAChargeIncrease");
429 G4double massFactor = 1.0079/4.0026;
457 mod,
"Target",7.4*
eV,1.*
MeV);
461 mod,
"Target",11.*
eV,1.*
MeV);
467 mod,
"Target",9.*
eV,1.*
MeV);
471 mod,
"Target",4.*
eV,13.*
eV);
475 mod,
"Target",2.*
eV,100.*
eV);
500 mod,
"Target",2*
MeV,100*
TeV,
507 mod,
"Target",100*
eV,1.*
MeV);
511 mod,
"Target",100*
eV,0.5*
MeV);
515 mod,
"Target",0.5*
MeV,10*
MeV);
519 mod,
"Target",10*
eV,0.5*
MeV);
523 mod,
"Target",0.5*
MeV,10*
MeV);
527 mod,
"Target",100*
eV,10*
MeV);
537 mod,
"Target",100.*
eV,1.*
MeV);
541 mod,
"Target",100*
eV,10*
MeV);
545 mod,
"Target",10*
eV,0.5*
MeV);
550 mod,
"Target",100*
eV,10*
MeV);
566 mod,
"Target",0.0,2*
MeV/massFactor,
572 mod,
"Target",2*
MeV/massFactor,100*
TeV,
579 mod,
"Target",100*
eV,1.*
MeV);
583 mod,
"Target",1*
keV,10*
MeV);
587 mod,
"Target",1*
keV,10*
MeV);
591 mod,
"Target",1*
keV,10*
MeV);
607 mod,
"Target",0.0,2*
MeV/massFactor,
613 mod,
"Target",2*
MeV/massFactor,100*
TeV,
620 mod,
"Target",100*
eV,1.*
MeV);
624 mod,
"Target",1*
keV,10*
MeV);
628 mod,
"Target",1*
keV,10*
MeV);
632 mod,
"Target",1*
keV,10*
MeV);
636 mod,
"Target",1*
keV,10*
MeV);
646 mod,
"Target",100*
eV,1.*
MeV);
650 mod,
"Target",1*
keV,10*
MeV);
654 mod,
"Target",1*
keV,10*
MeV);
658 mod,
"Target",1*
keV,10*
MeV);
673 G4cout <<
"PhysicsList::SetCuts:";
static constexpr double micrometer
void SetEmModel(G4VEmModel *, G4int index=0)
static constexpr double MeV
G4int AddDiscreteProcess(G4VProcess *aProcess, G4int ord=ordDefault)
static constexpr double keV
G4EmConfigurator em_config
const G4String & GetParticleName() const
G4DNABornExcitationModel1 G4DNABornExcitationModel
void SetExtraEmModel(const G4String &particleName, const G4String &processName, G4VEmModel *, const G4String ®ionName="", G4double emin=0.0, G4double emax=DBL_MAX, G4VEmFluctuationModel *fm=nullptr)
static constexpr double TeV
G4ParticleTable::G4PTblDicIterator * GetParticleIterator() const
static G4Proton * ProtonDefinition()
void SetActivationLowEnergyLimit(G4double)
void SetEmModel(G4VEmModel *, G4int index=0)
PhysicsList()
Implementation of the PhysicsList class.
static constexpr double eV
static G4Electron * ElectronDefinition()
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
G4bool RegisterProcess(G4VProcess *process, G4ParticleDefinition *particle)
static G4Gamma * GammaDefinition()
static G4GenericIon * GenericIonDefinition()
static G4PhysicsListHelper * GetPhysicsListHelper()
G4ParticleDefinition * GetIon(const G4String &name)
G4ProcessManager * GetProcessManager() const
#define G4DNABornIonisationModel
static G4DNAGenericIonsManager * Instance(void)
std::vector< G4InuclElementaryParticle >::iterator particleIterator
G4GLOB_DLL std::ostream G4cout
static G4LossTableManager * Instance()
void SetCutValue(G4double aCut, const G4String &pname)
void AddEmModel(G4int order, G4VEmModel *, const G4Region *region=nullptr)
static G4Positron * PositronDefinition()
void DumpCutValuesTable(G4int flag=1)
G4EmConfigurator * EmConfigurator()