29 #include "G4EmDNAPhysics_option7.hh" 70 #include "G4LivermorePhotoElectricModel.hh" 91 G4EmDNAPhysics_option7::G4EmDNAPhysics_option7(
G4int ver) :
99 G4EmDNAPhysics_option7::G4EmDNAPhysics_option7(
G4int ver,
const G4String&) :
107 G4EmDNAPhysics_option7::~G4EmDNAPhysics_option7()
113 void G4EmDNAPhysics_option7::ConstructParticle()
129 genericIonsManager->
GetIon(
"alpha++");
130 genericIonsManager->
GetIon(
"alpha+");
131 genericIonsManager->
GetIon(
"helium");
132 genericIonsManager->
GetIon(
"hydrogen");
138 void G4EmDNAPhysics_option7::ConstructProcess()
147 myParticleIterator->reset();
148 while( (*myParticleIterator)() )
153 if (particleName ==
"e-")
172 theDNAExcitationProcess->
SetEmModel(bornExc,1);
173 theDNAExcitationProcess->
AddEmModel(1, bornExc);
180 theDNAExcitationProcess->
AddEmModel(2, emExc);
190 bornIon->SetLowEnergyLimit(10*
keV);
191 bornIon->SetHighEnergyLimit(1.*
MeV);
192 bornIon->SetActivationLowEnergyLimit(10*
keV);
193 bornIon->SetActivationHighEnergyLimit(1.*
MeV);
195 theDNAIonisationProcess->
SetEmModel(bornIon,1);
196 theDNAIonisationProcess->
AddEmModel(1,bornIon);
206 theDNAIonisationProcess->
SetEmModel(emIonModel,2);
208 theDNAIonisationProcess->
AddEmModel(2,emIonModel);
218 }
else if ( particleName ==
"proton" ) {
224 }
else if ( particleName ==
"hydrogen" ) {
230 }
else if ( particleName ==
"alpha" ) {
236 }
else if ( particleName ==
"alpha+" ) {
243 }
else if ( particleName ==
"helium" ) {
250 else if ( particleName ==
"GenericIon" ) {
260 else if (particleName ==
"e+") {
274 }
else if (particleName ==
"gamma") {
279 G4LivermorePhotoElectricModel* theLivermorePhotoElectricModel =
280 new G4LivermorePhotoElectricModel();
281 theLivermorePhotoElectricModel->SetHighEnergyLimit(LivermoreHighEnergyLimit);
282 thePhotoElectricEffect->
AddEmModel(0, theLivermorePhotoElectricModel);
289 theComptonScattering->
AddEmModel(0, theLivermoreComptonModel);
296 theGammaConversion->
AddEmModel(0, theLivermoreGammaConversionModel);
void SetActivationHighEnergyLimit(G4double)
static G4GenericIon * GenericIonDefinition()
#define G4DNABornIonisationModel
static G4LossTableManager * Instance()
void SetStepFunction(G4double v1, G4double v2)
G4DNABornExcitationModel1 G4DNABornExcitationModel
void SetHighEnergyLimit(G4double)
void SetEmModel(G4VEmModel *, G4int index=1)
const G4String & GetParticleName() const
const G4String & GetPhysicsName() const
G4GLOB_DLL std::ostream G4cout
G4bool RegisterProcess(G4VProcess *process, G4ParticleDefinition *particle)
static G4Proton * Proton()
G4_DECLARE_PHYSCONSTR_FACTORY(G4EmDNAPhysics_option7)
static G4DNAGenericIonsManager * Instance(void)
void SetActivationLowEnergyLimit(G4double)
static G4Positron * Positron()
void AddEmModel(G4int, G4VEmModel *, const G4Region *region=0)
static G4PhysicsListHelper * GetPhysicsListHelper()
void SelectFasterComputation(G4bool input)
static G4Electron * Electron()
G4ParticleTable::G4PTblDicIterator * GetParticleIterator() const
void SetLowEnergyLimit(G4double)
void SetAtomDeexcitation(G4VAtomDeexcitation *)
void SetPhysicsType(G4int)
void SetStepLimitType(G4MscStepLimitType val)
G4ParticleDefinition * GetIon(const G4String &name)