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

#include <G4DNAMolecularStepByStepModel.hh>

+ Inheritance diagram for G4DNAMolecularStepByStepModel:

Public Member Functions

 G4DNAMolecularStepByStepModel (const G4String &name="DNAMolecularStepByStepModel")
 
 G4DNAMolecularStepByStepModel (const G4String &name, std::unique_ptr< G4VITTimeStepComputer > pTimeStepper, std::unique_ptr< G4VITReactionProcess > pReactionProcess)
 
G4DNAMolecularStepByStepModeloperator= (const G4DNAMolecularStepByStepModel &)=delete
 
 G4DNAMolecularStepByStepModel (const G4DNAMolecularStepByStepModel &)=delete
 
 ~G4DNAMolecularStepByStepModel () override
 
void PrintInfo () override
 
void Initialize () override
 
void SetReactionModel (G4VDNAReactionModel *)
 
G4VDNAReactionModelGetReactionModel ()
 
- Public Member Functions inherited from G4VITStepModel
 G4VITStepModel (const G4String &aName="NoName")
 
 G4VITStepModel (std::unique_ptr< G4VITTimeStepComputer > pTimeStepper, std::unique_ptr< G4VITReactionProcess > pReactionProcess, const G4String &aName="NoName")
 
 G4VITStepModel (const G4VITStepModel &other)=delete
 
G4VITStepModeloperator= (const G4VITStepModel &other)=delete
 
virtual ~G4VITStepModel ()=default
 
void PrepareNewTimeStep ()
 
void GetApplicable (G4ITType &type1, G4ITType &type2)
 
G4VITTimeStepComputerGetTimeStepper ()
 
const G4StringGetName ()
 
G4VITReactionProcessGetReactionProcess ()
 
void SetReactionTable (G4ITReactionTable *)
 
const G4ITReactionTableGetReactionTable ()
 

Protected Attributes

const G4DNAMolecularReactionTable *& fMolecularReactionTable
 
std::unique_ptr< G4VDNAReactionModelfpReactionModel
 
- Protected Attributes inherited from G4VITStepModel
G4String fName
 
std::unique_ptr< G4VITTimeStepComputerfpTimeStepper
 
std::unique_ptr< G4VITReactionProcessfpReactionProcess
 
const G4ITReactionTablefpReactionTable
 
G4ITType fType1
 
G4ITType fType2
 

Detailed Description

G4DNAMolecularStepByStepModel :

  • TimeStepper : G4DNAMolecularEncounterStepper
  • ReactionProcess : G4DNAMolecularReaction Before each step, the next minimum encounter time is calculated for each pair of molecule. The minimum time step is selected. All the molecules are stepped within this time step. Then, only the relevant pair of molecules are checked for reaction.

Definition at line 63 of file G4DNAMolecularStepByStepModel.hh.

Constructor & Destructor Documentation

◆ G4DNAMolecularStepByStepModel() [1/3]

G4DNAMolecularStepByStepModel::G4DNAMolecularStepByStepModel ( const G4String & name = "DNAMolecularStepByStepModel")

Definition at line 41 of file G4DNAMolecularStepByStepModel.cc.

43 std::make_unique<G4DNAMoleculeEncounterStepper>(),
44 std::make_unique<G4DNAMolecularReaction>())
45{
46}
G4DNAMolecularStepByStepModel(const G4String &name="DNAMolecularStepByStepModel")

◆ G4DNAMolecularStepByStepModel() [2/3]

G4DNAMolecularStepByStepModel::G4DNAMolecularStepByStepModel ( const G4String & name,
std::unique_ptr< G4VITTimeStepComputer > pTimeStepper,
std::unique_ptr< G4VITReactionProcess > pReactionProcess )

Definition at line 48 of file G4DNAMolecularStepByStepModel.cc.

51 : G4VITStepModel(std::move(pTimeStepper),
52 std::move(pReactionProcess),
53 name)
55{
56 fType1 = G4Molecule::ITType();
57 fType2 = G4Molecule::ITType();
58}
ReturnType & reference_cast(OriginalType &source)
const G4DNAMolecularReactionTable *& fMolecularReactionTable
const G4ITReactionTable * fpReactionTable
G4VITStepModel(const G4String &aName="NoName")

◆ G4DNAMolecularStepByStepModel() [3/3]

G4DNAMolecularStepByStepModel::G4DNAMolecularStepByStepModel ( const G4DNAMolecularStepByStepModel & )
delete

◆ ~G4DNAMolecularStepByStepModel()

G4DNAMolecularStepByStepModel::~G4DNAMolecularStepByStepModel ( )
overridedefault

Member Function Documentation

◆ GetReactionModel()

G4VDNAReactionModel * G4DNAMolecularStepByStepModel::GetReactionModel ( )

Definition at line 94 of file G4DNAMolecularStepByStepModel.cc.

95{
96 return fpReactionModel.get();
97}
std::unique_ptr< G4VDNAReactionModel > fpReactionModel

◆ Initialize()

void G4DNAMolecularStepByStepModel::Initialize ( )
overridevirtual

Reimplemented from G4VITStepModel.

Definition at line 62 of file G4DNAMolecularStepByStepModel.cc.

63{
64 if(fpReactionTable == nullptr)
65 {
67 }
68
70 {
71 fpReactionModel = std::make_unique<G4DNASmoluchowskiReactionModel>();
72 }
73
75
76 ((G4DNAMolecularReaction*) fpReactionProcess.get())->SetReactionModel(fpReactionModel.get());
77 ((G4DNAMoleculeEncounterStepper*) fpTimeStepper.get())->SetReactionModel(fpReactionModel.get());
78
80}
static G4DNAMolecularReactionTable * GetReactionTable()
void SetReactionTable(G4ITReactionTable *)
std::unique_ptr< G4VITTimeStepComputer > fpTimeStepper
virtual void Initialize()
std::unique_ptr< G4VITReactionProcess > fpReactionProcess

◆ operator=()

G4DNAMolecularStepByStepModel & G4DNAMolecularStepByStepModel::operator= ( const G4DNAMolecularStepByStepModel & )
delete

◆ PrintInfo()

void G4DNAMolecularStepByStepModel::PrintInfo ( )
overridevirtual

Reimplemented from G4VITStepModel.

Definition at line 82 of file G4DNAMolecularStepByStepModel.cc.

83{
84#ifdef G4VERBOSE
85 G4cout << fName << " will be used" << G4endl;
86#endif
87}
#define G4endl
Definition G4ios.hh:67
G4GLOB_DLL std::ostream G4cout

◆ SetReactionModel()

void G4DNAMolecularStepByStepModel::SetReactionModel ( G4VDNAReactionModel * pReactionModel)

Member Data Documentation

◆ fMolecularReactionTable

const G4DNAMolecularReactionTable*& G4DNAMolecularStepByStepModel::fMolecularReactionTable
protected

Definition at line 81 of file G4DNAMolecularStepByStepModel.hh.

◆ fpReactionModel

std::unique_ptr<G4VDNAReactionModel> G4DNAMolecularStepByStepModel::fpReactionModel
protected

Definition at line 82 of file G4DNAMolecularStepByStepModel.hh.

Referenced by GetReactionModel(), Initialize(), and SetReactionModel().


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