Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4Molecule Class Reference

#include <G4Molecule.hh>

+ Inheritance diagram for G4Molecule:

Public Member Functions

 ITDef (G4Molecule) void Print() const
 
void * operator 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 const G4StringGetName () const =0
 
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
 
virtual G4ITType GetITSubType () const
 
- Public Member Functions inherited from G4VUserTrackInformation
 G4VUserTrackInformation ()
 
 G4VUserTrackInformation (const G4String &infoType)
 
 G4VUserTrackInformation (const G4VUserTrackInformation &)
 
G4VUserTrackInformationoperator= (const G4VUserTrackInformation &)
 
virtual ~G4VUserTrackInformation ()
 
virtual void Print () const
 
const G4StringGetType () const
 

Static Public Member Functions

static G4MoleculeGetMolecule (const G4Track *)
 

Additional Inherited Members

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

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.

Constructor & Destructor Documentation

◆ G4Molecule() [1/6]

G4Molecule::G4Molecule ( const G4Molecule right)

Definition at line 104 of file G4Molecule.cc.

105 : G4VUserTrackInformation("G4Molecule")
106 , G4IT(right)
107{
108 fpMolecularConfiguration = right.fpMolecularConfiguration;
109}
G4IT()
Definition: G4IT.cc:67

Referenced by G4Molecule().

◆ G4Molecule() [2/6]

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.

181 : G4VUserTrackInformation("G4Molecule")
182 , G4IT()
183{
184 fpMolecularConfiguration = G4MolecularConfiguration::GetOrCreateMolecularConfiguration(pMoleculeDefinition);
185}
static G4MolecularConfiguration * GetOrCreateMolecularConfiguration(const G4MoleculeDefinition *)

◆ G4Molecule() [3/6]

G4Molecule::G4Molecule ( G4MoleculeDefinition pMoleculeDefinition,
int  charge 
)

Definition at line 189 of file G4Molecule.cc.

190{
191 fpMolecularConfiguration = G4MolecularConfiguration::GetOrCreateMolecularConfiguration(pMoleculeDefinition,
192 charge);
193}

◆ G4Molecule() [4/6]

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.

203 : G4VUserTrackInformation("G4Molecule")
204 , G4IT()
205{
206 if (pMoleculeDefinition->GetGroundStateElectronOccupancy())
207 {
208 G4ElectronOccupancy dynElectronOccupancy(*pMoleculeDefinition->GetGroundStateElectronOccupancy());
209
210 if (OrbitalToFill != 0)
211 {
212 dynElectronOccupancy.RemoveElectron(OrbitalToFree - 1, 1);
213 dynElectronOccupancy.AddElectron(OrbitalToFill - 1, 1);
214 // dynElectronOccupancy.DumpInfo(); // DEBUG
215 }
216
217 if (OrbitalToFill == 0)
218 {
219 dynElectronOccupancy.RemoveElectron(OrbitalToFree - 1, 1);
220 // dynElectronOccupancy.DumpInfo(); // DEBUG
221 }
222
223 fpMolecularConfiguration =
225 pMoleculeDefinition, dynElectronOccupancy);
226 }
227 else
228 {
229 fpMolecularConfiguration = nullptr;
231 "G4Molecule::G4Molecule(G4MoleculeDefinition* pMoleculeDefinition, "
232 "G4int OrbitalToFree, G4int OrbitalToFill)",
233 "G4Molecule_wrong_usage_of_constructor",
235 "If you want to use this constructor, the molecule definition has to be "
236 "first defined with electron occupancies");
237 }
238}
@ FatalErrorInArgument
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
Definition: G4Exception.cc:35
const G4ElectronOccupancy * GetGroundStateElectronOccupancy() const

◆ G4Molecule() [5/6]

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.

248 : G4VUserTrackInformation("G4Molecule")
249 , G4IT()
250{
251 if (pMoleculeDefinition->GetGroundStateElectronOccupancy())
252 {
253 G4ElectronOccupancy dynElectronOccupancy(*pMoleculeDefinition->GetGroundStateElectronOccupancy());
254
255 if (excitation)
256 {
257 dynElectronOccupancy.RemoveElectron(level, 1);
258 dynElectronOccupancy.AddElectron(5, 1);
259 // dynElectronOccupancy.DumpInfo(); // DEBUG
260 }
261 else
262 {
263 dynElectronOccupancy.RemoveElectron(level, 1);
264 // dynElectronOccupancy.DumpInfo(); // DEBUG
265 }
266
267 fpMolecularConfiguration = G4MolecularConfiguration::GetOrCreateMolecularConfiguration(pMoleculeDefinition,
268 dynElectronOccupancy);
269 }
270 else
271 {
272 fpMolecularConfiguration = nullptr;
274 "G4Molecule::G4Molecule(G4MoleculeDefinition* pMoleculeDefinition, "
275 "G4int OrbitalToFree, G4int OrbitalToFill)",
276 "G4Molecule_wrong_usage_of_constructor",
278 "If you want to use this constructor, the molecule definition has to be "
279 "first defined with electron occupancies");
280 }
281}

◆ G4Molecule() [6/6]

G4Molecule::G4Molecule ( const G4MolecularConfiguration pMolecularConfiguration)

Definition at line 285 of file G4Molecule.cc.

286{
287 fpMolecularConfiguration = pMolecularConfiguration;
288}

◆ ~G4Molecule()

G4Molecule::~G4Molecule ( )
virtual

Definition at line 160 of file G4Molecule.cc.

161{
162 if (fpTrack != nullptr)
163 {
164 if (G4VMoleculeCounter::Instance()->InUse())
165 {
167 RemoveAMoleculeAtTime(fpMolecularConfiguration,
169 &(fpTrack->GetPosition()));
170 }
171 fpTrack = nullptr;
172 }
173 fpMolecularConfiguration = nullptr;
174}
G4Track * fpTrack
Definition: G4IT.hh:167
const G4ThreeVector & GetPosition() const
G4double GetGlobalTime() const
static G4VMoleculeCounter * Instance()

Member Function Documentation

◆ AddElectron()

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.

316{
317 fpMolecularConfiguration = fpMolecularConfiguration->AddElectron(orbit, number);
318}
G4MolecularConfiguration * AddElectron(G4int orbit, G4int n=1) const

Referenced by G4DNAChemistryManager::CreateWaterMolecule().

◆ BuildTrack()

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

Definition at line 373 of file G4Molecule.cc.

375{
376 if (fpTrack != nullptr)
377 {
378 G4Exception("G4Molecule::BuildTrack", "Molecule001", FatalErrorInArgument,
379 "A track was already assigned to this molecule");
380 }
381
382 // Kinetic Values
383 // Set a random direction to the molecule
384 G4double costheta = (2 * G4UniformRand() - 1);
385 G4double theta = acos(costheta);
386 G4double phi = 2 * pi * G4UniformRand();
387
388 G4double xMomentum = cos(phi) * sin(theta);
389 G4double yMomentum = sin(theta) * sin(phi);
390 G4double zMomentum = costheta;
391
392 G4ThreeVector MomentumDirection(xMomentum, yMomentum, zMomentum);
394
395 G4DynamicParticle* dynamicParticle = new G4DynamicParticle(
396 fpMolecularConfiguration->GetDefinition(), MomentumDirection,
397 KineticEnergy);
398
400 {
402 AddAMoleculeAtTime(fpMolecularConfiguration,
403 globalTime,
404 &(fpTrack->GetPosition()));
405 }
406
407 //Set the Track
408 fpTrack = new G4Track(dynamicParticle, globalTime, position);
410
411 return fpTrack;
412}
double G4double
Definition: G4Types.hh:83
#define G4UniformRand()
Definition: Randomize.hh:52
const G4MoleculeDefinition * GetDefinition() const
G4double GetKineticEnergy() const
Definition: G4Molecule.cc:416
void SetUserInformation(G4VUserTrackInformation *aValue) const
const G4double pi

Referenced by G4MoleculeGun::BuildAndPushTrack(), G4DNAChemistryManager::CreateWaterMolecule(), and G4DNAIRT::Sampling().

◆ ChangeConfigurationToLabel()

void G4Molecule::ChangeConfigurationToLabel ( const G4String label)

Definition at line 546 of file G4Molecule.cc.

547{
548 // TODO check fpMolecularConfiguration already exists
549 // and new one as well
550 // TODO notify for stack change
552 fpMolecularConfiguration->GetDefinition(), label);
553
554 assert(fpMolecularConfiguration != nullptr);
555}
static G4MolecularConfiguration * GetMolecularConfiguration(const G4MoleculeDefinition *, const G4String &label)

◆ ExciteMolecule()

void G4Molecule::ExciteMolecule ( G4int  excitationLevel)

Method used in Geant4-DNA to excite water molecules

Definition at line 301 of file G4Molecule.cc.

302{
303 fpMolecularConfiguration = fpMolecularConfiguration->ExciteMolecule(excitationLevel);
304}
G4MolecularConfiguration * ExciteMolecule(G4int) const

Referenced by G4DNAChemistryManager::CreateWaterMolecule().

◆ GetAtomsNumber()

G4int G4Molecule::GetAtomsNumber ( ) const

Returns the nomber of atoms compouning the molecule

Definition at line 352 of file G4Molecule.cc.

353{
354 return fpMolecularConfiguration->GetAtomsNumber();
355}

◆ GetCharge()

G4int G4Molecule::GetCharge ( ) const

Returns the charge of molecule.

Definition at line 488 of file G4Molecule.cc.

489{
490 return fpMolecularConfiguration->GetCharge();
491}

◆ GetDecayTime()

G4double G4Molecule::GetDecayTime ( ) const

Returns the decay time of the molecule.

Definition at line 474 of file G4Molecule.cc.

475{
476 return fpMolecularConfiguration->GetDecayTime();
477}

Referenced by G4DNAMolecularDissociation::GetMeanLifeTime().

◆ GetDefinition()

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.

510{
511 return fpMolecularConfiguration->GetDefinition();
512}

◆ GetDiffusionCoefficient() [1/2]

G4double G4Molecule::GetDiffusionCoefficient ( ) const

Returns the diffusion coefficient D.

Definition at line 516 of file G4Molecule.cc.

517{
518 return fpMolecularConfiguration->GetDiffusionCoefficient();
519}

Referenced by G4DNABrownianTransportation::AlongStepGetPhysicalInteractionLength(), G4DNABrownianTransportation::ComputeStep(), and G4DNAIRT::Sampling().

◆ GetDiffusionCoefficient() [2/2]

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

Returns the diffusion coefficient D.

Definition at line 523 of file G4Molecule.cc.

525{
526 return fpMolecularConfiguration->GetDiffusionCoefficient(pMaterial,
527 temperature);
528}

◆ GetDiffusionVelocity()

G4double G4Molecule::GetDiffusionVelocity ( ) const

Definition at line 428 of file G4Molecule.cc.

429{
430 double moleculeMass = fpMolecularConfiguration->GetMass() / (c_squared);
431
432 ////
433 // Different possibilities
434 ////
435 // Ideal Gaz case : Maxwell Boltzmann Distribution
436 // double sigma = k_Boltzmann * fgTemperature / mass;
437 // return G4RandGauss::shoot( 0, sigma );
438 ////
439 // Ideal Gaz case : mean velocity from equipartition theorem
440 return sqrt(3 * k_Boltzmann *
442 ////
443 // Using this approximation for liquid is wrong
444 // However the brownian process avoid taking
445 // care of energy consideration and plays only
446 // with positions
447}

Referenced by GetKineticEnergy().

◆ GetDissociationChannels()

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

Definition at line 453 of file G4Molecule.cc.

454{
455 return fpMolecularConfiguration->GetDissociationChannels();
456}
const std::vector< const G4MolecularDissociationChannel * > * GetDissociationChannels() const

◆ GetElectronOccupancy()

const G4ElectronOccupancy * G4Molecule::GetElectronOccupancy ( ) const

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

Definition at line 502 of file G4Molecule.cc.

503{
504 return fpMolecularConfiguration->GetElectronOccupancy();
505}
const G4ElectronOccupancy * GetElectronOccupancy() const

◆ GetFakeParticleID()

G4int G4Molecule::GetFakeParticleID ( ) const

Definition at line 460 of file G4Molecule.cc.

461{
462 return fpMolecularConfiguration->GetFakeParticleID();
463}

◆ GetFormatedName()

const G4String & G4Molecule::GetFormatedName ( ) const

Returns the formated name of the molecule

Definition at line 345 of file G4Molecule.cc.

346{
347 return fpMolecularConfiguration->GetFormatedName();
348}
const G4String & GetFormatedName() const

◆ GetITSubType()

virtual G4ITType G4Molecule::GetITSubType ( ) const
inlinevirtual

Reimplemented from G4IT.

Definition at line 130 of file G4Molecule.hh.

131 {
132 return GetMoleculeID();
133 }
G4int GetMoleculeID() const
Definition: G4Molecule.cc:467

◆ GetKineticEnergy()

G4double G4Molecule::GetKineticEnergy ( ) const

Definition at line 416 of file G4Molecule.cc.

417{
418 ////
419 // Ideal Gaz case
420 double v = GetDiffusionVelocity();
421 double E = (fpMolecularConfiguration->GetMass() / (c_squared)) * (v * v) / 2.;
422 ////
423 return E;
424}
G4double GetDiffusionVelocity() const
Definition: G4Molecule.cc:428

Referenced by BuildTrack().

◆ GetLabel()

const G4String & G4Molecule::GetLabel ( ) const

Returns the label of the molecule configuration

Definition at line 539 of file G4Molecule.cc.

540{
541 return fpMolecularConfiguration->GetLabel();
542}
const G4String & GetLabel() const

◆ GetMass()

G4double G4Molecule::GetMass ( ) const

Returns the total mass of the molecule.

Definition at line 495 of file G4Molecule.cc.

496{
497 return fpMolecularConfiguration->GetMass();
498}

◆ GetMolecularConfiguration()

const G4MolecularConfiguration * G4Molecule::GetMolecularConfiguration ( ) const

◆ GetMolecule()

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

Definition at line 90 of file G4Molecule.cc.

91{
92 return (G4Molecule*)(GetIT(track));
93}
G4IT * GetIT(const G4Track *track)
Definition: G4IT.cc:48

Referenced by G4DNAIRT::Sampling().

◆ GetMoleculeID()

G4int G4Molecule::GetMoleculeID ( ) const

Definition at line 467 of file G4Molecule.cc.

468{
469 return fpMolecularConfiguration->GetMoleculeID();
470}

Referenced by GetITSubType(), and operator int().

◆ GetName()

◆ GetNbElectrons()

G4double G4Molecule::GetNbElectrons ( ) const

Returns the number of electron.

Definition at line 359 of file G4Molecule.cc.

360{
361 return fpMolecularConfiguration->GetNbElectrons();
362}

◆ GetVanDerVaalsRadius()

G4double G4Molecule::GetVanDerVaalsRadius ( ) const

Definition at line 481 of file G4Molecule.cc.

482{
483 return fpMolecularConfiguration->GetVanDerVaalsRadius();
484}

◆ IonizeMolecule()

void G4Molecule::IonizeMolecule ( G4int  ionizationLevel)

Method used in Geant4-DNA to ionize water molecules

Definition at line 308 of file G4Molecule.cc.

309{
310 fpMolecularConfiguration = fpMolecularConfiguration->IonizeMolecule(ionizationLevel);
311}
G4MolecularConfiguration * IonizeMolecule(G4int) const

Referenced by G4DNAChemistryManager::CreateWaterMolecule().

◆ ITDef()

G4Molecule::ITDef ( G4Molecule  ) const

◆ MoveOneElectron()

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

Move one electron from an orbit to another.

Definition at line 330 of file G4Molecule.cc.

331{
332 fpMolecularConfiguration =
333 fpMolecularConfiguration->MoveOneElectron(orbitToFree, orbitToFill);
334}
G4MolecularConfiguration * MoveOneElectron(G4int, G4int) const

◆ operator delete()

void G4Molecule::operator delete ( void *  aMolecule)
inline

Definition at line 313 of file G4Molecule.hh.

315{
316 aMoleculeAllocator()->FreeSingle((G4Molecule *)aMolecule);
317}
G4DLLIMPORT G4Allocator< G4Molecule > *& aMoleculeAllocator()

◆ operator int()

G4Molecule::operator int ( ) const
inline

Definition at line 125 of file G4Molecule.hh.

126 {
127 return GetMoleculeID();
128 }

◆ operator new()

void * G4Molecule::operator new ( size_t  )
inline

Definition at line 302 of file G4Molecule.hh.

304{
305 if (!aMoleculeAllocator())
306 {
308 }
309 return (void *)aMoleculeAllocator()->MallocSingle();
310}

◆ operator!=()

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

Definition at line 133 of file G4Molecule.cc.

134{
135 return !(*this == right);
136}

◆ operator<()

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.

145{
146 return fpMolecularConfiguration < right.fpMolecularConfiguration;
147}

◆ operator=()

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

Definition at line 113 of file G4Molecule.cc.

114{
115 if (&right == this) return *this;
116 fpMolecularConfiguration = right.fpMolecularConfiguration;
117 return *this;
118}

◆ operator==()

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

Definition at line 122 of file G4Molecule.cc.

123{
124 if (fpMolecularConfiguration == right.fpMolecularConfiguration)
125 {
126 return true;
127 }
128 return false;
129}

◆ PrintState()

void G4Molecule::PrintState ( ) const

Show the electronic state of the molecule.

Definition at line 366 of file G4Molecule.cc.

367{
368 fpMolecularConfiguration->PrintState();
369}

◆ RemoveElectron()

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

Remove n electrons to a given orbit.

Definition at line 322 of file G4Molecule.cc.

323{
324 fpMolecularConfiguration =
325 fpMolecularConfiguration->RemoveElectron(orbit, number);
326}
G4MolecularConfiguration * RemoveElectron(G4int, G4int number=1) const

◆ SetDecayTime()

void G4Molecule::SetDecayTime ( G4double  )

Set the decay time of the molecule.

◆ SetDiffusionCoefficient()

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.

◆ SetElectronOccupancy()

void G4Molecule::SetElectronOccupancy ( const G4ElectronOccupancy pElectronOcc)

Will set up the correct molecularConfiguration given an electron configuration

Definition at line 292 of file G4Molecule.cc.

293{
294 fpMolecularConfiguration =
296 *pElectronOcc);
297}

◆ SetLabel()

void G4Molecule::SetLabel ( const G4String label)

◆ SetMass()

void G4Molecule::SetMass ( G4double  )

Set the total mass of the molecule.

◆ SetVanDerVaalsRadius()

void G4Molecule::SetVanDerVaalsRadius ( G4double  )

The Van Der Valls Radius of the molecule


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