Geant4 11.1.1
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 ()=default
 
 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 102 of file G4Molecule.cc.

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

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 178 of file G4Molecule.cc.

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

◆ G4Molecule() [3/6]

G4Molecule::G4Molecule ( G4MoleculeDefinition pMoleculeDefinition,
int  charge 
)

Definition at line 187 of file G4Molecule.cc.

188{
189 fpMolecularConfiguration = G4MolecularConfiguration::GetOrCreateMolecularConfiguration(pMoleculeDefinition,
190 charge);
191}

◆ 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 198 of file G4Molecule.cc.

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

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

◆ G4Molecule() [6/6]

G4Molecule::G4Molecule ( const G4MolecularConfiguration pMolecularConfiguration)

Definition at line 283 of file G4Molecule.cc.

284{
285 fpMolecularConfiguration = pMolecularConfiguration;
286}

◆ ~G4Molecule()

G4Molecule::~G4Molecule ( )
virtual

Definition at line 158 of file G4Molecule.cc.

159{
160 if (fpTrack != nullptr)
161 {
162 if (G4VMoleculeCounter::Instance()->InUse())
163 {
165 RemoveAMoleculeAtTime(fpMolecularConfiguration,
167 &(fpTrack->GetPosition()));
168 }
169 fpTrack = nullptr;
170 }
171 fpMolecularConfiguration = nullptr;
172}
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 313 of file G4Molecule.cc.

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

Referenced by G4DNAChemistryManager::CreateWaterMolecule().

◆ BuildTrack()

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

Definition at line 371 of file G4Molecule.cc.

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

545{
546 // TODO check fpMolecularConfiguration already exists
547 // and new one as well
548 // TODO notify for stack change
550 fpMolecularConfiguration->GetDefinition(), label);
551
552 assert(fpMolecularConfiguration != nullptr);
553}
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 299 of file G4Molecule.cc.

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

Referenced by G4DNAChemistryManager::CreateWaterMolecule().

◆ GetAtomsNumber()

G4int G4Molecule::GetAtomsNumber ( ) const

Returns the nomber of atoms compouning the molecule

Definition at line 350 of file G4Molecule.cc.

351{
352 return fpMolecularConfiguration->GetAtomsNumber();
353}

◆ GetCharge()

G4int G4Molecule::GetCharge ( ) const

Returns the charge of molecule.

Definition at line 486 of file G4Molecule.cc.

487{
488 return fpMolecularConfiguration->GetCharge();
489}

◆ GetDecayTime()

G4double G4Molecule::GetDecayTime ( ) const

Returns the decay time of the molecule.

Definition at line 472 of file G4Molecule.cc.

473{
474 return fpMolecularConfiguration->GetDecayTime();
475}

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 507 of file G4Molecule.cc.

508{
509 return fpMolecularConfiguration->GetDefinition();
510}

◆ GetDiffusionCoefficient() [1/2]

G4double G4Molecule::GetDiffusionCoefficient ( ) const

Returns the diffusion coefficient D.

Definition at line 514 of file G4Molecule.cc.

515{
516 return fpMolecularConfiguration->GetDiffusionCoefficient();
517}

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 521 of file G4Molecule.cc.

523{
524 return fpMolecularConfiguration->GetDiffusionCoefficient(pMaterial,
525 temperature);
526}

◆ GetDiffusionVelocity()

G4double G4Molecule::GetDiffusionVelocity ( ) const

Definition at line 426 of file G4Molecule.cc.

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

Referenced by GetKineticEnergy().

◆ GetDissociationChannels()

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

Definition at line 451 of file G4Molecule.cc.

452{
453 return fpMolecularConfiguration->GetDissociationChannels();
454}
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 500 of file G4Molecule.cc.

501{
502 return fpMolecularConfiguration->GetElectronOccupancy();
503}
const G4ElectronOccupancy * GetElectronOccupancy() const

◆ GetFakeParticleID()

G4int G4Molecule::GetFakeParticleID ( ) const

Definition at line 458 of file G4Molecule.cc.

459{
460 return fpMolecularConfiguration->GetFakeParticleID();
461}

◆ GetFormatedName()

const G4String & G4Molecule::GetFormatedName ( ) const

Returns the formated name of the molecule

Definition at line 343 of file G4Molecule.cc.

344{
345 return fpMolecularConfiguration->GetFormatedName();
346}
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:465

◆ GetKineticEnergy()

G4double G4Molecule::GetKineticEnergy ( ) const

Definition at line 414 of file G4Molecule.cc.

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

Referenced by BuildTrack().

◆ GetLabel()

const G4String & G4Molecule::GetLabel ( ) const

Returns the label of the molecule configuration

Definition at line 537 of file G4Molecule.cc.

538{
539 return fpMolecularConfiguration->GetLabel();
540}
const G4String & GetLabel() const

◆ GetMass()

G4double G4Molecule::GetMass ( ) const

Returns the total mass of the molecule.

Definition at line 493 of file G4Molecule.cc.

494{
495 return fpMolecularConfiguration->GetMass();
496}

◆ GetMolecularConfiguration()

◆ GetMolecule()

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

Definition at line 88 of file G4Molecule.cc.

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

Referenced by G4DNAIRT::Sampling().

◆ GetMoleculeID()

G4int G4Molecule::GetMoleculeID ( ) const

Definition at line 465 of file G4Molecule.cc.

466{
467 return fpMolecularConfiguration->GetMoleculeID();
468}

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

◆ GetName()

◆ GetNbElectrons()

G4double G4Molecule::GetNbElectrons ( ) const

Returns the number of electron.

Definition at line 357 of file G4Molecule.cc.

358{
359 return fpMolecularConfiguration->GetNbElectrons();
360}

◆ GetVanDerVaalsRadius()

G4double G4Molecule::GetVanDerVaalsRadius ( ) const

Definition at line 479 of file G4Molecule.cc.

480{
481 return fpMolecularConfiguration->GetVanDerVaalsRadius();
482}

◆ IonizeMolecule()

void G4Molecule::IonizeMolecule ( G4int  ionizationLevel)

Method used in Geant4-DNA to ionize water molecules

Definition at line 306 of file G4Molecule.cc.

307{
308 fpMolecularConfiguration = fpMolecularConfiguration->IonizeMolecule(ionizationLevel);
309}
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 328 of file G4Molecule.cc.

329{
330 fpMolecularConfiguration =
331 fpMolecularConfiguration->MoveOneElectron(orbitToFree, orbitToFill);
332}
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()
Definition: G4Molecule.cc:59

◆ 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 131 of file G4Molecule.cc.

132{
133 return !(*this == right);
134}

◆ 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 142 of file G4Molecule.cc.

143{
144 return fpMolecularConfiguration < right.fpMolecularConfiguration;
145}

◆ operator=()

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

Definition at line 111 of file G4Molecule.cc.

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

◆ operator==()

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

Definition at line 120 of file G4Molecule.cc.

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

◆ PrintState()

void G4Molecule::PrintState ( ) const

Show the electronic state of the molecule.

Definition at line 364 of file G4Molecule.cc.

365{
366 fpMolecularConfiguration->PrintState();
367}

◆ RemoveElectron()

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

Remove n electrons to a given orbit.

Definition at line 320 of file G4Molecule.cc.

321{
322 fpMolecularConfiguration =
323 fpMolecularConfiguration->RemoveElectron(orbit, number);
324}
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 290 of file G4Molecule.cc.

291{
292 fpMolecularConfiguration =
294 *pElectronOcc);
295}

◆ 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: