Geant4-11
|
#include <G4Molecule.hh>
Static Public Member Functions | |
static G4Molecule * | GetMolecule (const G4Track *) |
Protected Attributes | |
G4Track * | fpTrack |
G4String * | pType = nullptr |
Private Member Functions | |
G4Molecule () | |
Private Attributes | |
int | fParentID_A |
int | fParentID_B |
G4ITBox * | fpITBox |
G4KDNode_Base * | fpKDNode |
const G4MolecularConfiguration * | fpMolecularConfiguration |
G4IT * | fpNextIT |
G4IT * | fpPreviousIT |
G4TrackingInformation * | fpTrackingInformation |
G4TrackListNode * | fpTrackNode |
Class Description The dynamic molecule holds all the data that change for a molecule It has a pointer to G4MoleculeDefinition object, which holds all the "ground level" information.
Definition at line 98 of file G4Molecule.hh.
G4Molecule::G4Molecule | ( | const G4Molecule & | right | ) |
Definition at line 104 of file G4Molecule.cc.
References fpMolecularConfiguration.
G4Molecule::G4Molecule | ( | G4MoleculeDefinition * | pMoleculeDefinition | ) |
To build a molecule at ground state according to a given G4MoleculeDefinition that can be obtained from G4GenericMoleculeManager
Build a molecule at ground state according to a given G4MoleculeDefinition that can be obtained from G4GenericMoleculeManager
Definition at line 180 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetOrCreateMolecularConfiguration().
G4Molecule::G4Molecule | ( | G4MoleculeDefinition * | pMoleculeDefinition, |
int | charge | ||
) |
Definition at line 189 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetOrCreateMolecularConfiguration().
G4Molecule::G4Molecule | ( | G4MoleculeDefinition * | pMoleculeDefinition, |
G4int | OrbitalToFree, | ||
G4int | OrbitalToFill | ||
) |
To build a molecule at a specific excitation/ionisation state according to a ground state that can be obtained from G4GenericMoleculeManager
Build a molecule at a specific excitation/ionisation state according to a ground state that can be obtained from G4GenericMoleculeManager. Put 0 in the second option if this is a ionisation.
Definition at line 200 of file G4Molecule.cc.
References G4ElectronOccupancy::AddElectron(), FatalErrorInArgument, fpMolecularConfiguration, G4Exception(), G4MoleculeDefinition::GetGroundStateElectronOccupancy(), G4MolecularConfiguration::GetOrCreateMolecularConfiguration(), and G4ElectronOccupancy::RemoveElectron().
G4Molecule::G4Molecule | ( | G4MoleculeDefinition * | pMoleculeDefinition, |
G4int | level, | ||
G4bool | excitation | ||
) |
Specific builder for water molecules to be used in Geant4-DNA, the last option Excitation is true if the molecule is excited, is false is the molecule is ionized.
Definition at line 245 of file G4Molecule.cc.
References G4ElectronOccupancy::AddElectron(), FatalErrorInArgument, fpMolecularConfiguration, G4Exception(), G4MoleculeDefinition::GetGroundStateElectronOccupancy(), G4MolecularConfiguration::GetOrCreateMolecularConfiguration(), and G4ElectronOccupancy::RemoveElectron().
G4Molecule::G4Molecule | ( | const G4MolecularConfiguration * | pMolecularConfiguration | ) |
Definition at line 285 of file G4Molecule.cc.
References fpMolecularConfiguration.
|
virtual |
Definition at line 160 of file G4Molecule.cc.
References fpMolecularConfiguration, G4IT::fpTrack, G4Track::GetGlobalTime(), G4Track::GetPosition(), and G4VMoleculeCounter::Instance().
|
private |
Default molecule builder
Definition at line 151 of file G4Molecule.cc.
References fpMolecularConfiguration.
Add n electrons to a given orbit. Note : You can add as many electrons to a given orbit, the result may be unrealist.
Definition at line 315 of file G4Molecule.cc.
References G4MolecularConfiguration::AddElectron(), and fpMolecularConfiguration.
Referenced by G4DNAChemistryManager::CreateWaterMolecule().
G4Track * G4Molecule::BuildTrack | ( | G4double | globalTime, |
const G4ThreeVector & | Position | ||
) |
Definition at line 373 of file G4Molecule.cc.
References FatalErrorInArgument, fpMolecularConfiguration, G4IT::fpTrack, G4Exception(), G4UniformRand, G4MolecularConfiguration::GetDefinition(), GetKineticEnergy(), G4Track::GetPosition(), G4VMoleculeCounter::Instance(), G4VMoleculeCounter::InUse(), pi, and G4Track::SetUserInformation().
Referenced by G4MoleculeGun::BuildAndPushTrack(), G4DNAChemistryManager::CreateWaterMolecule(), G4DNAIRT::Sampling(), and G4DNAIRT_geometries::Sampling().
void G4Molecule::ChangeConfigurationToLabel | ( | const G4String & | label | ) |
Definition at line 546 of file G4Molecule.cc.
References fpMolecularConfiguration, G4MolecularConfiguration::GetDefinition(), and G4MolecularConfiguration::GetMolecularConfiguration().
Referenced by G4DNAElectronHoleRecombination::MakeReaction().
Referenced by G4IT::operator<().
Referenced by G4IT::operator==().
void G4Molecule::ExciteMolecule | ( | G4int | excitationLevel | ) |
Method used in Geant4-DNA to excite water molecules
Definition at line 301 of file G4Molecule.cc.
References G4MolecularConfiguration::ExciteMolecule(), and fpMolecularConfiguration.
Referenced by G4DNAChemistryManager::CreateWaterMolecule().
G4int G4Molecule::GetAtomsNumber | ( | ) | const |
Returns the nomber of atoms compouning the molecule
Definition at line 352 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetAtomsNumber().
G4int G4Molecule::GetCharge | ( | ) | const |
Returns the charge of molecule.
Definition at line 488 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetCharge().
G4double G4Molecule::GetDecayTime | ( | ) | const |
Returns the decay time of the molecule.
Definition at line 474 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDecayTime().
Referenced by G4DNAMolecularDissociation::GetMeanLifeTime().
const G4MoleculeDefinition * G4Molecule::GetDefinition | ( | ) | const |
Get molecule definition. This G4MoleculeDefinition has the ground electronic state of the molecule.
Definition at line 509 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDefinition().
G4double G4Molecule::GetDiffusionCoefficient | ( | ) | const |
Returns the diffusion coefficient D.
Definition at line 516 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDiffusionCoefficient().
Referenced by G4DNABrownianTransportation::AlongStepGetPhysicalInteractionLength(), G4DNABrownianTransportation::ComputeStep(), G4DNAIRT::Sampling(), G4DNAIRT_geometries::Sampling(), G4DNAIRT_geometries::SpaceBinning(), G4DNAIRTMoleculeEncounterStepper::Utils::Utils(), and G4DNAMoleculeEncounterStepper::Utils::Utils().
G4double G4Molecule::GetDiffusionCoefficient | ( | const G4Material * | pMaterial, |
double | temperature | ||
) | const |
Returns the diffusion coefficient D.
Definition at line 523 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDiffusionCoefficient().
G4double G4Molecule::GetDiffusionVelocity | ( | ) | const |
Definition at line 428 of file G4Molecule.cc.
References source.hepunit::c_squared, fpMolecularConfiguration, G4MolecularConfiguration::GetGlobalTemperature(), G4MolecularConfiguration::GetMass(), and source.hepunit::k_Boltzmann.
Referenced by GetKineticEnergy().
const vector< const G4MolecularDissociationChannel * > * G4Molecule::GetDissociationChannels | ( | ) | const |
Definition at line 453 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDissociationChannels().
const G4ElectronOccupancy * G4Molecule::GetElectronOccupancy | ( | ) | const |
Returns the object ElectronOccupancy describing the electronic configuration of the molecule.
Definition at line 502 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetElectronOccupancy().
G4int G4Molecule::GetFakeParticleID | ( | ) | const |
Definition at line 460 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetFakeParticleID().
const G4String & G4Molecule::GetFormatedName | ( | ) | const |
Returns the formated name of the molecule
Definition at line 345 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetFormatedName().
|
inlineinherited |
Definition at line 183 of file G4IT.hh.
References G4IT::fpITBox.
|
inlinevirtual |
Reimplemented from G4IT.
Definition at line 130 of file G4Molecule.hh.
References GetMoleculeID().
|
pure virtualinherited |
Referenced by G4IT::operator<(), G4IT::operator==(), and G4AllITFinder::Push().
G4double G4Molecule::GetKineticEnergy | ( | ) | const |
Definition at line 416 of file G4Molecule.cc.
References source.hepunit::c_squared, fpMolecularConfiguration, GetDiffusionVelocity(), and G4MolecularConfiguration::GetMass().
Referenced by BuildTrack().
const G4String & G4Molecule::GetLabel | ( | ) | const |
Returns the label of the molecule configuration
Definition at line 539 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetLabel().
|
inlineinherited |
G4double G4Molecule::GetMass | ( | ) | const |
Returns the total mass of the molecule.
Definition at line 495 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetMass().
const G4MolecularConfiguration * G4Molecule::GetMolecularConfiguration | ( | ) | const |
Definition at line 532 of file G4Molecule.cc.
References fpMolecularConfiguration.
Referenced by G4DNAIndependentReactionTimeStepper::GetReactionType(), G4DNAPartiallyDiffusionControlled::GetTimeToEncounter(), G4DNATotallyDiffusionControlled::GetTimeToEncounter(), G4DNAIRT::MakeReaction(), G4DNAIRT_geometries::MakeReaction(), G4DNAMakeReaction::MakeReaction(), G4DNAMolecularReaction::MakeReaction(), G4DNAScavengerProcess::PostStepDoIt(), G4DNASecondOrderReaction::PostStepGetPhysicalInteractionLength(), G4DNAScavengerProcess::PostStepGetPhysicalInteractionLength(), G4DNAIRT::Sampling(), G4DNAIRT_geometries::Sampling(), G4DNAMolecularReaction::TestReactibility(), G4DNAMakeReaction::UpdatePositionForReaction(), and G4DNAEventScheduler::Voxelizing().
|
static |
Definition at line 90 of file G4Molecule.cc.
References GetIT().
Referenced by G4DNAIRT::Sampling(), and G4DNAIRT_geometries::Sampling().
G4int G4Molecule::GetMoleculeID | ( | ) | const |
Definition at line 467 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetMoleculeID().
Referenced by G4DNAElectronHoleRecombination::FindReactant(), GetITSubType(), and operator int().
|
virtual |
Returns the name of the molecule
Implements G4IT.
Definition at line 338 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetName().
Referenced by G4DNAIRTMoleculeEncounterStepper::CalculateStep(), G4DNAMoleculeEncounterStepper::CalculateStep(), G4DNAIndependentReactionTimeStepper::CalculateStep(), G4DNAIRTMoleculeEncounterStepper::CheckAndRecordResults(), G4DNAMoleculeEncounterStepper::CheckAndRecordResults(), G4DNAIndependentReactionTimeStepper::CheckAndRecordResults(), G4DNABrownianTransportation::ComputeStep(), G4DNABrownianTransportation::Diffusion(), G4DNAIndependentReactionTimeStepper::GetTimeToEncounter(), G4DNASecondOrderReaction::PostStepDoIt(), G4DNAScavengerProcess::PostStepDoIt(), G4DNABrownianTransportation::PostStepDoIt(), G4DNAIndirectHit::Print(), and G4DNAMakeReaction::UpdatePositionForReaction().
G4double G4Molecule::GetNbElectrons | ( | ) | const |
Returns the number of electron.
Definition at line 359 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetNbElectrons().
|
inlineinherited |
Definition at line 208 of file G4IT.hh.
References G4IT::fpNextIT.
Referenced by G4ITBox::Extract(), G4ITBox::TransferTo(), and G4ITBox::~G4ITBox().
|
inlineinherited |
|
inlineinherited |
Definition at line 255 of file G4IT.hh.
References G4IT::fpKDNode.
|
inlineinherited |
Definition at line 234 of file G4IT.hh.
References G4IT::fParentID_A, and G4IT::fParentID_B.
|
inherited |
Definition at line 214 of file G4IT.cc.
References G4IT::fpTrack, G4Track::GetPosition(), and G4IT::GetTrack().
|
inherited |
Definition at line 228 of file G4IT.cc.
References G4IT::fpTrackingInformation, and G4TrackingInformation::GetPreStepGlobalTime().
|
inherited |
Definition at line 233 of file G4IT.cc.
References G4IT::fpTrackingInformation, and G4TrackingInformation::GetPreStepLocalTime().
|
inherited |
Definition at line 238 of file G4IT.cc.
References G4IT::fpTrackingInformation, and G4TrackingInformation::GetPreStepPosition().
|
inlineinherited |
Definition at line 203 of file G4IT.hh.
References G4IT::fpPreviousIT.
Referenced by G4ITBox::Extract(), and G4ITBox::FindIT().
|
inlineinherited |
Definition at line 240 of file G4IT.hh.
References G4IT::fpPreviousIT.
|
inlineinherited |
Definition at line 218 of file G4IT.hh.
References G4IT::fpTrack.
Referenced by G4DNAIRTMoleculeEncounterStepper::CheckAndRecordResults(), G4DNAMoleculeEncounterStepper::CheckAndRecordResults(), G4ITStepProcessor::FindTransportationStep(), and G4IT::GetPosition().
|
inlineinherited |
|
inlineinherited |
Definition at line 143 of file G4IT.hh.
References G4IT::fpTrackingInformation.
Referenced by G4ITTransportation::AlongStepGetPhysicalInteractionLength(), G4DNABrownianTransportation::ComputeGeomLimit(), G4ITStepProcessor::DoDefinePhysicalStepLength(), G4ITStepProcessor::DoStepping(), G4ITStepProcessor::InitDefineStep(), G4ITLeadingTracks::PrepareLeadingTracks(), G4ITLeadingTracks::Reset(), G4ITStepProcessor::SetInitialStep(), G4ITStepProcessor::SetTrack(), G4ITStepProcessor::SetupMembers(), and G4VITProcess::StartTracking().
|
inherited |
Definition at line 75 of file G4VUserTrackInformation.cc.
References G4VUserTrackInformation::pType.
Referenced by G4ScintillationTrackInformation::IsScintillationTrackInformation().
G4double G4Molecule::GetVanDerVaalsRadius | ( | ) | const |
Definition at line 481 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetVanDerVaalsRadius().
void G4Molecule::IonizeMolecule | ( | G4int | ionizationLevel | ) |
Method used in Geant4-DNA to ionize water molecules
Definition at line 308 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::IonizeMolecule().
Referenced by G4DNAChemistryManager::CreateWaterMolecule().
G4Molecule::ITDef | ( | G4Molecule | ) | const |
Move one electron from an orbit to another.
Definition at line 330 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::MoveOneElectron().
|
inline |
Definition at line 313 of file G4Molecule.hh.
References aMoleculeAllocator().
|
inline |
Definition at line 125 of file G4Molecule.hh.
References GetMoleculeID().
|
inline |
Definition at line 302 of file G4Molecule.hh.
References aMoleculeAllocator().
G4bool G4Molecule::operator!= | ( | const G4Molecule & | right | ) | const |
Definition at line 133 of file G4Molecule.cc.
Definition at line 180 of file G4IT.cc.
References G4IT::diff(), and G4IT::GetITType().
G4bool G4Molecule::operator< | ( | const G4Molecule & | right | ) | const |
The two methods below are the most called of the simulation : compare molecules in the MoleculeStackManager or in the InteractionTable
Definition at line 144 of file G4Molecule.cc.
References fpMolecularConfiguration.
G4Molecule & G4Molecule::operator= | ( | const G4Molecule & | right | ) |
Definition at line 113 of file G4Molecule.cc.
References fpMolecularConfiguration.
Definition at line 193 of file G4IT.cc.
References G4IT::equal(), and G4IT::GetITType().
Referenced by G4IT::operator!=().
G4bool G4Molecule::operator== | ( | const G4Molecule & | right | ) | const |
Definition at line 122 of file G4Molecule.cc.
References fpMolecularConfiguration.
|
inherited |
Definition at line 207 of file G4IT.cc.
References G4IT::fpTrack, and G4Track::GetPosition().
|
inlinevirtualinherited |
void G4Molecule::PrintState | ( | ) | const |
Show the electronic state of the molecule.
Definition at line 366 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::PrintState().
|
inherited |
Definition at line 220 of file G4IT.cc.
References G4IT::fpTrack, G4IT::fpTrackingInformation, and G4TrackingInformation::RecordCurrentPositionNTime().
Referenced by G4IT::G4IT().
Remove n electrons to a given orbit.
Definition at line 322 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::RemoveElectron().
void G4Molecule::SetDecayTime | ( | G4double | ) |
Set the decay time of the molecule.
void G4Molecule::SetDiffusionCoefficient | ( | G4double | ) |
Sets the diffusion coefficient D of the molecule used in diffusion processes to calculate the mean square jump distance between two changes of direction. In three dimension : <x^2> = 6 D t where t is the mean jump time between two changes of direction.
void G4Molecule::SetElectronOccupancy | ( | const G4ElectronOccupancy * | pElectronOcc | ) |
Will set up the correct molecularConfiguration given an electron configuration
Definition at line 292 of file G4Molecule.cc.
References fpMolecularConfiguration, G4MolecularConfiguration::GetDefinition(), and G4MolecularConfiguration::GetOrCreateMolecularConfiguration().
|
inlineinherited |
Definition at line 188 of file G4IT.hh.
References G4IT::fpITBox.
Referenced by G4ITBox::Extract(), and G4ITBox::Push().
void G4Molecule::SetLabel | ( | const G4String & | label | ) |
|
inlineinherited |
Definition at line 152 of file G4IT.hh.
References G4IT::fpTrackNode.
void G4Molecule::SetMass | ( | G4double | ) |
Set the total mass of the molecule.
|
inlineinherited |
Definition at line 198 of file G4IT.hh.
References G4IT::fpNextIT.
Referenced by G4ITBox::Extract(), and G4ITBox::Push().
|
inlineinherited |
|
inlineinherited |
Definition at line 228 of file G4IT.hh.
References G4IT::fParentID_A, and G4IT::fParentID_B.
Referenced by G4ITModelProcessor::ComputeTrackReaction().
|
inlineinherited |
Definition at line 193 of file G4IT.hh.
References G4IT::fpPreviousIT.
Referenced by G4ITBox::Extract(), and G4ITBox::Push().
|
inlineinherited |
void G4Molecule::SetVanDerVaalsRadius | ( | G4double | ) |
The Van Der Valls Radius of the molecule
|
inherited |
Definition at line 139 of file G4IT.cc.
References G4ITBox::Extract(), G4IT::fpITBox, G4IT::fpKDNode, G4IT::fpTrackNode, and InactiveNode().
Referenced by G4IT::~G4IT().
|
privateinherited |
Definition at line 175 of file G4IT.hh.
Referenced by G4IT::G4IT(), G4IT::GetParentID(), G4IT::operator=(), and G4IT::SetParentID().
|
privateinherited |
Definition at line 176 of file G4IT.hh.
Referenced by G4IT::G4IT(), G4IT::GetParentID(), G4IT::operator=(), and G4IT::SetParentID().
|
privateinherited |
Definition at line 170 of file G4IT.hh.
Referenced by G4IT::G4IT(), G4IT::GetITBox(), G4IT::operator=(), G4IT::SetITBox(), and G4IT::TakeOutBox().
|
privateinherited |
Definition at line 173 of file G4IT.hh.
Referenced by G4IT::G4IT(), G4IT::GetNode(), G4IT::operator=(), G4IT::SetNode(), and G4IT::TakeOutBox().
|
private |
Definition at line 292 of file G4Molecule.hh.
Referenced by AddElectron(), BuildTrack(), ChangeConfigurationToLabel(), ExciteMolecule(), G4Molecule(), GetAtomsNumber(), GetCharge(), GetDecayTime(), GetDefinition(), GetDiffusionCoefficient(), GetDiffusionVelocity(), GetDissociationChannels(), GetElectronOccupancy(), GetFakeParticleID(), GetFormatedName(), GetKineticEnergy(), GetLabel(), GetMass(), GetMolecularConfiguration(), GetMoleculeID(), GetName(), GetNbElectrons(), GetVanDerVaalsRadius(), IonizeMolecule(), MoveOneElectron(), operator<(), operator=(), operator==(), PrintState(), RemoveElectron(), SetElectronOccupancy(), and ~G4Molecule().
|
privateinherited |
Definition at line 172 of file G4IT.hh.
Referenced by G4IT::GetNext(), G4IT::operator=(), and G4IT::SetNext().
|
privateinherited |
Definition at line 171 of file G4IT.hh.
Referenced by G4IT::GetPrevious(), G4IT::operator=(), and G4IT::SetPrevious().
|
protectedinherited |
Definition at line 167 of file G4IT.hh.
Referenced by BuildTrack(), G4IT::G4IT(), G4IT::GetPosition(), G4IT::GetTrack(), G4IT::operator=(), G4IT::operator[](), G4IT::RecordCurrentPositionNTime(), G4IT::SetTrack(), and ~G4Molecule().
|
privateinherited |
Definition at line 178 of file G4IT.hh.
Referenced by G4IT::GetPreStepGlobalTime(), G4IT::GetPreStepLocalTime(), G4IT::GetPreStepPosition(), G4IT::GetTrackingInfo(), G4IT::operator=(), G4IT::RecordCurrentPositionNTime(), and G4IT::~G4IT().
|
privateinherited |
Definition at line 179 of file G4IT.hh.
Referenced by G4IT::G4IT(), G4IT::GetListNode(), G4IT::operator=(), G4IT::SetListNode(), and G4IT::TakeOutBox().
|
protectedinherited |
Definition at line 75 of file G4VUserTrackInformation.hh.
Referenced by G4VUserTrackInformation::G4VUserTrackInformation(), G4VUserTrackInformation::GetType(), G4VUserTrackInformation::operator=(), and G4VUserTrackInformation::~G4VUserTrackInformation().