Geant4
10.03
|
The pointer G4MolecularConfiguration will be shared by all the molecules having the same molecule definition and the same electron occupancy BE CAREFUlL !!! : If you change the mass for instance of a OH^-, this will affect all the OH^- molecule diffusing around. More...
#include <G4MolecularConfiguration.hh>
Classes | |
class | G4MolecularConfigurationManager |
Public Types | |
typedef std::function< double(const G4Material *, double, const G4MolecularConfiguration *)> | G4DiffCoeffParam |
Public Member Functions | |
void | AddDiffCoeffParameterization (const G4DiffCoeffParam &) |
const G4MoleculeDefinition * | GetDefinition () const |
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... | |
G4MolecularConfiguration * | ExciteMolecule (G4int) |
Method used in Geant4-DNA to excite water molecules. More... | |
G4MolecularConfiguration * | IonizeMolecule (G4int) |
Method used in Geant4-DNA to ionize water molecules. More... | |
G4MolecularConfiguration * | AddElectron (G4int orbit, G4int n=1) |
Add n electrons to a given orbit. More... | |
G4MolecularConfiguration * | RemoveElectron (G4int, G4int number=1) |
Remove n electrons to a given orbit. More... | |
G4MolecularConfiguration * | MoveOneElectron (G4int, G4int) |
Move one electron from an orbit to another. More... | |
G4double | GetNbElectrons () const |
Returns the number of electron. More... | |
void | PrintState () const |
Display the electronic state of the molecule. More... | |
const std::vector< const G4MolecularDissociationChannel * > * | GetDecayChannel () const |
G4int | GetFakeParticleID () const |
G4int | GetMoleculeID () const |
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 |
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... | |
void | SetLabel (const G4String &) |
const G4String & | GetLabel () const |
void | Finalize () |
const G4String & | GetUserID () const |
void | Serialize (std::ostream &) |
void | Unserialize (std::istream &) |
Protected Member Functions | |
G4MolecularConfiguration (const G4MoleculeDefinition *, const G4ElectronOccupancy &, const G4String &label="") | |
G4MolecularConfiguration (const G4MoleculeDefinition *, int charge) | |
G4MolecularConfiguration (const G4MoleculeDefinition *, const G4String &label, int charge) | |
G4MolecularConfiguration (std::istream &) | |
G4MolecularConfiguration (const G4MolecularConfiguration &) | |
G4MolecularConfiguration & | operator= (G4MolecularConfiguration &right) |
~G4MolecularConfiguration () | |
G4MolecularConfiguration * | ChangeConfiguration (const G4ElectronOccupancy &newElectronOccupancy) |
G4MolecularConfiguration * | ChangeConfiguration (int charge) |
void | CheckElectronOccupancy (const char *line) const |
void | MakeExceptionIfFinalized () |
void | SetUserID (const G4String &userID) |
void | CreateDefaultDiffCoeffParam () |
Static Protected Member Functions | |
static void | ScaleAllDiffusionCoefficientsOnWater (double temperature_K) |
static G4MolecularConfigurationManager * | GetManager () |
static double | ReturnDefaultDiffCoeff (const G4Material *, double, const G4MolecularConfiguration *molConf) |
Static Protected Attributes | |
static G4MolecularConfigurationManager * | fgManager = 0 |
static double | fgTemperature = 298 |
The pointer G4MolecularConfiguration will be shared by all the molecules having the same molecule definition and the same electron occupancy BE CAREFUlL !!! : If you change the mass for instance of a OH^-, this will affect all the OH^- molecule diffusing around.
Definition at line 98 of file G4MolecularConfiguration.hh.
typedef std::function<double(const G4Material*, double, const G4MolecularConfiguration*)> G4MolecularConfiguration::G4DiffCoeffParam |
Definition at line 104 of file G4MolecularConfiguration.hh.
|
protected |
Definition at line 438 of file G4MolecularConfiguration.cc.
References G4UIcommand::ConvertToString(), fName, G4MoleculeDefinition::GetCharge(), G4MoleculeDefinition::GetNbElectrons(), and ReturnDefaultDiffCoeff().
|
protected |
Definition at line 491 of file G4MolecularConfiguration.cc.
References G4UIcommand::ConvertToString(), fName, G4MoleculeDefinition::GetMass(), and ReturnDefaultDiffCoeff().
|
protected |
Definition at line 80 of file G4MolecularConfiguration.cc.
References G4UIcommand::ConvertToString(), fName, and ReturnDefaultDiffCoeff().
|
protected |
Definition at line 1444 of file G4MolecularConfiguration.cc.
|
protected |
|
protected |
Definition at line 527 of file G4MolecularConfiguration.cc.
|
inline |
Definition at line 586 of file G4MolecularConfiguration.hh.
G4MolecularConfiguration * G4MolecularConfiguration::AddElectron | ( | G4int | orbit, |
G4int | n = 1 |
||
) |
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 636 of file G4MolecularConfiguration.cc.
References G4ElectronOccupancy::AddElectron().
Referenced by G4Molecule::AddElectron().
|
protected |
Definition at line 545 of file G4MolecularConfiguration.cc.
References GetMolecularConfiguration().
|
protected |
Definition at line 562 of file G4MolecularConfiguration.cc.
References GetMolecularConfiguration().
|
protected |
Definition at line 824 of file G4MolecularConfiguration.cc.
References FatalErrorInArgument, and G4Exception().
|
protected |
Definition at line 1516 of file G4MolecularConfiguration.cc.
References ReturnDefaultDiffCoeff().
Referenced by Finalize().
|
static |
Definition at line 1099 of file G4MolecularConfiguration.cc.
References FatalErrorInArgument, fUserIdentifier, G4Exception(), G4MoleculeDefinition::GetCharge(), GetDefinition(), G4MoleculeDefinition::GetGroundStateElectronOccupancy(), GetMolecularConfiguration(), G4MoleculeDefinition::GetName(), and JustWarning.
Referenced by G4MoleculeTable::CreateConfiguration(), G4MoleculeDefinition::NewConfiguration(), and G4MoleculeDefinition::NewConfigurationWithElectronOccupancy().
|
static |
Definition at line 1246 of file G4MolecularConfiguration.cc.
References FatalErrorInArgument, fLabel, fUserIdentifier, G4Exception(), GetElectronOccupancy(), GetMolecularConfiguration(), G4MoleculeDefinition::GetName(), PrintState(), and SetLabel().
|
static |
Definition at line 1006 of file G4MolecularConfiguration.cc.
References FatalErrorInArgument, fLabel, fUserIdentifier, G4Exception(), GetLabel(), GetMolecularConfiguration(), G4MoleculeDefinition::GetName(), JustWarning, and SetLabel().
|
static |
Definition at line 1180 of file G4MolecularConfiguration.cc.
References FatalErrorInArgument, fLabel, fUserIdentifier, G4Exception(), G4MoleculeDefinition::GetCharge(), GetLabel(), GetMolecularConfiguration(), G4MoleculeDefinition::GetName(), PrintState(), and SetLabel().
|
static |
Definition at line 427 of file G4MolecularConfiguration.cc.
References G4MolecularConfiguration::G4MolecularConfigurationManager::fManagerCreationMutex, and G4TemplateAutoLock< M, L, U >::unlock().
Referenced by G4DNAChemistryManager::Clear().
|
static |
Definition at line 1483 of file G4MolecularConfiguration.cc.
Referenced by G4DNAMolecularReactionData::ScaledParameterization().
G4MolecularConfiguration * G4MolecularConfiguration::ExciteMolecule | ( | G4int | ExcitedLevel | ) |
Method used in Geant4-DNA to excite water molecules.
Definition at line 588 of file G4MolecularConfiguration.cc.
References G4ElectronOccupancy::AddElectron(), and G4ElectronOccupancy::RemoveElectron().
Referenced by G4Molecule::ExciteMolecule().
|
inline |
Definition at line 574 of file G4MolecularConfiguration.hh.
References CreateDefaultDiffCoeffParam(), and fIsFinalized.
|
static |
Definition at line 1562 of file G4MolecularConfiguration.cc.
Referenced by G4MoleculeTable::Finalize().
G4int G4MolecularConfiguration::GetAtomsNumber | ( | ) | const |
Returns the nomber of atoms compouning the molecule.
Definition at line 737 of file G4MolecularConfiguration.cc.
Referenced by G4Molecule::GetAtomsNumber().
|
inline |
Returns the charge of molecule.
Definition at line 531 of file G4MolecularConfiguration.hh.
References fDynCharge.
Referenced by G4Molecule::GetCharge().
const vector< const G4MolecularDissociationChannel * > * G4MolecularConfiguration::GetDecayChannel | ( | ) | const |
Definition at line 790 of file G4MolecularConfiguration.cc.
Referenced by G4Molecule::GetDecayChannel().
|
inline |
Returns the decay time of the molecule.
Definition at line 515 of file G4MolecularConfiguration.hh.
References fDynDecayTime.
Referenced by G4Molecule::GetDecayTime().
|
inline |
Definition at line 488 of file G4MolecularConfiguration.hh.
References fMoleculeDefinition.
Referenced by G4MoleculeCounter::AddAMoleculeAtTime(), G4Molecule::BuildTrack(), G4Molecule::ChangeConfigurationToLabel(), CreateMolecularConfiguration(), G4Molecule::GetDefinition(), G4DNAWaterDissociationDisplacer::GetProductsDisplacement(), G4MoleculeCounter::RemoveAMoleculeAtTime(), G4MolecularConfiguration::G4MolecularConfigurationManager::RemoveMolecularConfigurationFromTable(), and G4Molecule::SetElectronOccupancy().
|
inline |
Returns the diffusion coefficient D.
Definition at line 504 of file G4MolecularConfiguration.hh.
References fDynDiffusionCoefficient.
Referenced by G4DNAMolecularReactionData::G4DNAMolecularReactionData(), G4Molecule::GetDiffusionCoefficient(), G4DNAMolecularReaction::MakeReaction(), ScaleAllDiffusionCoefficientsOnWater(), and G4DNAMoleculeEncounterStepper::Utils::Utils().
|
inline |
Definition at line 592 of file G4MolecularConfiguration.hh.
References fDiffParam.
|
inline |
Returns the object ElectronOccupancy describing the electronic configuration of the molecule.
Definition at line 493 of file G4MolecularConfiguration.hh.
References fElectronOccupancy.
Referenced by CreateMolecularConfiguration(), G4Molecule::GetElectronOccupancy(), and G4MolecularConfiguration::G4MolecularConfigurationManager::RemoveMolecularConfigurationFromTable().
G4int G4MolecularConfiguration::GetFakeParticleID | ( | ) | const |
Definition at line 798 of file G4MolecularConfiguration.cc.
References FatalErrorInArgument, G4Exception(), and INT_MAX.
Referenced by G4Molecule::GetFakeParticleID().
const G4String & G4MolecularConfiguration::GetFormatedName | ( | ) | const |
Returns the formated name of the molecule.
Definition at line 722 of file G4MolecularConfiguration.cc.
Referenced by G4Molecule::GetFormatedName().
|
static |
Definition at line 1534 of file G4MolecularConfiguration.cc.
Referenced by G4Molecule::GetDiffusionVelocity().
|
inline |
Definition at line 566 of file G4MolecularConfiguration.hh.
Referenced by CreateMolecularConfiguration(), and G4Molecule::GetLabel().
|
staticprotected |
Definition at line 131 of file G4MolecularConfiguration.cc.
References G4MolecularConfiguration::G4MolecularConfigurationManager::fManagerCreationMutex, and G4TemplateAutoLock< M, L, U >::unlock().
Referenced by GetUserIDTable().
|
inline |
Returns the total mass of the molecule.
Definition at line 542 of file G4MolecularConfiguration.hh.
References fDynMass.
Referenced by G4Molecule::GetDiffusionVelocity(), G4Molecule::GetKineticEnergy(), and G4Molecule::GetMass().
|
static |
Definition at line 989 of file G4MolecularConfiguration.cc.
References GetMolecularConfiguration().
Referenced by G4MoleculeDefinition::AddDecayChannel(), ChangeConfiguration(), G4Molecule::ChangeConfigurationToLabel(), CreateMolecularConfiguration(), G4MoleculeTable::GetConfiguration(), G4MoleculeDefinition::GetConfigurationWithLabel(), GetMolecularConfiguration(), and GetOrCreateMolecularConfiguration().
|
static |
Definition at line 998 of file G4MolecularConfiguration.cc.
References GetMolecularConfiguration().
|
static |
Definition at line 1555 of file G4MolecularConfiguration.cc.
References GetMolecularConfiguration().
|
inline |
Definition at line 547 of file G4MolecularConfiguration.hh.
References fMoleculeID.
Referenced by G4DNAMoleculeEncounterStepper::CalculateStep(), and G4Molecule::GetMoleculeID().
const G4String & G4MolecularConfiguration::GetName | ( | void | ) | const |
Returns the name of the molecule.
Definition at line 707 of file G4MolecularConfiguration.cc.
References fName.
Referenced by G4MoleculeCounter::AddAMoleculeAtTime(), G4DNAMolecularReactionTable::CanReactWith(), G4DNAMoleculeEncounterStepper::CheckAndRecordResults(), G4MoleculeCounter::Dump(), G4Molecule::GetName(), G4DNAMolecularReactionTable::GetReactionData(), G4DNAMolecularReactionTable::GetReativesNData(), G4DNAMolecularReactionTable::PrintTable(), G4MoleculeCounter::RemoveAMoleculeAtTime(), G4DNAMolecularReaction::TestReactibility(), and ScoreSpecies::WriteWithAnalysisManager().
G4double G4MolecularConfiguration::GetNbElectrons | ( | ) | const |
Returns the number of electron.
Definition at line 744 of file G4MolecularConfiguration.cc.
Referenced by G4Molecule::GetNbElectrons().
|
static |
Definition at line 67 of file G4MolecularConfiguration.cc.
Referenced by G4MoleculeTable::GetNumberOfDefinedSpecies().
|
static |
Definition at line 339 of file G4MolecularConfiguration.cc.
References G4MoleculeDefinition::GetCharge(), G4MoleculeDefinition::GetGroundStateElectronOccupancy(), GetMolecularConfiguration(), G4MoleculeDefinition::GetName(), and SetUserID().
Referenced by G4Molecule::G4Molecule(), GetOrCreateMolecularConfiguration(), G4MoleculeTable::PrepareMolecularConfiguration(), and G4Molecule::SetElectronOccupancy().
|
static |
Definition at line 383 of file G4MolecularConfiguration.cc.
References GetOrCreateMolecularConfiguration().
|
static |
Definition at line 407 of file G4MolecularConfiguration.cc.
References GetMolecularConfiguration().
|
inline |
Definition at line 580 of file G4MolecularConfiguration.hh.
References fUserIdentifier.
|
inlinestatic |
Definition at line 169 of file G4MolecularConfiguration.hh.
References GetManager(), and G4MolecularConfiguration::G4MolecularConfigurationManager::GetUserIDTable().
Referenced by G4MoleculeTable::GetConfigurationIterator().
|
inline |
Definition at line 526 of file G4MolecularConfiguration.hh.
References fDynVanDerVaalsRadius.
Referenced by G4Molecule::GetVanDerVaalsRadius().
G4MolecularConfiguration * G4MolecularConfiguration::IonizeMolecule | ( | G4int | IonizedLevel | ) |
Method used in Geant4-DNA to ionize water molecules.
Definition at line 605 of file G4MolecularConfiguration.cc.
References G4UIcommand::ConvertToString(), FatalErrorInArgument, G4Exception(), G4ElectronOccupancy::GetOccupancy(), and G4ElectronOccupancy::RemoveElectron().
Referenced by G4Molecule::IonizeMolecule().
|
static |
Definition at line 1437 of file G4MolecularConfiguration.cc.
|
protected |
Definition at line 115 of file G4MolecularConfiguration.cc.
References FatalException, and G4Exception().
Referenced by SetDecayTime(), SetDiffusionCoefficient(), SetMass(), and SetVanDerVaalsRadius().
G4MolecularConfiguration * G4MolecularConfiguration::MoveOneElectron | ( | G4int | orbitToFree, |
G4int | orbitToFill | ||
) |
Move one electron from an orbit to another.
Definition at line 678 of file G4MolecularConfiguration.cc.
References G4ElectronOccupancy::AddElectron(), G4UIcommand::ConvertToString(), FatalErrorInArgument, G4Exception(), G4ElectronOccupancy::GetOccupancy(), and G4ElectronOccupancy::RemoveElectron().
Referenced by G4Molecule::MoveOneElectron().
|
protected |
Definition at line 577 of file G4MolecularConfiguration.cc.
void G4MolecularConfiguration::PrintState | ( | ) | const |
Display the electronic state of the molecule.
Definition at line 752 of file G4MolecularConfiguration.cc.
References G4cout, and G4endl.
Referenced by CreateMolecularConfiguration(), G4Molecule::PrintState(), and G4MoleculeCounter::RemoveAMoleculeAtTime().
G4MolecularConfiguration * G4MolecularConfiguration::RemoveElectron | ( | G4int | orbit, |
G4int | number = 1 |
||
) |
Remove n electrons to a given orbit.
Definition at line 649 of file G4MolecularConfiguration.cc.
References G4UIcommand::ConvertToString(), G4Exception(), G4ElectronOccupancy::GetOccupancy(), JustWarning, and G4ElectronOccupancy::RemoveElectron().
Referenced by G4Molecule::RemoveElectron().
|
staticprotected |
Definition at line 72 of file G4MolecularConfiguration.cc.
References fDynDiffusionCoefficient.
Referenced by CreateDefaultDiffCoeffParam(), and G4MolecularConfiguration().
|
staticprotected |
Definition at line 1495 of file G4MolecularConfiguration.cc.
References G4cout, G4endl, G4MoleculeTable::GetConfigurationIterator(), GetDiffusionCoefficient(), G4MoleculeTable::Instance(), SetDiffusionCoefficient(), and G4MoleculeIterator< MOLECULE >::value().
void G4MolecularConfiguration::Serialize | ( | std::ostream & | out | ) |
Definition at line 1387 of file G4MolecularConfiguration.cc.
References fName, and WRITE().
|
inline |
Set the decay time of the molecule.
Definition at line 509 of file G4MolecularConfiguration.hh.
References fDynDecayTime, and MakeExceptionIfFinalized().
Referenced by G4MoleculeDefinition::NewConfigurationWithElectronOccupancy(), and G4Molecule::SetDecayTime().
|
inline |
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.
Note : Diffusion Coefficient in one medium only For the time being, we will consider only one diffusion coefficient for the all simulation => diffusion in one medium only If the user needs to use the diffusion in different materials, she/he should contact the developpers/mainteners of this package
Definition at line 498 of file G4MolecularConfiguration.hh.
References fDynDiffusionCoefficient, and MakeExceptionIfFinalized().
Referenced by G4MoleculeTable::CreateConfiguration(), ScaleAllDiffusionCoefficientsOnWater(), and G4Molecule::SetDiffusionCoefficient().
|
static |
Definition at line 1526 of file G4MolecularConfiguration.cc.
Referenced by G4DNAChemistryManager::SetGlobalTemperature().
|
inline |
Definition at line 552 of file G4MolecularConfiguration.hh.
References G4MolecularConfiguration::G4MolecularConfigurationManager::RecordNewlyLabeledConfiguration().
Referenced by CreateMolecularConfiguration(), and G4Molecule::SetLabel().
|
inline |
Set the total mass of the molecule.
Definition at line 536 of file G4MolecularConfiguration.hh.
References fDynMass, and MakeExceptionIfFinalized().
Referenced by G4EmDNAChemistry::ConstructMolecule(), and G4Molecule::SetMass().
|
protected |
Definition at line 1474 of file G4MolecularConfiguration.cc.
Referenced by GetOrCreateMolecularConfiguration().
|
inline |
The Van Der Valls Radius of the molecule.
Definition at line 520 of file G4MolecularConfiguration.hh.
References fDynVanDerVaalsRadius, and MakeExceptionIfFinalized().
Referenced by G4Molecule::SetVanDerVaalsRadius().
void G4MolecularConfiguration::Unserialize | ( | std::istream & | in | ) |
Definition at line 1409 of file G4MolecularConfiguration.cc.
References fName, G4MoleculeTable::GetMoleculeDefinition(), G4MoleculeTable::Instance(), and READ().
|
protected |
Definition at line 479 of file G4MolecularConfiguration.hh.
Referenced by GetDiffusionCoefficient().
|
protected |
Definition at line 472 of file G4MolecularConfiguration.hh.
Referenced by GetCharge().
|
protected |
Definition at line 470 of file G4MolecularConfiguration.hh.
Referenced by GetDecayTime(), and SetDecayTime().
|
protected |
Definition at line 468 of file G4MolecularConfiguration.hh.
Referenced by GetDiffusionCoefficient(), ReturnDefaultDiffCoeff(), and SetDiffusionCoefficient().
|
protected |
Definition at line 471 of file G4MolecularConfiguration.hh.
|
protected |
Definition at line 469 of file G4MolecularConfiguration.hh.
Referenced by GetVanDerVaalsRadius(), and SetVanDerVaalsRadius().
|
protected |
Definition at line 464 of file G4MolecularConfiguration.hh.
Referenced by GetElectronOccupancy(), and G4MolecularConfiguration::G4MolecularConfigurationManager::RemoveMolecularConfigurationFromTable().
|
protected |
Definition at line 474 of file G4MolecularConfiguration.hh.
|
staticprotected |
Definition at line 460 of file G4MolecularConfiguration.hh.
|
staticprotected |
Definition at line 480 of file G4MolecularConfiguration.hh.
|
protected |
Definition at line 477 of file G4MolecularConfiguration.hh.
Referenced by Finalize().
|
mutableprotected |
Definition at line 466 of file G4MolecularConfiguration.hh.
Referenced by CreateMolecularConfiguration(), and G4MolecularConfiguration::G4MolecularConfigurationManager::RecordNewlyLabeledConfiguration().
|
protected |
Definition at line 463 of file G4MolecularConfiguration.hh.
Referenced by GetDefinition(), and G4MolecularConfiguration::G4MolecularConfigurationManager::RecordNewlyLabeledConfiguration().
|
protected |
Definition at line 473 of file G4MolecularConfiguration.hh.
Referenced by GetMoleculeID().
|
protected |
Definition at line 475 of file G4MolecularConfiguration.hh.
|
protected |
Definition at line 476 of file G4MolecularConfiguration.hh.
Referenced by CreateMolecularConfiguration(), and GetUserID().