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

#include <geant4/tree/geant4-10.6-release/source/processes/electromagnetic/dna/utils/include/G4DNAChemistryManager.hh>

+ Inheritance diagram for G4DNAChemistryManager:
+ Collaboration diagram for G4DNAChemistryManager:

Classes

struct  ThreadLocalData
 

Public Member Functions

G4bool Notify (G4ApplicationState requestedState) override
 
void SetNewValue (G4UIcommand *, G4String) override
 
G4String GetCurrentValue (G4UIcommand *pCommand) override
 
G4bool IsChemistryActivated ()
 
void SetChemistryActivation (G4bool)
 
void SetChemistryList (G4VUserChemistryList &)
 
void SetChemistryList (std::unique_ptr< G4VUserChemistryList >)
 
void SetChemistryList (G4VUserChemistryList *)
 
void Deregister (G4VUserChemistryList &)
 
void Initialize ()
 
void Run ()
 
void Clear ()
 
void SetGun (G4ITGun *pChemSpeciesGun)
 Inject custom species to the simulation.
 
void SetPhysChemIO (std::unique_ptr< G4VPhysChemIO > pPhysChemIO)
 
void SetVerbose (G4int verbose)
 
void UseAsStandalone (G4bool flag)
 
G4bool IsCounterResetWhenRunEnds () const
 
void ResetCounterWhenRunEnds (G4bool resetCounterWhenRunEnds)
 
void ForceMasterReinitialization ()
 
void TagThreadForReinitialization ()
 
void ForceThreadReinitialization ()
 
void ForceRebuildingPhysicsTable ()
 
void WriteInto (const G4String &, std::ios_base::openmode mode=std::ios_base::out)
 
void AddEmptyLineInOutputFile ()
 
void CloseFile ()
 
void CreateWaterMolecule (ElectronicModification, G4int, const G4Track *)
 
void CreateSolvatedElectron (const G4Track *, G4ThreeVector *pFinalPosition=nullptr)
 
void PushMolecule (std::unique_ptr< G4Molecule > pMolecule, G4double time, const G4ThreeVector &position, G4int parentID)
 
- Public Member Functions inherited from G4UImessenger
 G4UImessenger ()
 
 G4UImessenger (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
virtual ~G4UImessenger ()
 
G4bool operator== (const G4UImessenger &messenger) const
 
G4bool CommandsShouldBeInMaster () const
 
- Public Member Functions inherited from G4VStateDependent
 G4VStateDependent (G4bool bottom=false)
 
virtual ~G4VStateDependent ()
 
G4bool operator== (const G4VStateDependent &right) const
 
G4bool operator!= (const G4VStateDependent &right) const
 

Static Public Member Functions

static G4DNAChemistryManagerInstance ()
 
static G4DNAChemistryManagerGetInstanceIfExists ()
 
static void DeleteInstance ()
 
static G4bool IsActivated ()
 

Protected Member Functions

 ~G4DNAChemistryManager () override
 
void HandleStandaloneInitialization ()
 
void PushTrack (G4Track *)
 
void SetGlobalTemperature (G4double temperatureKelvin)
 
G4DNAWaterExcitationStructureGetExcitationLevel ()
 
G4DNAWaterIonisationStructureGetIonisationLevel ()
 
void InitializeFile ()
 
void InitializeMaster ()
 
void InitializeThread ()
 
void InitializeThreadSharedData ()
 
 G4DNAChemistryManager ()
 
- Protected Member Functions inherited from G4UImessenger
G4String ItoS (G4int i)
 
G4String DtoS (G4double a)
 
G4String BtoS (G4bool b)
 
G4int StoI (G4String s)
 
G4long StoL (G4String s)
 
G4double StoD (G4String s)
 
G4bool StoB (G4String s)
 
void AddUIcommand (G4UIcommand *newCommand)
 
void CreateDirectory (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
template<typename T >
TCreateCommand (const G4String &cname, const G4String &dsc)
 

Private Attributes

std::unique_ptr< G4UIdirectoryfpChemDNADirectory
 
std::unique_ptr< G4UIcmdWithABoolfpActivateChem
 
std::unique_ptr
< G4UIcmdWithAnInteger
fpRunChem
 
std::unique_ptr
< G4UIcmdWithoutParameter
fpSkipReactionsFromChemList
 
std::unique_ptr
< G4UIcmdWithADoubleAndUnit
fpScaleForNewTemperature
 
std::unique_ptr
< G4UIcmdWithoutParameter
fpInitChem
 
G4bool fActiveChemistry
 
G4bool fMasterInitialized
 
G4bool fForceThreadReinitialization
 
std::unique_ptr
< G4DNAWaterExcitationStructure
fpExcitationLevel
 
std::unique_ptr
< G4DNAWaterIonisationStructure
fpIonisationLevel
 
std::unique_ptr
< G4VUserChemistryList
fpUserChemistryList
 
G4bool fOwnChemistryList
 
G4bool fUseInStandalone
 
G4bool fPhysicsTableBuilt
 
G4bool fSkipReactions
 
G4bool fGeometryClosed
 
G4int fVerbose
 
G4bool fResetCounterWhenRunEnds
 

Static Private Attributes

static G4DNAChemistryManagerfgInstance = nullptr
 
static G4ThreadLocal
ThreadLocalData
fpThreadData = nullptr
 

Additional Inherited Members

- Protected Attributes inherited from G4UImessenger
G4UIdirectorybaseDir
 
G4String baseDirName
 
G4bool commandsShouldBeInMaster
 

Detailed Description

WARNING: THIS CLASS IS A PROTOTYPE G4DNAChemistryManager is called from the physics models. It creates the water molecules and the solvated electrons and and send them to G4ITStepManager to be treated in the chemistry stage. For this, the fActiveChemistry flag needs to be on. It is also possible to give already molecule's pointers already built. G4DNAChemistryManager will then be in charge of creating the track and loading it to the IT system. The user can also ask to create a file containing a information about the creation of water molecules and solvated electrons.

Definition at line 87 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 87 of file G4DNAChemistryManager.hh

Constructor & Destructor Documentation

G4DNAChemistryManager::~G4DNAChemistryManager ( )
overrideprotected

Definition at line 164 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 164 of file G4DNAChemistryManager.cc

References Clear(), and fgInstance.

+ Here is the call graph for this function:

G4DNAChemistryManager::G4DNAChemistryManager ( )
protected

Definition at line 101 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 101 of file G4DNAChemistryManager.cc

References fpRunChem, and fpScaleForNewTemperature.

Referenced by Instance().

+ Here is the caller graph for this function:

Member Function Documentation

void G4DNAChemistryManager::AddEmptyLineInOutputFile ( )

Definition at line 564 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 564 of file G4DNAChemistryManager.cc

References G4DNAChemistryManager::ThreadLocalData::fpPhysChemIO, and fpThreadData.

void G4DNAChemistryManager::Clear ( )

Definition at line 172 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 172 of file G4DNAChemistryManager.cc

References G4VMoleculeCounter::DeleteInstance(), G4DNAMolecularReactionTable::DeleteInstance(), G4MolecularConfiguration::DeleteManager(), Deregister(), fpActivateChem, fpChemDNADirectory, fpExcitationLevel, fpInitChem, fpIonisationLevel, fpRunChem, fpSkipReactionsFromChemList, fpThreadData, and fpUserChemistryList.

Referenced by Notify(), and ~G4DNAChemistryManager().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::CloseFile ( )

Close the file specified with WriteInto

Definition at line 574 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 574 of file G4DNAChemistryManager.cc

References G4DNAChemistryManager::ThreadLocalData::fpPhysChemIO, and fpThreadData.

Referenced by Run().

+ Here is the caller graph for this function:

void G4DNAChemistryManager::CreateSolvatedElectron ( const G4Track pIncomingTrack,
G4ThreeVector pFinalPosition = nullptr 
)

This method should be used by the physics model of the ElectronSolvatation process.

Definition at line 662 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 662 of file G4DNAChemistryManager.cc

References G4Electron_aq::Definition(), fActiveChemistry, G4DNAChemistryManager::ThreadLocalData::fpPhysChemIO, fpThreadData, G4Track::GetPosition(), G4Track::GetTrackID(), picosecond, and PushMolecule().

Referenced by G4DNATransformElectronModel::SampleSecondaries(), and G4TDNAOneStepThermalizationModel< MODEL >::SampleSecondaries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::CreateWaterMolecule ( ElectronicModification  modification,
G4int  electronicLevel,
const G4Track pIncomingTrack 
)

Method used by DNA physics model to create a water molecule. The ElectronicModification is a flag telling whether the molecule is ionized or excited, the electronic level is calculated by the model and the IncomingTrack is the track responsible for the creation of this molecule (electron, proton...).

Definition at line 606 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 606 of file G4DNAChemistryManager.cc

References G4Molecule::AddElectron(), G4Molecule::BuildTrack(), G4H2O::Definition(), eDissociativeAttachment, eExcitedMolecule, eIonizedMolecule, energy, G4DNAWaterExcitationStructure::ExcitationEnergy(), G4Molecule::ExciteMolecule(), fActiveChemistry, G4DNAChemistryManager::ThreadLocalData::fpPhysChemIO, fpThreadData, fStopButAlive, GetExcitationLevel(), GetIonisationLevel(), G4Track::GetPosition(), G4Track::GetTrackID(), G4DNAWaterIonisationStructure::IonisationEnergy(), G4Molecule::IonizeMolecule(), picosecond, PushTrack(), G4Track::SetKineticEnergy(), G4Track::SetParentID(), and G4Track::SetTrackStatus().

Referenced by G4DNADingfelderChargeDecreaseModel::SampleSecondaries(), G4DNARuddIonisationExtendedModel::SampleSecondaries(), G4DNARuddIonisationModel::SampleSecondaries(), G4DNABornExcitationModel1::SampleSecondaries(), G4DNABornIonisationModel2::SampleSecondaries(), G4DNABornIonisationModel1::SampleSecondaries(), G4DNABornExcitationModel2::SampleSecondaries(), G4DNAMillerGreenExcitationModel::SampleSecondaries(), G4DNAEmfietzoglouExcitationModel::SampleSecondaries(), G4DNAEmfietzoglouIonisationModel::SampleSecondaries(), G4DNACPA100ExcitationModel::SampleSecondaries(), G4DNACPA100IonisationModel::SampleSecondaries(), and G4DNAPTBExcitationModel::SampleSecondaries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::DeleteInstance ( )
static

Definition at line 202 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 202 of file G4DNAChemistryManager.cc

References chemManExistence, fgInstance, G4cerr, G4endl, and G4TemplateAutoLock< _Mutex_t >::unlock().

+ Here is the call graph for this function:

void G4DNAChemistryManager::Deregister ( G4VUserChemistryList chemistryList)

Definition at line 730 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 730 of file G4DNAChemistryManager.cc

References fOwnChemistryList, and fpUserChemistryList.

Referenced by Clear(), and G4VUserChemistryList::~G4VUserChemistryList().

+ Here is the caller graph for this function:

void G4DNAChemistryManager::ForceMasterReinitialization ( )

Definition at line 780 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 780 of file G4DNAChemistryManager.cc

References fMasterInitialized, and InitializeMaster().

+ Here is the call graph for this function:

void G4DNAChemistryManager::ForceRebuildingPhysicsTable ( )

Definition at line 773 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 773 of file G4DNAChemistryManager.cc

References fPhysicsTableBuilt.

void G4DNAChemistryManager::ForceThreadReinitialization ( )

Definition at line 788 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 788 of file G4DNAChemistryManager.cc

References fForceThreadReinitialization.

G4String G4DNAChemistryManager::GetCurrentValue ( G4UIcommand pCommand)
overridevirtual

Reimplemented from G4UImessenger.

Definition at line 278 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 278 of file G4DNAChemistryManager.cc

References G4UIcommand::ConvertToString(), fActiveChemistry, fpActivateChem, fpScaleForNewTemperature, fpSkipReactionsFromChemList, fSkipReactions, and G4MolecularConfiguration::GetGlobalTemperature().

+ Here is the call graph for this function:

G4DNAWaterExcitationStructure * G4DNAChemistryManager::GetExcitationLevel ( )
protected

Definition at line 584 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 584 of file G4DNAChemistryManager.cc

References fpExcitationLevel.

Referenced by CreateWaterMolecule().

+ Here is the caller graph for this function:

G4DNAChemistryManager * G4DNAChemistryManager::GetInstanceIfExists ( )
static

Definition at line 157 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 157 of file G4DNAChemistryManager.cc

References fgInstance.

Referenced by G4VUserChemistryList::~G4VUserChemistryList().

+ Here is the caller graph for this function:

G4DNAWaterIonisationStructure * G4DNAChemistryManager::GetIonisationLevel ( )
protected

Definition at line 595 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 595 of file G4DNAChemistryManager.cc

References fpIonisationLevel.

Referenced by CreateWaterMolecule().

+ Here is the caller graph for this function:

void G4DNAChemistryManager::HandleStandaloneInitialization ( )
protected

Definition at line 438 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 438 of file G4DNAChemistryManager.cc

References G4GeometryManager::CloseGeometry(), fGeometryClosed, fPhysicsTableBuilt, fpUserChemistryList, fUseInStandalone, fVerbose, G4cout, G4endl, G4GeometryManager::GetInstance(), and G4GeometryManager::OpenGeometry().

Referenced by InitializeThread().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::Initialize ( )

Definition at line 360 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 360 of file G4DNAChemistryManager.cc

References InitializeMaster(), InitializeThread(), InitializeThreadSharedData(), G4Threading::IsMultithreadedApplication(), and G4Threading::IsWorkerThread().

Referenced by G4EmDNAChemistry::ConstructProcess(), G4EmDNAChemistry_option1::ConstructProcess(), G4EmDNAChemistry_option2::ConstructProcess(), and SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::InitializeFile ( )
protected

Definition at line 507 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 507 of file G4DNAChemistryManager.cc

References G4DNAChemistryManager::ThreadLocalData::fpPhysChemIO, fpThreadData, fVerbose, G4cout, and G4endl.

Referenced by InitializeThread().

+ Here is the caller graph for this function:

void G4DNAChemistryManager::InitializeMaster ( )
protected

Definition at line 399 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 399 of file G4DNAChemistryManager.cc

References FatalException, fMasterInitialized, fpUserChemistryList, fSkipReactions, fVerbose, G4cout, G4endl, G4Exception(), G4DNAMolecularReactionTable::GetReactionTable(), and G4Scheduler::Instance().

Referenced by ForceMasterReinitialization(), and Initialize().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::InitializeThread ( )
protected

Definition at line 472 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 472 of file G4DNAChemistryManager.cc

References FatalException, fForceThreadReinitialization, fpThreadData, fpUserChemistryList, G4DNAChemistryManager::ThreadLocalData::fThreadInitialized, fVerbose, G4cout, G4endl, G4Exception(), G4DNAMolecularReactionTable::GetReactionTable(), HandleStandaloneInitialization(), G4Scheduler::Initialize(), InitializeFile(), G4VMoleculeCounter::InitializeInstance(), and G4Scheduler::Instance().

Referenced by Initialize(), Run(), and SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::InitializeThreadSharedData ( )
protected

Definition at line 298 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 298 of file G4DNAChemistryManager.cc

References G4MoleculeTable::Finalize(), G4MoleculeTable::Instance(), G4Threading::IsMasterThread(), and G4MoleculeTable::PrepareMolecularConfiguration().

Referenced by Initialize(), and Notify().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4DNAChemistryManager * G4DNAChemistryManager::Instance ( void  )
static

Definition at line 132 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 132 of file G4DNAChemistryManager.cc

References chemManExistence, fgInstance, fpThreadData, G4DNAChemistryManager(), and G4TemplateAutoLock< _Mutex_t >::unlock().

Referenced by G4EmDNAChemistry::ConstructProcess(), G4EmDNAChemistry_option1::ConstructProcess(), G4EmDNAChemistry_option2::ConstructProcess(), G4EmDNAChemistry::G4EmDNAChemistry(), G4EmDNAChemistry_option1::G4EmDNAChemistry_option1(), G4EmDNAChemistry_option2::G4EmDNAChemistry_option2(), StackingAction::NewStage(), G4DNADingfelderChargeDecreaseModel::SampleSecondaries(), G4DNAMeltonAttachmentModel::SampleSecondaries(), G4DNARuddIonisationExtendedModel::SampleSecondaries(), G4DNARuddIonisationModel::SampleSecondaries(), G4DNABornExcitationModel1::SampleSecondaries(), G4DNABornIonisationModel2::SampleSecondaries(), G4DNABornIonisationModel1::SampleSecondaries(), G4DNAMillerGreenExcitationModel::SampleSecondaries(), G4DNABornExcitationModel2::SampleSecondaries(), G4DNAEmfietzoglouExcitationModel::SampleSecondaries(), G4DNAEmfietzoglouIonisationModel::SampleSecondaries(), G4DNACPA100ExcitationModel::SampleSecondaries(), G4DNATransformElectronModel::SampleSecondaries(), G4DNACPA100IonisationModel::SampleSecondaries(), G4DNAPTBExcitationModel::SampleSecondaries(), and G4TDNAOneStepThermalizationModel< MODEL >::SampleSecondaries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4DNAChemistryManager::IsActivated ( )
static

Definition at line 523 of file G4DNAChemistryManager.cc.

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

References fgInstance, and IsChemistryActivated().

Referenced by G4EmDNAPhysicsActivator::ConstructProcess(), and G4TDNAOneStepThermalizationModel< MODEL >::SampleSecondaries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4DNAChemistryManager::IsChemistryActivated ( )

Definition at line 530 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 530 of file G4DNAChemistryManager.cc

References fActiveChemistry.

Referenced by IsActivated().

+ Here is the caller graph for this function:

G4bool G4DNAChemistryManager::IsCounterResetWhenRunEnds ( ) const

Definition at line 759 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 759 of file G4DNAChemistryManager.cc

References fResetCounterWhenRunEnds.

G4bool G4DNAChemistryManager::Notify ( G4ApplicationState  requestedState)
overridevirtual

Implements G4VStateDependent.

Definition at line 222 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 222 of file G4DNAChemistryManager.cc

References Clear(), fGeometryClosed, fVerbose, G4cout, G4endl, G4State_GeomClosed, G4State_Idle, G4State_Quit, and InitializeThreadSharedData().

+ Here is the call graph for this function:

void G4DNAChemistryManager::PushMolecule ( std::unique_ptr< G4Molecule pMolecule,
G4double  time,
const G4ThreeVector position,
G4int  parentID 
)

Definition at line 682 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 682 of file G4DNAChemistryManager.cc

References G4Molecule::BuildTrack(), fActiveChemistry, fAlive, PushTrack(), G4Track::SetParentID(), and G4Track::SetTrackStatus().

Referenced by CreateSolvatedElectron().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::PushTrack ( G4Track pTrack)
protected

Definition at line 745 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 745 of file G4DNAChemistryManager.cc

References G4ITTrackHolder::Instance(), and G4ITTrackHolder::Push().

Referenced by CreateWaterMolecule(), and PushMolecule().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::ResetCounterWhenRunEnds ( G4bool  resetCounterWhenRunEnds)

Definition at line 766 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 766 of file G4DNAChemistryManager.cc

References fResetCounterWhenRunEnds.

void G4DNAChemistryManager::Run ( )

Definition at line 310 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 310 of file G4DNAChemistryManager.cc

References CloseFile(), fActiveChemistry, FatalException, G4MoleculeTable::Finalize(), fMasterInitialized, fpThreadData, fResetCounterWhenRunEnds, G4DNAChemistryManager::ThreadLocalData::fThreadInitialized, G4Exception(), InitializeThread(), G4MoleculeTable::Instance(), G4VMoleculeCounter::Instance(), G4Scheduler::Instance(), G4Scheduler::Process(), and G4VMoleculeCounter::ResetCounter().

Referenced by StackingAction::NewStage(), and SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::SetChemistryActivation ( G4bool  flag)

Definition at line 537 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 537 of file G4DNAChemistryManager.cc

References fActiveChemistry.

Referenced by SetChemistryList(), and SetNewValue().

+ Here is the caller graph for this function:

void G4DNAChemistryManager::SetChemistryList ( G4VUserChemistryList chemistryList)

Chemistry list is managed outside the chemistry manager (eg. constructor).

Definition at line 714 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 714 of file G4DNAChemistryManager.cc

References fOwnChemistryList, fpUserChemistryList, and SetChemistryActivation().

Referenced by G4EmDNAChemistry::G4EmDNAChemistry(), G4EmDNAChemistry_option1::G4EmDNAChemistry_option1(), and G4EmDNAChemistry_option2::G4EmDNAChemistry_option2().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::SetChemistryList ( std::unique_ptr< G4VUserChemistryList pChemistryList)

Not a constructor or when used in standalone? Prefer this method.

Definition at line 721 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 721 of file G4DNAChemistryManager.cc

References fOwnChemistryList, fpUserChemistryList, and SetChemistryActivation().

+ Here is the call graph for this function:

void G4DNAChemistryManager::SetChemistryList ( G4VUserChemistryList pChemistryList)

Definition at line 707 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 707 of file G4DNAChemistryManager.cc

References fOwnChemistryList, fpUserChemistryList, and SetChemistryActivation().

+ Here is the call graph for this function:

void G4DNAChemistryManager::SetGlobalTemperature ( G4double  temperatureKelvin)
protected

Definition at line 699 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 699 of file G4DNAChemistryManager.cc

References G4DNAMolecularReactionTable::Instance(), G4DNAMolecularReactionTable::ScaleReactionRateForNewTemperature(), and G4MolecularConfiguration::SetGlobalTemperature().

Referenced by SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4DNAChemistryManager::SetGun ( G4ITGun pChemSpeciesGun)

Inject custom species to the simulation.

This method should be called per thread, possibly from ActionInitialisation::Build. One can decide to set the same gun for all threads. It is the user responsibility to handle the pointer deletion.

Definition at line 353 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 353 of file G4DNAChemistryManager.cc

References G4Scheduler::Instance(), and G4Scheduler::SetGun().

+ Here is the call graph for this function:

void G4DNAChemistryManager::SetNewValue ( G4UIcommand pCommand,
G4String  value 
)
overridevirtual

Reimplemented from G4UImessenger.

Definition at line 247 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 247 of file G4DNAChemistryManager.cc

References G4UIcommand::ConvertToInt(), fpActivateChem, fpInitChem, fpRunChem, fpScaleForNewTemperature, fpSkipReactionsFromChemList, fSkipReactions, G4UIcmdWithABool::GetNewBoolValue(), Initialize(), InitializeThread(), Run(), SetChemistryActivation(), and SetGlobalTemperature().

+ Here is the call graph for this function:

void G4DNAChemistryManager::SetPhysChemIO ( std::unique_ptr< G4VPhysChemIO pPhysChemIO)

Definition at line 88 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 88 of file G4DNAChemistryManager.cc

References G4DNAChemistryManager::ThreadLocalData::fpPhysChemIO, and fpThreadData.

void G4DNAChemistryManager::SetVerbose ( G4int  verbose)

Definition at line 752 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 752 of file G4DNAChemistryManager.cc

References fVerbose.

void G4DNAChemistryManager::TagThreadForReinitialization ( )

Definition at line 795 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 795 of file G4DNAChemistryManager.cc

References fpThreadData, and G4DNAChemistryManager::ThreadLocalData::fThreadInitialized.

void G4DNAChemistryManager::UseAsStandalone ( G4bool  flag)

If the chemistry module is used in standalone (ie. without running the physics stage beforehand), the physics table still needs to be built. It is therefore necessary to flag the chemistry module as being run in standalone.

Definition at line 346 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 346 of file G4DNAChemistryManager.cc

References fUseInStandalone.

void G4DNAChemistryManager::WriteInto ( const G4String output,
std::ios_base::openmode  mode = std::ios_base::out 
)

Tells the chemMan to write into a file the position and electronic state of the water molecule and the position thermalized or not of the solvated electron

Definition at line 544 of file G4DNAChemistryManager.cc.

View newest version in sPHENIX GitHub at line 544 of file G4DNAChemistryManager.cc

References G4String::data(), G4DNAChemistryManager::ThreadLocalData::fpPhysChemIO, fpThreadData, fVerbose, G4cout, and G4endl.

+ Here is the call graph for this function:

Member Data Documentation

G4bool G4DNAChemistryManager::fActiveChemistry
private
G4bool G4DNAChemistryManager::fForceThreadReinitialization
private

Definition at line 240 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 240 of file G4DNAChemistryManager.hh

Referenced by ForceThreadReinitialization(), and InitializeThread().

G4bool G4DNAChemistryManager::fGeometryClosed
private

Definition at line 251 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 251 of file G4DNAChemistryManager.hh

Referenced by HandleStandaloneInitialization(), and Notify().

G4DNAChemistryManager * G4DNAChemistryManager::fgInstance = nullptr
staticprivate

Definition at line 227 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 227 of file G4DNAChemistryManager.hh

Referenced by DeleteInstance(), GetInstanceIfExists(), Instance(), IsActivated(), and ~G4DNAChemistryManager().

G4bool G4DNAChemistryManager::fMasterInitialized
private

Definition at line 239 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 239 of file G4DNAChemistryManager.hh

Referenced by ForceMasterReinitialization(), InitializeMaster(), and Run().

G4bool G4DNAChemistryManager::fOwnChemistryList
private

Definition at line 246 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 246 of file G4DNAChemistryManager.hh

Referenced by Deregister(), and SetChemistryList().

std::unique_ptr<G4UIcmdWithABool> G4DNAChemistryManager::fpActivateChem
private

Definition at line 221 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 221 of file G4DNAChemistryManager.hh

Referenced by Clear(), GetCurrentValue(), and SetNewValue().

std::unique_ptr<G4UIdirectory> G4DNAChemistryManager::fpChemDNADirectory
private

Definition at line 220 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 220 of file G4DNAChemistryManager.hh

Referenced by Clear().

std::unique_ptr<G4DNAWaterExcitationStructure> G4DNAChemistryManager::fpExcitationLevel
private

Definition at line 242 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 242 of file G4DNAChemistryManager.hh

Referenced by Clear(), and GetExcitationLevel().

G4bool G4DNAChemistryManager::fPhysicsTableBuilt
private

Definition at line 248 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 248 of file G4DNAChemistryManager.hh

Referenced by ForceRebuildingPhysicsTable(), and HandleStandaloneInitialization().

std::unique_ptr<G4UIcmdWithoutParameter> G4DNAChemistryManager::fpInitChem
private

Definition at line 225 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 225 of file G4DNAChemistryManager.hh

Referenced by Clear(), and SetNewValue().

std::unique_ptr<G4DNAWaterIonisationStructure> G4DNAChemistryManager::fpIonisationLevel
private

Definition at line 243 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 243 of file G4DNAChemistryManager.hh

Referenced by Clear(), and GetIonisationLevel().

std::unique_ptr<G4UIcmdWithAnInteger> G4DNAChemistryManager::fpRunChem
private

Definition at line 222 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 222 of file G4DNAChemistryManager.hh

Referenced by Clear(), G4DNAChemistryManager(), and SetNewValue().

std::unique_ptr<G4UIcmdWithADoubleAndUnit> G4DNAChemistryManager::fpScaleForNewTemperature
private

Definition at line 224 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 224 of file G4DNAChemistryManager.hh

Referenced by G4DNAChemistryManager(), GetCurrentValue(), and SetNewValue().

std::unique_ptr<G4UIcmdWithoutParameter> G4DNAChemistryManager::fpSkipReactionsFromChemList
private

Definition at line 223 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 223 of file G4DNAChemistryManager.hh

Referenced by Clear(), GetCurrentValue(), and SetNewValue().

std::unique_ptr<G4VUserChemistryList> G4DNAChemistryManager::fpUserChemistryList
private

Definition at line 245 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 245 of file G4DNAChemistryManager.hh

Referenced by Clear(), Deregister(), HandleStandaloneInitialization(), InitializeMaster(), InitializeThread(), and SetChemistryList().

G4bool G4DNAChemistryManager::fResetCounterWhenRunEnds
private

Definition at line 254 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 254 of file G4DNAChemistryManager.hh

Referenced by IsCounterResetWhenRunEnds(), ResetCounterWhenRunEnds(), and Run().

G4bool G4DNAChemistryManager::fSkipReactions
private

Definition at line 249 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 249 of file G4DNAChemistryManager.hh

Referenced by GetCurrentValue(), InitializeMaster(), and SetNewValue().

G4bool G4DNAChemistryManager::fUseInStandalone
private

Definition at line 247 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 247 of file G4DNAChemistryManager.hh

Referenced by HandleStandaloneInitialization(), and UseAsStandalone().

G4int G4DNAChemistryManager::fVerbose
private

Definition at line 253 of file G4DNAChemistryManager.hh.

View newest version in sPHENIX GitHub at line 253 of file G4DNAChemistryManager.hh

Referenced by HandleStandaloneInitialization(), InitializeFile(), InitializeMaster(), InitializeThread(), Notify(), SetVerbose(), and WriteInto().


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