164 CreateConfiguration(
"OHm",
169 OHm->
SetMass(17.0079 * g / Avogadro * c_squared);
200 CreateConfiguration(
"HO2m",
205 HO2m->
SetMass(33.00396 * g / Avogadro * c_squared);
212 CreateConfiguration(
"Om",
217 Om->
SetMass(15.99829 * g / Avogadro * c_squared);
224 CreateConfiguration(
"O2m",
229 O2m->
SetMass(31.99602 * g / Avogadro * c_squared);
236 CreateConfiguration(
"O3m",
241 O3m->
SetMass(47.99375 * g / Avogadro * c_squared);
245 CreateConfiguration(
"H2O(B)",
252 CreateConfiguration(
"H3Op(B)",
259 CreateConfiguration(
"OHm(B)",
320 G4DNAWaterDissociationDisplacer::A1B1_DissociationDecay);
348 G4DNAWaterDissociationDisplacer::B1A1_DissociationDecay);
384 "Excitation3rdLayer_AutoIonisation_Channel");
386 "Excitation3rdLayer_Relaxation_Channel");
413 "Excitation2ndLayer_AutoIonisation_Channel");
415 "Excitation2ndLayer_Relaxation_Channel");
440 "Excitation1stLayer_AutoIonisation_Channel");
442 "Excitation1stLayer_Relaxation_Channel");
476 G4DNAWaterDissociationDisplacer::Ionisation_DissociationDecay);
520 DissociativeAttachment);
542 B1A1_DissociationDecay);
549 A1B1_DissociationDecay);
557 B1A1_DissociationDecay2);
563 assert(pH2Ovib !=
nullptr);
625 0.503e10 * (1e-3 * m3 / (mole * s)), H, H);
631 2.50e10 * (1e-3 * m3 / (mole * s)), e_aq, H);
638 2.02e10 * (1e-3 * m3 / (mole * s)), H, O);
644 2.00e10 * (1e-3 * m3 / (mole * s)), H, Om);
650 2.02e10 * (1e-3 * m3 / (mole * s)), OH, O);
656 2.02e10 * (1e-3 * m3 / (mole * s)), HO2, O);
663 2.20e10 * (1e-3 * m3 / (mole * s)), O, O);
671 0.636e10 * (1e-3 * m3 / (mole * s)), e_aq, e_aq);
679 1.13e11 * (1e-3 * m3 / (mole * s)), H3Op, OHm);
684 9.0e10 * (1e-3 * m3 / (mole * s)), H3Op, O3m);
694 1.55e10 * (1e-3 * m3 / (mole * s)), OH, H);
695 if(fTimeStepModel !=
fSBS)
703 3.50e7 * (1e-3 * m3 / (mole * s)), H, H2O2);
705 if(fTimeStepModel !=
fSBS)
713 2.51e7 * (1e-3 * m3 / (mole * s)), H, OHm);
715 if(fTimeStepModel !=
fSBS)
723 2.10e10 * (1e-3 * m3 / (mole * s)), H, O2);
725 if(fTimeStepModel !=
fSBS)
733 1.00e10 * (1e-3 * m3 / (mole * s)), H, HO2);
735 if(fTimeStepModel !=
fSBS)
743 1.00e10 * (1e-3 * m3 / (mole * s)), H, O2m);
745 if(fTimeStepModel !=
fSBS)
753 0.55e10 * (1e-3 * m3 / (mole * s)), OH, OH);
755 if(fTimeStepModel !=
fSBS)
764 2.88e7 * (1e-3 * m3 / (mole * s)), OH, H2O2);
766 if(fTimeStepModel !=
fSBS)
774 3.28e7 * (1e-3 * m3 / (mole * s)), OH, H2);
776 if(fTimeStepModel !=
fSBS)
784 2.95e10 * (1e-3 * m3 / (mole * s)), e_aq, OH);
786 if(fTimeStepModel !=
fSBS)
794 6.30e9 * (1e-3 * m3 / (mole * s)), OH, OHm);
796 if(fTimeStepModel !=
fSBS)
804 7.90e9 * (1e-3 * m3 / (mole * s)), OH, HO2);
806 if(fTimeStepModel !=
fSBS)
814 1.07e10 * (1e-3 * m3 / (mole * s)), OH, O2m);
817 if(fTimeStepModel !=
fSBS)
825 8.32e9 * (1e-3 * m3 / (mole * s)), OH, HO2m);
828 if(fTimeStepModel !=
fSBS)
836 1.00e9 * (1e-3 * m3 / (mole * s)), OH, Om);
838 if(fTimeStepModel !=
fSBS)
846 8.50e9 * (1e-3 * m3 / (mole * s)), OH, O3m);
849 if(fTimeStepModel !=
fSBS)
857 1.10e10 * (1e-3 * m3 / (mole * s)), e_aq, H2O2);
860 if(fTimeStepModel !=
fSBS)
868 4.71e8 * (1e-3 * m3 / (mole * s)), H2O2, OHm);
870 if(fTimeStepModel !=
fSBS)
878 1.60e9 * (1e-3 * m3 / (mole * s)), H2O2, O);
881 if(fTimeStepModel !=
fSBS)
889 5.55e8 * (1e-3 * m3 / (mole * s)), H2O2, Om);
892 if(fTimeStepModel !=
fSBS)
900 4.77e3 * (1e-3 * m3 / (mole * s)), H2, O);
903 if(fTimeStepModel !=
fSBS)
911 1.21e8 * (1e-3 * m3 / (mole * s)), H2, Om);
914 if(fTimeStepModel !=
fSBS)
922 1.74e10 * (1e-3 * m3 / (mole * s)), e_aq, O2);
924 if(fTimeStepModel !=
fSBS)
932 1.29e10 * (1e-3 * m3 / (mole * s)), e_aq, HO2);
934 if(fTimeStepModel !=
fSBS)
942 6.30e9 * (1e-3 * m3 / (mole * s)), OHm, HO2);
944 if(fTimeStepModel !=
fSBS)
952 4.20e8 * (1e-3 * m3 / (mole * s)), OHm, O);
954 if(fTimeStepModel !=
fSBS)
962 4.00e9 * (1e-3 * m3 / (mole * s)), O2, O);
964 if(fTimeStepModel !=
fSBS)
972 3.70e9 * (1e-3 * m3 / (mole * s)), O2, Om);
974 if(fTimeStepModel !=
fSBS)
982 9.80e5 * (1e-3 * m3 / (mole * s)), HO2, HO2);
985 if(fTimeStepModel !=
fSBS)
993 9.70e7 * (1e-3 * m3 / (mole * s)), HO2, O2m);
996 if(fTimeStepModel !=
fSBS)
1004 5.30e9 * (1e-3 * m3 / (mole * s)), HO2m, O);
1007 if(fTimeStepModel !=
fSBS)
1017 2.11e10 * (1e-3 * m3 / (mole * s)), e_aq, H3Op);
1019 if(fTimeStepModel !=
fSBS)
1027 1.29e10 * (1e-3 * m3 / (mole * s)), e_aq, O2m);
1031 if(fTimeStepModel !=
fSBS)
1039 3.51e9 * (1e-3 * m3 / (mole * s)), e_aq, HO2m);
1042 if(fTimeStepModel !=
fSBS)
1050 2.31e10 * (1e-3 * m3 / (mole * s)), e_aq, Om);
1053 if(fTimeStepModel !=
fSBS)
1061 4.78e10 * (1e-3 * m3 / (mole * s)), H3Op, O2m);
1063 if(fTimeStepModel !=
fSBS)
1071 5.00e10 * (1e-3 * m3 / (mole * s)), H3Op, HO2m);
1073 if(fTimeStepModel !=
fSBS)
1081 4.78e10 * (1e-3 * m3 / (mole * s)), H3Op, Om);
1083 if(fTimeStepModel !=
fSBS)
1091 6.00e8 * (1e-3 * m3 / (mole * s)), O2m, Om);
1095 if(fTimeStepModel !=
fSBS)
1103 3.50e8 * (1e-3 * m3 / (mole * s)), HO2m, Om);
1106 if(fTimeStepModel !=
fSBS)
1114 1.00e8 * (1e-3 * m3 / (mole * s)), Om, Om);
1118 if(fTimeStepModel !=
fSBS)
1126 7.00e8 * (1e-3 * m3 / (mole * s)), Om, O3m);
1129 if(fTimeStepModel !=
fSBS)
1140 2.66e3 / s, O3m,None);
1150 7.15e5 / s, HO2,H2OB);
1157 5.94e0 / s, H,H2OB);
1164 1.58e1 / s, e_aq,H2OB);
1171 1.50e-1 / s, O2m,H2OB);
1178 1.36e6 / s, HO2m,H2OB);
1185 1.00e3 / s, O,H2OB);
1192 1.36e6 / s, Om,H2OB);
1199 2.09e3 / s, e_aq,H3OpB);
1205 4.73e3 / s, O2m,H3OpB);
1211 1.12e4 / s, OHm,H3OpB);
1218 1.12e4 / s, H3Op,OHmB);
1223 4.95e3 / s, HO2m,H3OpB);
1229 4.73e3 / s, Om,H3OpB);
1235 8.91e3 / s, O3m,H3OpB);
1242 2.48e0 / s, H,OHmB);
1248 6.24e2 / s, OH,OHmB);
1254 4.66e1 / s, H2O2,OHmB);
1260 6.24e2 / s, HO2,OHmB);
1266 4.16e1 / s, O,OHmB);
1286 FindProcess(
"e-_G4DNAVibExcitation",
"e-");
1294 if(sancheExcitationMod)
1305 FindProcess(
"e-_G4DNAElectronSolvation",
"e-");
1328 if(fTimeStepModel !=
fIRT)
1338 auto* dissociationProcess =
1340 dissociationProcess->SetDisplacer(
1342 dissociationProcess->SetVerboseLevel(3);
1361 if(fTimeStepModel ==
fIRT)
1364 }
else if(fTimeStepModel ==
fSBS)
1367 }
else if(fTimeStepModel ==
fIRT_syn)
#define G4_DECLARE_PHYSCONSTR_FACTORY(physics_constructor)
static G4DNAChemistryManager * Instance()
void SetChemistryList(G4VUserChemistryList &)
void SetReactionType(G4int type)
void AddProduct(Reactant *molecule)
void SetReaction(G4double observedReactionRate, Reactant *reactive1, Reactant *reactive2)
void ExtendLowEnergyLimit(G4double)
G4double ExcitationEnergy(G4int level)
G4int AddElectron(G4int orbit, G4int number=1)
G4int RemoveElectron(G4int orbit, G4int number=1)
static G4Electron_aq * Definition()
static G4Electron * Definition()
virtual void ConstructTimeStepModel(G4DNAMolecularReactionTable *reactionTable)
virtual void ConstructReactionTable(G4DNAMolecularReactionTable *reactionTable)
virtual ~G4EmDNAChemistry_option3()
virtual void ConstructProcess()
virtual void ConstructMolecule()
G4EmDNAChemistry_option3()
virtual void ConstructDissociationChannels()
static G4FakeMolecule * Definition()
static G4H2O2 * Definition()
static G4H2O * Definition()
static G4H3O * Definition()
static G4HO2 * Definition()
static G4Hydrogen * Definition()
void SetDiffusionCoefficient(G4double)
void SetVanDerVaalsRadius(G4double)
void SetDisplacementType(DisplacementType)
void AddProduct(Product *, G4double displacement=0.)
void SetProbability(G4double)
const G4ElectronOccupancy * GetGroundStateElectronOccupancy() const
void AddDecayChannel(const G4MolecularConfiguration *molConf, const G4MolecularDissociationChannel *channel)
G4MolecularConfiguration * NewConfiguration(const G4String &excitedStateLabel)
G4MolecularConfiguration * NewConfigurationWithElectronOccupancy(const G4String &excitedStateLabel, const G4ElectronOccupancy &, double decayTime=0.)
G4MolecularConfiguration * GetConfiguration(const G4String &, bool mustExist=true)
G4MolecularConfiguration * CreateConfiguration(const G4String &userIdentifier, const G4MoleculeDefinition *molDef, const G4String &configurationLabel, const G4ElectronOccupancy &eOcc)
G4MoleculeDefinitionIterator GetDefintionIterator()
static G4MoleculeTable * Instance()
static G4O2 * Definition()
static G4O3 * Definition()
static G4OH * Definition()
static G4Oxygen * Definition()
G4ProcessManager * GetProcessManager() const
G4bool RegisterProcess(G4VProcess *process, G4ParticleDefinition *particle)
static G4PhysicsListHelper * GetPhysicsListHelper()
G4int AddRestProcess(G4VProcess *aProcess, G4int ord=ordDefault)
static G4ProcessTable * GetProcessTable()
G4VEmModel * EmModel(size_t index=0) const
void RegisterTimeStepModel(G4VITStepModel *timeStepModel, G4double startingTime=0)