Geant4
10.03
|
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. More...
#include <G4Molecule.hh>
Public Member Functions | |
ITDef (G4Molecule) void Print() const | |
void * | operator new (size_t) |
void | operator delete (void *) |
G4Molecule (const G4Molecule &) | |
G4Molecule & | operator= (const G4Molecule &right) |
G4bool | operator== (const G4Molecule &right) const |
G4bool | operator!= (const G4Molecule &right) const |
G4bool | 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. More... | |
operator int () const | |
virtual G4ITType | GetITSubType () const |
G4Molecule (G4MoleculeDefinition *molecule) | |
To build a molecule at ground state according to a given G4MoleculeDefinition that can be obtained from G4GenericMoleculeManager. More... | |
G4Molecule (G4MoleculeDefinition *molDef, int charge) | |
G4Molecule (G4MoleculeDefinition *molecule, G4int, G4int) | |
To build a molecule at a specific excitation/ionisation state according to a ground state that can be obtained from G4GenericMoleculeManager. More... | |
G4Molecule (G4MoleculeDefinition *molecule, G4int, G4bool) | |
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. More... | |
G4Molecule (G4MolecularConfiguration *) | |
virtual | ~G4Molecule () |
const G4String & | GetName () const |
Returns the name of the molecule. More... | |
const G4String & | GetFormatedName () const |
Returns the formated name of the molecule. More... | |
G4int | GetAtomsNumber () const |
Returns the nomber of atoms compouning the molecule. More... | |
void | SetElectronOccupancy (const G4ElectronOccupancy *) |
Will set up the correct molecularConfiguration given an electron configuration. More... | |
void | ExciteMolecule (G4int) |
Method used in Geant4-DNA to excite water molecules. More... | |
void | IonizeMolecule (G4int) |
Method used in Geant4-DNA to ionize water molecules. More... | |
void | AddElectron (G4int orbit, G4int n=1) |
Add n electrons to a given orbit. More... | |
void | RemoveElectron (G4int, G4int number=1) |
Remove n electrons to a given orbit. More... | |
void | MoveOneElectron (G4int, G4int) |
Move one electron from an orbit to another. More... | |
G4double | GetNbElectrons () const |
Returns the number of electron. More... | |
void | PrintState () const |
Show the electronic state of the molecule. More... | |
G4Track * | BuildTrack (G4double globalTime, const G4ThreeVector &Position) |
G4double | GetKineticEnergy () const |
G4double | GetDiffusionVelocity () const |
const std::vector< const G4MolecularDissociationChannel * > * | GetDecayChannel () const |
G4int | GetFakeParticleID () const |
G4int | GetMoleculeID () const |
const G4MoleculeDefinition * | GetDefinition () const |
Get molecule definition. More... | |
void | 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. More... | |
G4double | GetDiffusionCoefficient () const |
Returns the diffusion coefficient D. More... | |
G4double | GetDiffusionCoefficient (const G4Material *, double temperature) const |
Returns the diffusion coefficient D. More... | |
void | SetDecayTime (G4double) |
Set the decay time of the molecule. More... | |
G4double | GetDecayTime () const |
Returns the decay time of the molecule. More... | |
void | SetVanDerVaalsRadius (G4double) |
The Van Der Valls Radius of the molecule. More... | |
G4double | GetVanDerVaalsRadius () const |
const G4ElectronOccupancy * | GetElectronOccupancy () const |
Returns the object ElectronOccupancy describing the electronic configuration of the molecule. More... | |
G4int | GetCharge () const |
Returns the charge of molecule. More... | |
void | SetMass (G4double) |
Set the total mass of the molecule. More... | |
G4double | GetMass () const |
Returns the total mass of the molecule. More... | |
const G4String & | GetLabel () const |
Returns the label of the molecule configuration. More... | |
void | SetLabel (const G4String &label) |
void | ChangeConfigurationToLabel (const G4String &label) |
G4MolecularConfiguration * | GetMolecularConfiguration () const |
Public Member Functions inherited from G4IT | |
G4IT () | |
G4IT (G4Track *) | |
virtual | ~G4IT () |
virtual void | Print () const |
virtual G4bool | diff (const G4IT &right) const =0 |
virtual G4bool | equal (const G4IT &right) const =0 |
G4bool | operator< (const G4IT &right) const |
G4bool | operator== (const G4IT &right) const |
G4bool | operator!= (const G4IT &right) const |
void | SetTrack (G4Track *) |
G4Track * | GetTrack () |
const G4Track * | GetTrack () const |
void | RecordCurrentPositionNTime () |
const G4ThreeVector & | GetPosition () const |
double | operator[] (int i) const |
const G4ThreeVector & | GetPreStepPosition () const |
G4double | GetPreStepLocalTime () const |
G4double | GetPreStepGlobalTime () const |
void | SetPrevious (G4IT *) |
void | SetNext (G4IT *) |
G4IT * | GetPrevious () |
G4IT * | GetNext () |
const G4IT * | GetPrevious () const |
const G4IT * | GetNext () const |
void | SetITBox (G4ITBox *) |
const G4ITBox * | GetITBox () const |
void | TakeOutBox () |
void | SetNode (G4KDNode_Base *) |
G4KDNode_Base * | GetNode () const |
void | SetParentID (int, int) |
void | GetParentID (int &, int &) |
G4TrackingInformation * | GetTrackingInfo () |
G4TrackListNode * | GetListNode () |
void | SetListNode (G4TrackListNode *node) |
virtual const G4ITType | GetITType () const =0 |
Public Member Functions inherited from G4VUserTrackInformation | |
G4VUserTrackInformation () | |
G4VUserTrackInformation (const G4String &infoType) | |
G4VUserTrackInformation (const G4VUserTrackInformation &) | |
G4VUserTrackInformation & | operator= (const G4VUserTrackInformation &) |
virtual | ~G4VUserTrackInformation () |
const G4String & | GetType () const |
Static Public Member Functions | |
static G4Molecule * | GetMolecule (const G4Track *) |
Private Member Functions | |
G4Molecule () | |
Default molecule builder. More... | |
Private Attributes | |
G4MolecularConfiguration * | fpMolecularConfiguration |
Additional Inherited Members | |
Public Types inherited from G4IT | |
enum | ELimited { kDoNot, kUnique, kSharedTransport, kSharedOther, kUndefLimited } |
Protected Member Functions inherited from G4IT | |
G4IT (const G4IT &) | |
G4IT & | operator= (const G4IT &) |
Protected Attributes inherited from G4IT | |
G4Track * | fpTrack |
Protected Attributes inherited from G4VUserTrackInformation | |
G4String * | pType |
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 94 of file G4Molecule.hh.
G4Molecule::G4Molecule | ( | const G4Molecule & | right | ) |
Definition at line 97 of file G4Molecule.cc.
References fpMolecularConfiguration.
G4Molecule::G4Molecule | ( | G4MoleculeDefinition * | molecule | ) |
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 174 of file G4Molecule.cc.
G4Molecule::G4Molecule | ( | G4MoleculeDefinition * | molDef, |
int | charge | ||
) |
Definition at line 185 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetOrCreateMolecularConfiguration().
G4Molecule::G4Molecule | ( | G4MoleculeDefinition * | moleculeDefinition, |
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 199 of file G4Molecule.cc.
G4Molecule::G4Molecule | ( | G4MoleculeDefinition * | molecule, |
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 246 of file G4Molecule.cc.
References FatalErrorInArgument, fpMolecularConfiguration, G4Exception(), G4MoleculeDefinition::GetGroundStateElectronOccupancy(), G4MolecularConfiguration::GetOrCreateMolecularConfiguration(), and G4ElectronOccupancy::RemoveElectron().
G4Molecule::G4Molecule | ( | G4MolecularConfiguration * | molConf | ) |
Definition at line 289 of file G4Molecule.cc.
References fpMolecularConfiguration.
|
virtual |
Definition at line 153 of file G4Molecule.cc.
References fpMolecularConfiguration, G4IT::fpTrack, G4Track::GetGlobalTime(), G4Track::GetPosition(), and G4VMoleculeCounter::Instance().
|
private |
Default molecule builder.
Definition at line 144 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 325 of file G4Molecule.cc.
References G4MolecularConfiguration::AddElectron(), and fpMolecularConfiguration.
G4Track * G4Molecule::BuildTrack | ( | G4double | globalTime, |
const G4ThreeVector & | Position | ||
) |
Definition at line 384 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::CreateSolvatedElectron(), G4DNAChemistryManager::CreateWaterMolecule(), G4DNAMolecularDissociation::DecayIt(), G4DNAMolecularReaction::MakeReaction(), G4DNAChemistryManager::PushMolecule(), and G4DNAChemistryManager::PushMoleculeAtParentTimeAndPlace().
void G4Molecule::ChangeConfigurationToLabel | ( | const G4String & | label | ) |
Definition at line 604 of file G4Molecule.cc.
References fpMolecularConfiguration, G4MolecularConfiguration::GetDefinition(), and G4MolecularConfiguration::GetMolecularConfiguration().
Referenced by G4DNAElectronHoleRecombination::MakeReaction().
void G4Molecule::ExciteMolecule | ( | G4int | ExcitedLevel | ) |
Method used in Geant4-DNA to excite water molecules.
Definition at line 307 of file G4Molecule.cc.
References G4MolecularConfiguration::ExciteMolecule(), and fpMolecularConfiguration.
G4int G4Molecule::GetAtomsNumber | ( | ) | const |
Returns the nomber of atoms compouning the molecule.
Definition at line 363 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetAtomsNumber().
G4int G4Molecule::GetCharge | ( | ) | const |
Returns the charge of molecule.
Definition at line 511 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetCharge().
const vector< const G4MolecularDissociationChannel * > * G4Molecule::GetDecayChannel | ( | ) | const |
Definition at line 462 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDecayChannel().
Referenced by G4DNAMolecularDissociation::DecayIt().
G4double G4Molecule::GetDecayTime | ( | ) | const |
Returns the decay time of the molecule.
Definition at line 490 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 539 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDefinition().
Referenced by G4DNAMolecularDissociation::DecayIt().
G4double G4Molecule::GetDiffusionCoefficient | ( | ) | const |
Returns the diffusion coefficient D.
Definition at line 553 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDiffusionCoefficient().
Referenced by G4DNABrownianTransportation::AlongStepGetPhysicalInteractionLength(), G4DNABrownianTransportation::ComputeStep(), G4DNASmoluchowskiReactionModel::FindReaction(), and G4DNAMoleculeEncounterStepper::Utils::Utils().
G4double G4Molecule::GetDiffusionCoefficient | ( | const G4Material * | mat, |
double | temperature | ||
) | const |
Returns the diffusion coefficient D.
Definition at line 560 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDiffusionCoefficient().
G4double G4Molecule::GetDiffusionVelocity | ( | ) | const |
Definition at line 437 of file G4Molecule.cc.
References fpMolecularConfiguration, G4MolecularConfiguration::GetGlobalTemperature(), and G4MolecularConfiguration::GetMass().
Referenced by GetKineticEnergy().
const G4ElectronOccupancy * G4Molecule::GetElectronOccupancy | ( | ) | const |
Returns the object ElectronOccupancy describing the electronic configuration of the molecule.
Definition at line 532 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetElectronOccupancy().
G4int G4Molecule::GetFakeParticleID | ( | ) | const |
Definition at line 469 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetFakeParticleID().
const G4String & G4Molecule::GetFormatedName | ( | ) | const |
Returns the formated name of the molecule.
Definition at line 356 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetFormatedName().
|
inlinevirtual |
Reimplemented from G4IT.
Definition at line 124 of file G4Molecule.hh.
References GetMoleculeID().
G4double G4Molecule::GetKineticEnergy | ( | ) | const |
Definition at line 425 of file G4Molecule.cc.
References fpMolecularConfiguration, GetDiffusionVelocity(), and G4MolecularConfiguration::GetMass().
Referenced by BuildTrack().
const G4String & G4Molecule::GetLabel | ( | ) | const |
Returns the label of the molecule configuration.
Definition at line 590 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetLabel().
G4double G4Molecule::GetMass | ( | ) | const |
Returns the total mass of the molecule.
Definition at line 525 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetMass().
G4MolecularConfiguration * G4Molecule::GetMolecularConfiguration | ( | ) | const |
Definition at line 569 of file G4Molecule.cc.
References fpMolecularConfiguration.
Referenced by G4MolecularDissociationChannel::AddProduct(), G4DNAMoleculeEncounterStepper::CalculateStep(), G4MolecularDissociationChannel::GetRMSRadialDisplacementOfProduct(), G4DNAMolecularReaction::MakeReaction(), G4DNASecondOrderReaction::PostStepGetPhysicalInteractionLength(), and G4DNAMolecularReaction::TestReactibility().
|
static |
Definition at line 83 of file G4Molecule.cc.
References GetIT().
G4int G4Molecule::GetMoleculeID | ( | ) | const |
Definition at line 476 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 349 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetName().
Referenced by G4DNAMoleculeEncounterStepper::CalculateStep(), G4DNAMoleculeEncounterStepper::CheckAndRecordResults(), G4DNABrownianTransportation::ComputeStep(), G4DNAMolecularDissociation::DecayIt(), G4DNABrownianTransportation::Diffusion(), G4DNASmoluchowskiReactionModel::FindReaction(), G4DNASecondOrderReaction::PostStepDoIt(), G4DNABrownianTransportation::PostStepDoIt(), G4DNAIndirectHit::Print(), G4DNAChemistryManager::PushMolecule(), and G4DNAChemistryManager::PushMoleculeAtParentTimeAndPlace().
G4double G4Molecule::GetNbElectrons | ( | ) | const |
Returns the number of electron.
Definition at line 370 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetNbElectrons().
G4double G4Molecule::GetVanDerVaalsRadius | ( | ) | const |
Definition at line 504 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetVanDerVaalsRadius().
void G4Molecule::IonizeMolecule | ( | G4int | IonizedLevel | ) |
Method used in Geant4-DNA to ionize water molecules.
Definition at line 317 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::IonizeMolecule().
G4Molecule::ITDef | ( | G4Molecule | ) | const |
Move one electron from an orbit to another.
Definition at line 341 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::MoveOneElectron().
|
inline |
Definition at line 312 of file G4Molecule.hh.
References aMoleculeAllocator.
|
inline |
Definition at line 119 of file G4Molecule.hh.
References GetMoleculeID().
|
inline |
Definition at line 304 of file G4Molecule.hh.
References aMoleculeAllocator.
G4bool G4Molecule::operator!= | ( | const G4Molecule & | right | ) | const |
Definition at line 125 of file G4Molecule.cc.
References right.
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 136 of file G4Molecule.cc.
References fpMolecularConfiguration.
G4Molecule & G4Molecule::operator= | ( | const G4Molecule & | right | ) |
Definition at line 105 of file G4Molecule.cc.
References fpMolecularConfiguration.
G4bool G4Molecule::operator== | ( | const G4Molecule & | right | ) | const |
Definition at line 114 of file G4Molecule.cc.
References fpMolecularConfiguration.
void G4Molecule::PrintState | ( | ) | const |
Show the electronic state of the molecule.
Definition at line 377 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::PrintState().
Referenced by G4DNAMolecularDissociation::DecayIt().
Remove n electrons to a given orbit.
Definition at line 333 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::RemoveElectron().
void G4Molecule::SetDecayTime | ( | G4double | dynDecayTime | ) |
Set the decay time of the molecule.
Definition at line 483 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::SetDecayTime().
void G4Molecule::SetDiffusionCoefficient | ( | G4double | dynDiffusionCoefficient | ) |
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.
Definition at line 546 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::SetDiffusionCoefficient().
void G4Molecule::SetElectronOccupancy | ( | const G4ElectronOccupancy * | occ | ) |
Will set up the correct molecularConfiguration given an electron configuration.
Definition at line 296 of file G4Molecule.cc.
References fpMolecularConfiguration, G4MolecularConfiguration::GetDefinition(), and G4MolecularConfiguration::GetOrCreateMolecularConfiguration().
void G4Molecule::SetLabel | ( | const G4String & | label | ) |
Definition at line 597 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::SetLabel().
void G4Molecule::SetMass | ( | G4double | aMass | ) |
Set the total mass of the molecule.
Definition at line 518 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::SetMass().
void G4Molecule::SetVanDerVaalsRadius | ( | G4double | dynVanDerVaalsRadius | ) |
The Van Der Valls Radius of the molecule.
Definition at line 497 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::SetVanDerVaalsRadius().
|
private |
Definition at line 290 of file G4Molecule.hh.
Referenced by AddElectron(), BuildTrack(), ChangeConfigurationToLabel(), ExciteMolecule(), G4Molecule(), GetAtomsNumber(), GetCharge(), GetDecayChannel(), GetDecayTime(), GetDefinition(), GetDiffusionCoefficient(), GetDiffusionVelocity(), GetElectronOccupancy(), GetFakeParticleID(), GetFormatedName(), GetKineticEnergy(), GetLabel(), GetMass(), GetMolecularConfiguration(), GetMoleculeID(), GetName(), GetNbElectrons(), GetVanDerVaalsRadius(), IonizeMolecule(), MoveOneElectron(), operator<(), operator=(), operator==(), PrintState(), RemoveElectron(), SetDecayTime(), SetDiffusionCoefficient(), SetElectronOccupancy(), SetLabel(), SetMass(), SetVanDerVaalsRadius(), and ~G4Molecule().