Geant4
10.01.p03
|
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... | |
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... | |
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... | |
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... | |
G4MolecularConfiguration * | GetMolecularConfiguration () const |
Public Member Functions inherited from G4IT | |
G4IT () | |
G4IT (G4Track *) | |
virtual | ~G4IT () |
void * | operator new (size_t) |
void | operator delete (void *aIT) |
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 |
virtual const G4ThreeVector & | GetPosition () const |
double | operator[] (int i) const |
void | RecordCurrentPositionNTime () |
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 *) |
void | SetParentID (int, int) |
void | GetParentID (int &, int &) |
const G4ThreeVector & | GetPreStepPosition () const |
G4double | GetPreStepLocalTime () const |
G4double | GetPreStepGlobalTime () const |
G4KDNode_Base * | GetNode () const |
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 void | SetGlobalTemperature (G4double) |
static G4double | GetGlobalTemperature () |
static G4Molecule * | GetMolecule (const G4Track *) |
Private Member Functions | |
G4Molecule () | |
Default molecule builder. More... | |
Private Attributes | |
G4MolecularConfiguration * | fpMolecularConfiguration |
Static Private Attributes | |
static double | fgTemperature = 310 |
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 93 of file G4Molecule.hh.
G4Molecule::G4Molecule | ( | const G4Molecule & | right | ) |
Definition at line 87 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 155 of file G4Molecule.cc.
G4Molecule::G4Molecule | ( | G4MoleculeDefinition * | molDef, |
int | charge | ||
) |
Definition at line 163 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetMolecularConfiguration().
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 175 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 221 of file G4Molecule.cc.
References FatalErrorInArgument, fpMolecularConfiguration, G4Exception(), G4MoleculeDefinition::GetGroundStateElectronOccupancy(), G4MolecularConfiguration::GetMolecularConfiguration(), and G4ElectronOccupancy::RemoveElectron().
|
virtual |
Definition at line 136 of file G4Molecule.cc.
References fpMolecularConfiguration, G4IT::fpTrack, G4Track::GetGlobalTime(), G4MoleculeCounter::GetMoleculeCounter(), and G4MoleculeCounter::RemoveAMoleculeAtTime().
|
private |
Default molecule builder.
Definition at line 128 of file G4Molecule.cc.
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 285 of file G4Molecule.cc.
References G4MolecularConfiguration::AddElectron(), and fpMolecularConfiguration.
G4Track * G4Molecule::BuildTrack | ( | G4double | globalTime, |
const G4ThreeVector & | Position | ||
) |
Definition at line 328 of file G4Molecule.cc.
References G4MoleculeCounter::AddAMoleculeAtTime(), FatalErrorInArgument, fpMolecularConfiguration, G4IT::fpTrack, G4Exception(), G4UniformRand, G4MolecularConfiguration::GetDefinition(), GetKineticEnergy(), G4MoleculeCounter::GetMoleculeCounter(), G4MoleculeCounter::InUse(), G4INCL::Math::pi, and G4Track::SetUserInformation().
Referenced by G4MoleculeGun::BuildTrack(), G4DNAChemistryManager::CreateSolvatedElectron(), G4DNAChemistryManager::CreateWaterMolecule(), G4DNAMolecularDissociation::DecayIt(), G4DNAMolecularReaction::MakeReaction(), G4DNAChemistryManager::PushMolecule(), and G4DNAChemistryManager::PushMoleculeAtParentTimeAndPlace().
void G4Molecule::ExciteMolecule | ( | G4int | ExcitedLevel | ) |
Method used in Geant4-DNA to excite water molecules.
Definition at line 271 of file G4Molecule.cc.
References G4MolecularConfiguration::ExciteMolecule(), and fpMolecularConfiguration.
G4int G4Molecule::GetAtomsNumber | ( | ) | const |
Returns the nomber of atoms compouning the molecule.
Definition at line 313 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetAtomsNumber().
G4int G4Molecule::GetCharge | ( | ) | const |
Returns the charge of molecule.
Definition at line 435 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetCharge().
const vector< const G4MolecularDissociationChannel * > * G4Molecule::GetDecayChannel | ( | ) | const |
Definition at line 400 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 420 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 455 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDefinition().
Referenced by G4MoleculeCounter::AddAMoleculeAtTime(), G4DNAMolecularDissociation::DecayIt(), G4DNAWaterDissociationDisplacer::GetProductsDisplacement(), and G4MoleculeCounter::RemoveAMoleculeAtTime().
G4double G4Molecule::GetDiffusionCoefficient | ( | ) | const |
Returns the diffusion coefficient D.
Definition at line 465 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetDiffusionCoefficient().
Referenced by G4DNABrownianTransportation::AlongStepGetPhysicalInteractionLength(), G4DNABrownianTransportation::ComputeStep(), G4DNASmoluchowskiReactionModel::FindReaction(), G4DNAMolecularReactionData::G4DNAMolecularReactionData(), G4DNAMolecularReaction::MakeReaction(), and G4DNAMoleculeEncounterStepper::Utils::Utils().
G4double G4Molecule::GetDiffusionVelocity | ( | ) | const |
Definition at line 378 of file G4Molecule.cc.
References fgTemperature, fpMolecularConfiguration, 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 450 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetElectronOccupancy().
Referenced by G4DNAMolecularDissociation::DecayIt().
G4int G4Molecule::GetFakeParticleID | ( | ) | const |
Definition at line 405 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetFakeParticleID().
const G4String & G4Molecule::GetFormatedName | ( | ) | const |
Returns the formated name of the molecule.
Definition at line 308 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetFormatedName().
|
static |
Definition at line 480 of file G4Molecule.cc.
References fgTemperature.
|
inlinevirtual |
Reimplemented from G4IT.
Definition at line 118 of file G4Molecule.hh.
References GetMoleculeID().
G4double G4Molecule::GetKineticEnergy | ( | ) | const |
Definition at line 368 of file G4Molecule.cc.
References fpMolecularConfiguration, GetDiffusionVelocity(), and G4MolecularConfiguration::GetMass().
Referenced by BuildTrack().
G4double G4Molecule::GetMass | ( | ) | const |
Returns the total mass of the molecule.
Definition at line 445 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetMass().
G4MolecularConfiguration * G4Molecule::GetMolecularConfiguration | ( | ) | const |
Definition at line 470 of file G4Molecule.cc.
References fpMolecularConfiguration.
Referenced by G4DNASecondOrderReaction::PostStepGetPhysicalInteractionLength().
|
static |
Definition at line 77 of file G4Molecule.cc.
References GetIT().
G4int G4Molecule::GetMoleculeID | ( | ) | const |
Definition at line 410 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetMoleculeID().
Referenced by GetITSubType(), and G4MoleculeTable::RecordMoleculeModel().
|
virtual |
Returns the name of the molecule.
Implements G4IT.
Definition at line 303 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetName().
Referenced by G4MoleculeCounter::AddAMoleculeAtTime(), G4DNAMoleculeEncounterStepper::CalculateStep(), G4DNAMolecularReactionTable::CanReactWith(), G4DNAMoleculeEncounterStepper::CheckAndRecordResults(), G4DNABrownianTransportation::ComputeStep(), G4DNAMolecularDissociation::DecayIt(), G4DNABrownianTransportation::Diffusion(), G4DNASmoluchowskiReactionModel::FindReaction(), G4DNAMolecularReactionTable::GetReactionData(), G4DNAMolecularReactionTable::GetReativesNData(), G4DNASecondOrderReaction::PostStepDoIt(), G4DNABrownianTransportation::PostStepDoIt(), G4DNAIndirectHit::Print(), G4DNAMolecularReactionTable::PrintTable(), G4DNAChemistryManager::PushMolecule(), G4DNAChemistryManager::PushMoleculeAtParentTimeAndPlace(), G4MoleculeCounter::RemoveAMoleculeAtTime(), and G4DNAMolecularReaction::TestReactibility().
G4double G4Molecule::GetNbElectrons | ( | ) | const |
Returns the number of electron.
Definition at line 318 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::GetNbElectrons().
G4double G4Molecule::GetVanDerVaalsRadius | ( | ) | const |
Definition at line 430 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 279 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::IonizeMolecule().
G4Molecule::ITDef | ( | G4Molecule | ) | const |
Move one electron from an orbit to another.
Definition at line 297 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::MoveOneElectron().
|
inline |
Definition at line 288 of file G4Molecule.hh.
References aMoleculeAllocator.
|
inline |
Definition at line 280 of file G4Molecule.hh.
References aMoleculeAllocator.
G4bool G4Molecule::operator!= | ( | const G4Molecule & | right | ) | const |
Definition at line 109 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 119 of file G4Molecule.cc.
References fpMolecularConfiguration.
G4Molecule & G4Molecule::operator= | ( | const G4Molecule & | right | ) |
Definition at line 93 of file G4Molecule.cc.
References fpMolecularConfiguration.
G4bool G4Molecule::operator== | ( | const G4Molecule & | right | ) | const |
Definition at line 100 of file G4Molecule.cc.
References fpMolecularConfiguration.
void G4Molecule::PrintState | ( | ) | const |
Show the electronic state of the molecule.
Definition at line 323 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::PrintState().
Referenced by G4MoleculeCounter::RemoveAMoleculeAtTime().
Remove n electrons to a given orbit.
Definition at line 291 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::RemoveElectron().
void G4Molecule::SetDecayTime | ( | G4double | dynDecayTime | ) |
Set the decay time of the molecule.
Definition at line 415 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 460 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::SetDiffusionCoefficient().
Referenced by G4MoleculeTable::CreateMoleculeModel().
void G4Molecule::SetElectronOccupancy | ( | const G4ElectronOccupancy * | occ | ) |
Will set up the correct molecularConfiguration given an electron configuration.
Definition at line 262 of file G4Molecule.cc.
References fpMolecularConfiguration, G4MolecularConfiguration::GetDefinition(), and G4MolecularConfiguration::GetMolecularConfiguration().
|
static |
Definition at line 475 of file G4Molecule.cc.
References fgTemperature.
void G4Molecule::SetMass | ( | G4double | aMass | ) |
Set the total mass of the molecule.
Definition at line 440 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::SetMass().
Referenced by G4EmDNAChemistry::ConstructMolecule().
void G4Molecule::SetVanDerVaalsRadius | ( | G4double | dynVanDerVaalsRadius | ) |
The Van Der Valls Radius of the molecule.
Definition at line 425 of file G4Molecule.cc.
References fpMolecularConfiguration, and G4MolecularConfiguration::SetVanDerVaalsRadius().
|
staticprivate |
Definition at line 270 of file G4Molecule.hh.
Referenced by GetDiffusionVelocity(), GetGlobalTemperature(), and SetGlobalTemperature().
|
private |
Definition at line 268 of file G4Molecule.hh.
Referenced by AddElectron(), BuildTrack(), ExciteMolecule(), G4Molecule(), GetAtomsNumber(), GetCharge(), GetDecayChannel(), GetDecayTime(), GetDefinition(), GetDiffusionCoefficient(), GetDiffusionVelocity(), GetElectronOccupancy(), GetFakeParticleID(), GetFormatedName(), GetKineticEnergy(), GetMass(), GetMolecularConfiguration(), GetMoleculeID(), GetName(), GetNbElectrons(), GetVanDerVaalsRadius(), IonizeMolecule(), MoveOneElectron(), operator<(), operator=(), operator==(), PrintState(), RemoveElectron(), SetDecayTime(), SetDiffusionCoefficient(), SetElectronOccupancy(), SetMass(), SetVanDerVaalsRadius(), and ~G4Molecule().