ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4Molecule Class Reference

#include <geant4/tree/geant4-10.6-release/source/processes/electromagnetic/dna/molecules/management/include/G4Molecule.hh>

+ Inheritance diagram for G4Molecule:
+ Collaboration diagram for G4Molecule:

Public Member Functions

 ITDef (G4Molecule) void Print() const
 
voidoperator new (size_t)
 
void operator delete (void *)
 
 G4Molecule (const G4Molecule &)
 
G4Moleculeoperator= (const G4Molecule &right)
 
G4bool operator== (const G4Molecule &right) const
 
G4bool operator!= (const G4Molecule &right) const
 
G4bool operator< (const G4Molecule &right) const
 
 operator int () const
 
virtual G4ITType GetITSubType () const
 
 G4Molecule (G4MoleculeDefinition *pMoleculeDefinition)
 
 G4Molecule (G4MoleculeDefinition *pMoleculeDefinition, int charge)
 
 G4Molecule (G4MoleculeDefinition *pMoleculeDefinition, G4int, G4int)
 
 G4Molecule (G4MoleculeDefinition *pMoleculeDefinition, G4int, G4bool)
 
 G4Molecule (const G4MolecularConfiguration *)
 
virtual ~G4Molecule ()
 
const G4StringGetName () const
 
const G4StringGetFormatedName () const
 
G4int GetAtomsNumber () const
 
void SetElectronOccupancy (const G4ElectronOccupancy *)
 
void ExciteMolecule (G4int)
 
void IonizeMolecule (G4int)
 
void AddElectron (G4int orbit, G4int n=1)
 
void RemoveElectron (G4int, G4int number=1)
 
void MoveOneElectron (G4int, G4int)
 
G4double GetNbElectrons () const
 
void PrintState () const
 
G4TrackBuildTrack (G4double globalTime, const G4ThreeVector &Position)
 
G4double GetKineticEnergy () const
 
G4double GetDiffusionVelocity () const
 
const std::vector< const
G4MolecularDissociationChannel * > * 
GetDissociationChannels () const
 
G4int GetFakeParticleID () const
 
G4int GetMoleculeID () const
 
const G4MoleculeDefinitionGetDefinition () const
 
void SetDiffusionCoefficient (G4double)
 
G4double GetDiffusionCoefficient () const
 
G4double GetDiffusionCoefficient (const G4Material *, double temperature) const
 
void SetDecayTime (G4double)
 
G4double GetDecayTime () const
 
void SetVanDerVaalsRadius (G4double)
 
G4double GetVanDerVaalsRadius () const
 
const G4ElectronOccupancyGetElectronOccupancy () const
 
G4int GetCharge () const
 
void SetMass (G4double)
 
G4double GetMass () const
 
const G4StringGetLabel () const
 
void SetLabel (const G4String &label)
 
void ChangeConfigurationToLabel (const G4String &label)
 
const G4MolecularConfigurationGetMolecularConfiguration () 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 *)
 
G4TrackGetTrack ()
 
const G4TrackGetTrack () const
 
void RecordCurrentPositionNTime ()
 
const G4ThreeVectorGetPosition () const
 
double operator[] (int i) const
 
const G4ThreeVectorGetPreStepPosition () const
 
G4double GetPreStepLocalTime () const
 
G4double GetPreStepGlobalTime () const
 
void SetPrevious (G4IT *)
 
void SetNext (G4IT *)
 
G4ITGetPrevious ()
 
G4ITGetNext ()
 
const G4ITGetPrevious () const
 
const G4ITGetNext () const
 
void SetITBox (G4ITBox *)
 
const G4ITBoxGetITBox () const
 
void TakeOutBox ()
 
void SetNode (G4KDNode_Base *)
 
G4KDNode_BaseGetNode () const
 
void SetParentID (int, int)
 
void GetParentID (int &, int &)
 
G4TrackingInformationGetTrackingInfo ()
 
G4TrackListNodeGetListNode ()
 
void SetListNode (G4TrackListNode *node)
 
virtual const G4ITType GetITType () const =0
 
- Public Member Functions inherited from G4VUserTrackInformation
 G4VUserTrackInformation ()
 
 G4VUserTrackInformation (const G4String &infoType)
 
 G4VUserTrackInformation (const G4VUserTrackInformation &)
 
G4VUserTrackInformationoperator= (const G4VUserTrackInformation &)
 
virtual ~G4VUserTrackInformation ()
 
const G4StringGetType () const
 

Static Public Member Functions

static G4MoleculeGetMolecule (const G4Track *)
 

Private Member Functions

 G4Molecule ()
 

Private Attributes

const G4MolecularConfigurationfpMolecularConfiguration
 

Additional Inherited Members

- Protected Member Functions inherited from G4IT
 G4IT (const G4IT &)
 
G4IToperator= (const G4IT &)
 
- Protected Attributes inherited from G4IT
G4TrackfpTrack
 

Detailed Description

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.

View newest version in sPHENIX GitHub at line 98 of file G4Molecule.hh

Constructor & Destructor Documentation

G4Molecule::G4Molecule ( const G4Molecule right)

Definition at line 104 of file G4Molecule.cc.

View newest version in sPHENIX GitHub 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.

View newest version in sPHENIX GitHub at line 180 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetOrCreateMolecularConfiguration().

+ Here is the call graph for this function:

G4Molecule::G4Molecule ( G4MoleculeDefinition pMoleculeDefinition,
int  charge 
)

Definition at line 189 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 189 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetOrCreateMolecularConfiguration().

+ Here is the call graph for this function:

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.

View newest version in sPHENIX GitHub at line 200 of file G4Molecule.cc

References FatalErrorInArgument, fpMolecularConfiguration, G4Exception(), G4MoleculeDefinition::GetGroundStateElectronOccupancy(), G4MolecularConfiguration::GetOrCreateMolecularConfiguration(), and G4ElectronOccupancy::RemoveElectron().

+ Here is the call graph for this function:

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.

View newest version in sPHENIX GitHub at line 245 of file G4Molecule.cc

References FatalErrorInArgument, fpMolecularConfiguration, G4Exception(), G4MoleculeDefinition::GetGroundStateElectronOccupancy(), G4MolecularConfiguration::GetOrCreateMolecularConfiguration(), and G4ElectronOccupancy::RemoveElectron().

+ Here is the call graph for this function:

G4Molecule::G4Molecule ( const G4MolecularConfiguration pMolecularConfiguration)

Definition at line 285 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 285 of file G4Molecule.cc

References fpMolecularConfiguration.

G4Molecule::~G4Molecule ( )
virtual

Definition at line 160 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 160 of file G4Molecule.cc

References fpMolecularConfiguration, G4IT::fpTrack, G4Track::GetGlobalTime(), G4Track::GetPosition(), and G4VMoleculeCounter::Instance().

+ Here is the call graph for this function:

G4Molecule::G4Molecule ( )
private

Default molecule builder

Definition at line 151 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 151 of file G4Molecule.cc

References fpMolecularConfiguration.

Member Function Documentation

void G4Molecule::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 315 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 315 of file G4Molecule.cc

References G4MolecularConfiguration::AddElectron(), and fpMolecularConfiguration.

Referenced by G4DNAChemistryManager::CreateWaterMolecule().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Track * G4Molecule::BuildTrack ( G4double  globalTime,
const G4ThreeVector Position 
)

Definition at line 373 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 373 of file G4Molecule.cc

References FatalErrorInArgument, fpMolecularConfiguration, G4IT::fpTrack, G4Exception(), G4UniformRand, G4MolecularConfiguration::GetDefinition(), GetKineticEnergy(), G4Track::GetPosition(), G4VMoleculeCounter::Instance(), G4VMoleculeCounter::InUse(), phi, pi, G4Track::SetUserInformation(), and theta().

Referenced by G4MoleculeGun::BuildAndPushTrack(), G4DNAChemistryManager::CreateWaterMolecule(), G4DNAMolecularReaction::MakeReaction(), and G4DNAChemistryManager::PushMolecule().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4Molecule::ChangeConfigurationToLabel ( const G4String label)

Definition at line 546 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 546 of file G4Molecule.cc

References fpMolecularConfiguration, G4MolecularConfiguration::GetDefinition(), and G4MolecularConfiguration::GetMolecularConfiguration().

Referenced by G4DNAElectronHoleRecombination::MakeReaction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4Molecule::ExciteMolecule ( G4int  excitationLevel)

Method used in Geant4-DNA to excite water molecules

Definition at line 301 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 301 of file G4Molecule.cc

References G4MolecularConfiguration::ExciteMolecule(), and fpMolecularConfiguration.

Referenced by G4DNAChemistryManager::CreateWaterMolecule().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4Molecule::GetAtomsNumber ( ) const

Returns the nomber of atoms compouning the molecule

Definition at line 352 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 352 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetAtomsNumber().

+ Here is the call graph for this function:

G4int G4Molecule::GetCharge ( ) const

Returns the charge of molecule.

Definition at line 488 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 488 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetCharge().

+ Here is the call graph for this function:

G4double G4Molecule::GetDecayTime ( ) const

Returns the decay time of the molecule.

Definition at line 474 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 474 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetDecayTime().

Referenced by G4DNAMolecularDissociation::GetMeanLifeTime().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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.

View newest version in sPHENIX GitHub at line 509 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetDefinition().

+ Here is the call graph for this function:

G4double G4Molecule::GetDiffusionCoefficient ( ) const

Returns the diffusion coefficient D.

Definition at line 516 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 516 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetDiffusionCoefficient().

Referenced by G4DNABrownianTransportation::AlongStepGetPhysicalInteractionLength(), G4DNABrownianTransportation::ComputeStep(), and G4DNAMoleculeEncounterStepper::Utils::Utils().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4Molecule::GetDiffusionCoefficient ( const G4Material pMaterial,
double  temperature 
) const

Returns the diffusion coefficient D.

Definition at line 523 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 523 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetDiffusionCoefficient().

+ Here is the call graph for this function:

G4double G4Molecule::GetDiffusionVelocity ( ) const

Definition at line 428 of file G4Molecule.cc.

View newest version in sPHENIX GitHub 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().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const vector< const G4MolecularDissociationChannel * > * G4Molecule::GetDissociationChannels ( ) const

Definition at line 453 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 453 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetDissociationChannels().

+ Here is the call graph for this function:

const G4ElectronOccupancy * G4Molecule::GetElectronOccupancy ( ) const

Returns the object ElectronOccupancy describing the electronic configuration of the molecule.

Definition at line 502 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 502 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetElectronOccupancy().

+ Here is the call graph for this function:

G4int G4Molecule::GetFakeParticleID ( ) const

Definition at line 460 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 460 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetFakeParticleID().

+ Here is the call graph for this function:

const G4String & G4Molecule::GetFormatedName ( ) const

Returns the formated name of the molecule

Definition at line 345 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 345 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetFormatedName().

+ Here is the call graph for this function:

virtual G4ITType G4Molecule::GetITSubType ( ) const
inlinevirtual

Reimplemented from G4IT.

Definition at line 130 of file G4Molecule.hh.

View newest version in sPHENIX GitHub at line 130 of file G4Molecule.hh

References GetMoleculeID().

+ Here is the call graph for this function:

G4double G4Molecule::GetKineticEnergy ( ) const

Definition at line 416 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 416 of file G4Molecule.cc

References source.hepunit::c_squared, E, fpMolecularConfiguration, GetDiffusionVelocity(), G4MolecularConfiguration::GetMass(), and v.

Referenced by BuildTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4String & G4Molecule::GetLabel ( ) const

Returns the label of the molecule configuration

Definition at line 539 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 539 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetLabel().

+ Here is the call graph for this function:

G4double G4Molecule::GetMass ( ) const

Returns the total mass of the molecule.

Definition at line 495 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 495 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetMass().

+ Here is the call graph for this function:

const G4MolecularConfiguration * G4Molecule::GetMolecularConfiguration ( ) const

Definition at line 532 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 532 of file G4Molecule.cc

References fpMolecularConfiguration.

Referenced by G4DNAMolecularReaction::MakeReaction(), G4DNASecondOrderReaction::PostStepGetPhysicalInteractionLength(), and G4DNAMolecularReaction::TestReactibility().

+ Here is the caller graph for this function:

G4Molecule * G4Molecule::GetMolecule ( const G4Track track)
static

Definition at line 90 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 90 of file G4Molecule.cc

References GetIT().

+ Here is the call graph for this function:

G4int G4Molecule::GetMoleculeID ( ) const

Definition at line 467 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 467 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetMoleculeID().

Referenced by G4DNAElectronHoleRecombination::FindReactant(), GetITSubType(), and operator int().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4String & G4Molecule::GetName ( void  ) const
virtual

Returns the name of the molecule

Implements G4IT.

Definition at line 338 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 338 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetName().

Referenced by G4DNAMoleculeEncounterStepper::CalculateStep(), G4DNAMoleculeEncounterStepper::CheckAndRecordResults(), G4DNABrownianTransportation::ComputeStep(), G4DNABrownianTransportation::Diffusion(), Run::MoleculeCountNeuron(), G4DNASecondOrderReaction::PostStepDoIt(), G4DNABrownianTransportation::PostStepDoIt(), and G4DNAIndirectHit::Print().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4Molecule::GetNbElectrons ( ) const

Returns the number of electron.

Definition at line 359 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 359 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetNbElectrons().

+ Here is the call graph for this function:

G4double G4Molecule::GetVanDerVaalsRadius ( ) const

Definition at line 481 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 481 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::GetVanDerVaalsRadius().

+ Here is the call graph for this function:

void G4Molecule::IonizeMolecule ( G4int  ionizationLevel)

Method used in Geant4-DNA to ionize water molecules

Definition at line 308 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 308 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::IonizeMolecule().

Referenced by G4DNAChemistryManager::CreateWaterMolecule().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Molecule::ITDef ( G4Molecule  ) const
void G4Molecule::MoveOneElectron ( G4int  orbitToFree,
G4int  orbitToFill 
)

Move one electron from an orbit to another.

Definition at line 330 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 330 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::MoveOneElectron().

+ Here is the call graph for this function:

void G4Molecule::operator delete ( void aMolecule)
inline

Definition at line 313 of file G4Molecule.hh.

View newest version in sPHENIX GitHub at line 313 of file G4Molecule.hh

References aMoleculeAllocator().

+ Here is the call graph for this function:

G4Molecule::operator int ( ) const
inline

Definition at line 125 of file G4Molecule.hh.

View newest version in sPHENIX GitHub at line 125 of file G4Molecule.hh

References GetMoleculeID().

+ Here is the call graph for this function:

void * G4Molecule::operator new ( size_t  )
inline

Definition at line 302 of file G4Molecule.hh.

View newest version in sPHENIX GitHub at line 302 of file G4Molecule.hh

References aMoleculeAllocator().

+ Here is the call graph for this function:

G4bool G4Molecule::operator!= ( const G4Molecule right) const

Definition at line 133 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 133 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 144 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 144 of file G4Molecule.cc

References fpMolecularConfiguration.

G4Molecule & G4Molecule::operator= ( const G4Molecule right)

Definition at line 113 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 113 of file G4Molecule.cc

References fpMolecularConfiguration.

G4bool G4Molecule::operator== ( const G4Molecule right) const

Definition at line 122 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 122 of file G4Molecule.cc

References fpMolecularConfiguration.

void G4Molecule::PrintState ( ) const

Show the electronic state of the molecule.

Definition at line 366 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 366 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::PrintState().

+ Here is the call graph for this function:

void G4Molecule::RemoveElectron ( G4int  orbit,
G4int  number = 1 
)

Remove n electrons to a given orbit.

Definition at line 322 of file G4Molecule.cc.

View newest version in sPHENIX GitHub at line 322 of file G4Molecule.cc

References fpMolecularConfiguration, and G4MolecularConfiguration::RemoveElectron().

+ Here is the call graph for this function:

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.

View newest version in sPHENIX GitHub at line 292 of file G4Molecule.cc

References fpMolecularConfiguration, G4MolecularConfiguration::GetDefinition(), and G4MolecularConfiguration::GetOrCreateMolecularConfiguration().

+ Here is the call graph for this function:

void G4Molecule::SetLabel ( const G4String label)
void G4Molecule::SetMass ( G4double  )

Set the total mass of the molecule.

void G4Molecule::SetVanDerVaalsRadius ( G4double  )

The Van Der Valls Radius of the molecule

Member Data Documentation


The documentation for this class was generated from the following files: