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

#include <G4DNAElectronHoleRecombination.hh>

+ Inheritance diagram for G4DNAElectronHoleRecombination:

Public Member Functions

 G4DNAElectronHoleRecombination ()
 
virtual ~G4DNAElectronHoleRecombination ()
 
void Create ()
 
void StartTracking (G4Track *)
 
virtual G4bool IsApplicable (const G4ParticleDefinition &)
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
virtual G4VParticleChangeAtRestDoIt (const G4Track &, const G4Step &)
 
virtual G4VParticleChangePostStepDoIt (const G4Track &, const G4Step &)
 
virtual G4double GetMeanFreePath (const G4Track &aTrack, G4double previousStepSize, G4ForceCondition *condition)
 
virtual G4double GetMeanLifeTime (const G4Track &aTrack, G4ForceCondition *condition)
 
- Public Member Functions inherited from G4VITRestDiscreteProcess
 G4VITRestDiscreteProcess ()=delete
 
 G4VITRestDiscreteProcess (const G4String &, G4ProcessType aType=fNotDefined)
 
 G4VITRestDiscreteProcess (const G4VITRestDiscreteProcess &)=delete
 
G4VITRestDiscreteProcessoperator= (const G4VITRestDiscreteProcess &right)=delete
 
 ~G4VITRestDiscreteProcess () override
 
G4double PostStepGetPhysicalInteractionLength (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition) override
 
G4VParticleChangePostStepDoIt (const G4Track &, const G4Step &) override
 
G4double AtRestGetPhysicalInteractionLength (const G4Track &, G4ForceCondition *) override
 
G4VParticleChangeAtRestDoIt (const G4Track &, const G4Step &) override
 
G4double AlongStepGetPhysicalInteractionLength (const G4Track &, G4double, G4double, G4double &, G4GPILSelection *) override
 
G4VParticleChangeAlongStepDoIt (const G4Track &, const G4Step &) override
 
- Public Member Functions inherited from G4VITProcess
 G4VITProcess (const G4String &name, G4ProcessType type=fNotDefined)
 
virtual ~G4VITProcess ()
 
 G4VITProcess (const G4VITProcess &other)
 
G4VITProcessoperator= (const G4VITProcess &other)
 
G4bool operator== (const G4VITProcess &right) const
 
G4bool operator!= (const G4VITProcess &right) const
 
size_t GetProcessID () const
 
G4shared_ptr< G4ProcessState_LockGetProcessState ()
 
void SetProcessState (G4shared_ptr< G4ProcessState_Lock > aProcInfo)
 
void ResetProcessState ()
 
virtual void StartTracking (G4Track *)
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
G4double GetInteractionTimeLeft ()
 
virtual void ResetNumberOfInteractionLengthLeft ()
 
G4bool ProposesTimeStep () const
 
- Public Member Functions inherited from G4VProcess
 G4VProcess (const G4String &aName="NoName", G4ProcessType aType=fNotDefined)
 
 G4VProcess (const G4VProcess &right)
 
virtual ~G4VProcess ()
 
G4VProcessoperator= (const G4VProcess &)=delete
 
G4bool operator== (const G4VProcess &right) const
 
G4bool operator!= (const G4VProcess &right) const
 
virtual G4VParticleChangePostStepDoIt (const G4Track &track, const G4Step &stepData)=0
 
virtual G4VParticleChangeAlongStepDoIt (const G4Track &track, const G4Step &stepData)=0
 
virtual G4VParticleChangeAtRestDoIt (const G4Track &track, const G4Step &stepData)=0
 
virtual G4double AlongStepGetPhysicalInteractionLength (const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &proposedSafety, G4GPILSelection *selection)=0
 
virtual G4double AtRestGetPhysicalInteractionLength (const G4Track &track, G4ForceCondition *condition)=0
 
virtual G4double PostStepGetPhysicalInteractionLength (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)=0
 
G4double GetCurrentInteractionLength () const
 
void SetPILfactor (G4double value)
 
G4double GetPILfactor () const
 
G4double AlongStepGPIL (const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &proposedSafety, G4GPILSelection *selection)
 
G4double AtRestGPIL (const G4Track &track, G4ForceCondition *condition)
 
G4double PostStepGPIL (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
 
virtual G4bool IsApplicable (const G4ParticleDefinition &)
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
virtual void PreparePhysicsTable (const G4ParticleDefinition &)
 
virtual G4bool StorePhysicsTable (const G4ParticleDefinition *, const G4String &, G4bool)
 
virtual G4bool RetrievePhysicsTable (const G4ParticleDefinition *, const G4String &, G4bool)
 
const G4StringGetPhysicsTableFileName (const G4ParticleDefinition *, const G4String &directory, const G4String &tableName, G4bool ascii=false)
 
const G4StringGetProcessName () const
 
G4ProcessType GetProcessType () const
 
void SetProcessType (G4ProcessType)
 
G4int GetProcessSubType () const
 
void SetProcessSubType (G4int)
 
virtual void StartTracking (G4Track *)
 
virtual void EndTracking ()
 
virtual void SetProcessManager (const G4ProcessManager *)
 
virtual const G4ProcessManagerGetProcessManager ()
 
virtual void ResetNumberOfInteractionLengthLeft ()
 
G4double GetNumberOfInteractionLengthLeft () const
 
G4double GetTotalNumberOfInteractionLengthTraversed () const
 
G4bool isAtRestDoItIsEnabled () const
 
G4bool isAlongStepDoItIsEnabled () const
 
G4bool isPostStepDoItIsEnabled () const
 
virtual void DumpInfo () const
 
virtual void ProcessDescription (std::ostream &outfile) const
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
virtual void SetMasterProcess (G4VProcess *masterP)
 
const G4VProcessGetMasterProcess () const
 
virtual void BuildWorkerPhysicsTable (const G4ParticleDefinition &part)
 
virtual void PrepareWorkerPhysicsTable (const G4ParticleDefinition &)
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VITProcess
static const size_t & GetMaxProcessIndex ()
 
- Static Public Member Functions inherited from G4VProcess
static const G4StringGetProcessTypeName (G4ProcessType)
 
virtual G4double GetMeanFreePath (const G4Track &aTrack, G4double previousStepSize, G4ForceCondition *condition)=0
 
virtual G4double GetMeanLifeTime (const G4Track &aTrack, G4ForceCondition *condition)=0
 
- Protected Member Functions inherited from G4VITProcess
void RetrieveProcessInfo ()
 
void CreateInfo ()
 
template<typename T >
T * GetState ()
 
virtual void SubtractNumberOfInteractionLengthLeft (G4double previousStepSize)
 
virtual void ClearInteractionTimeLeft ()
 
virtual void ClearNumberOfInteractionLengthLeft ()
 
void SetInstantiateProcessState (G4bool flag)
 
G4bool InstantiateProcessState ()
 
- Protected Member Functions inherited from G4VProcess
void SubtractNumberOfInteractionLengthLeft (G4double prevStepSize)
 
void ClearNumberOfInteractionLengthLeft ()
 
- Protected Attributes inherited from G4VITProcess
G4shared_ptr< G4ProcessStatefpState
 
G4bool fProposesTimeStep
 
- Protected Attributes inherited from G4VProcess
const G4ProcessManageraProcessManager = nullptr
 
G4VParticleChangepParticleChange = nullptr
 
G4ParticleChange aParticleChange
 
G4double theNumberOfInteractionLengthLeft = -1.0
 
G4double currentInteractionLength = -1.0
 
G4double theInitialNumberOfInteractionLength = -1.0
 
G4String theProcessName
 
G4String thePhysicsTableFileName
 
G4ProcessType theProcessType = fNotDefined
 
G4int theProcessSubType = -1
 
G4double thePILfactor = 1.0
 
G4int verboseLevel = 0
 
G4bool enableAtRestDoIt = true
 
G4bool enableAlongStepDoIt = true
 
G4bool enablePostStepDoIt = true
 

Detailed Description

Definition at line 36 of file G4DNAElectronHoleRecombination.hh.

Constructor & Destructor Documentation

◆ G4DNAElectronHoleRecombination()

G4DNAElectronHoleRecombination::G4DNAElectronHoleRecombination ( )

Definition at line 106 of file G4DNAElectronHoleRecombination.cc.

107 : G4VITRestDiscreteProcess("G4DNAElectronHoleRecombination",
109{
110 Create();
111}
@ fElectromagnetic

◆ ~G4DNAElectronHoleRecombination()

G4DNAElectronHoleRecombination::~G4DNAElectronHoleRecombination ( )
virtualdefault

Member Function Documentation

◆ AtRestDoIt()

G4VParticleChange * G4DNAElectronHoleRecombination::AtRestDoIt ( const G4Track track,
const G4Step  
)
virtual

Reimplemented from G4VITRestDiscreteProcess.

Definition at line 138 of file G4DNAElectronHoleRecombination.cc.

140{
141 fParticleChange.Initialize(track);
144 MakeReaction(track);
145 return &fParticleChange;
146}
virtual void Initialize(const G4Track &)
virtual void ClearInteractionTimeLeft()
virtual void ClearNumberOfInteractionLengthLeft()

Referenced by PostStepDoIt().

◆ BuildPhysicsTable()

virtual void G4DNAElectronHoleRecombination::BuildPhysicsTable ( const G4ParticleDefinition )
inlinevirtual

Reimplemented from G4VITProcess.

Definition at line 47 of file G4DNAElectronHoleRecombination.hh.

47{}

◆ Create()

void G4DNAElectronHoleRecombination::Create ( )

Definition at line 115 of file G4DNAElectronHoleRecombination.cc.

116{
117 pParticleChange = &fParticleChange;
118 enableAtRestDoIt = true;
119 enableAlongStepDoIt = false;
120 enablePostStepDoIt = true;
121
123
125 // ie G4DNAElectronHoleRecombination uses a state class
126 // inheriting from G4ProcessState
127
128 fIsInitialized = false;
129 fProposesTimeStep = true;
130 fpMoleculeDensity = nullptr;
131
132 verboseLevel = 0;
133}
void SetInstantiateProcessState(G4bool flag)
G4bool fProposesTimeStep
G4bool enableAtRestDoIt
Definition: G4VProcess.hh:359
G4int verboseLevel
Definition: G4VProcess.hh:356
G4bool enableAlongStepDoIt
Definition: G4VProcess.hh:360
void SetProcessSubType(G4int)
Definition: G4VProcess.hh:406
G4bool enablePostStepDoIt
Definition: G4VProcess.hh:361
G4VParticleChange * pParticleChange
Definition: G4VProcess.hh:321

Referenced by G4DNAElectronHoleRecombination().

◆ GetMeanFreePath()

G4double G4DNAElectronHoleRecombination::GetMeanFreePath ( const G4Track aTrack,
G4double  previousStepSize,
G4ForceCondition condition 
)
virtual

Implements G4VITRestDiscreteProcess.

Definition at line 360 of file G4DNAElectronHoleRecombination.cc.

363{
364 if (FindReactant(track))
365 {
366 return 0.;
367 }
368
369 return DBL_MAX;
370}
#define DBL_MAX
Definition: templates.hh:62

◆ GetMeanLifeTime()

G4double G4DNAElectronHoleRecombination::GetMeanLifeTime ( const G4Track aTrack,
G4ForceCondition condition 
)
virtual

Implements G4VITRestDiscreteProcess.

Definition at line 374 of file G4DNAElectronHoleRecombination.cc.

376{
377 if (FindReactant(track))
378 {
379 return 0.;
380 }
381
382 return DBL_MAX;
383}

◆ IsApplicable()

G4bool G4DNAElectronHoleRecombination::IsApplicable ( const G4ParticleDefinition particle)
virtual

Reimplemented from G4VProcess.

Definition at line 342 of file G4DNAElectronHoleRecombination.cc.

344{
345 if (&particle != G4H2O::DefinitionIfExists())
346 {
347 return false;
348 }
349
351 {
352 BuildDissociationChannels();
353 }
354
355 return true;
356}
static G4H2O * DefinitionIfExists()
Definition: G4H2O.cc:80
G4bool IsMasterThread()
Definition: G4Threading.cc:124

◆ PostStepDoIt()

G4VParticleChange * G4DNAElectronHoleRecombination::PostStepDoIt ( const G4Track track,
const G4Step step 
)
virtual

Reimplemented from G4VITRestDiscreteProcess.

Definition at line 385 of file G4DNAElectronHoleRecombination.cc.

387{
388 return AtRestDoIt(track, step);
389}
virtual G4VParticleChange * AtRestDoIt(const G4Track &, const G4Step &)

◆ StartTracking()

void G4DNAElectronHoleRecombination::StartTracking ( G4Track pTrack)
virtual

Reimplemented from G4VITProcess.

Definition at line 150 of file G4DNAElectronHoleRecombination.cc.

151{
153 G4VITProcess::fpState.reset(new State());
155}
#define State(X)
virtual void StartTracking(G4Track *)
Definition: G4VITProcess.cc:85
G4shared_ptr< G4ProcessState > fpState
virtual void StartTracking(G4Track *)
Definition: G4VProcess.cc:87

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