#include <G4H2O.hh>
Inheritance diagram for G4H2O:
Static Public Member Functions | |
static G4H2O * | Definition () |
Definition at line 50 of file G4H2O.hh.
G4H2O * G4H2O::Definition | ( | ) | [static] |
Definition at line 46 of file G4H2O.cc.
References G4ParticleTable::FindParticle(), G4MoleculeDefinition::G4MoleculeDefinition(), and G4ParticleTable::GetParticleTable().
Referenced by G4EmDNAPhysicsChemistry::ConstructDecayChannels(), G4EmDNAPhysicsChemistry::ConstructMolecules(), and G4DNAChemistryManager::CreateWaterMolecule().
00047 { 00048 if (theInstance !=0) return theInstance; 00049 const G4String name = "H_{2}O"; 00050 // search in particle table] 00051 G4ParticleTable* pTable = G4ParticleTable::GetParticleTable(); 00052 G4ParticleDefinition* anInstance = pTable->FindParticle(name); 00053 if (anInstance ==0) 00054 { 00055 // create molecule 00056 // 00057 // G4MoleculeDefinition(G4String name, 00058 // G4double mass, 00059 // G4int electronsNumber, 00060 // G4int electronicLevels, 00061 // G4double diffCoeff, 00062 // G4int atomsNumber = -1, 00063 // G4double radius = -1, 00064 // G4double lifetime = -1, 00065 // G4String aType = "", 00066 // G4MoleculeID ID = G4MoleculeID::Create() 00067 // ); 00068 00069 G4double mass = 18.0153*g/Avogadro * c_squared; 00070 anInstance = new G4MoleculeDefinition(name, mass, 10, 8, 00071 2e-5*(cm*cm/s), 00072 3, 2.75 * angstrom, picosecond); 00073 00074 ((G4MoleculeDefinition*) anInstance) ->SetLevelOccupation(0); 00075 ((G4MoleculeDefinition*) anInstance) ->SetLevelOccupation(1); 00076 ((G4MoleculeDefinition*) anInstance) ->SetLevelOccupation(2); 00077 ((G4MoleculeDefinition*) anInstance) ->SetLevelOccupation(3); 00078 ((G4MoleculeDefinition*) anInstance) ->SetLevelOccupation(4); 00079 00080 } 00081 theInstance = reinterpret_cast<G4H2O*>(anInstance); 00082 return theInstance; 00083 }