Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
|
#include <G4DNAChemistryManager.hh>
Static Public Member Functions | |
static G4DNAChemistryManager * | Instance () |
static G4DNAChemistryManager * | GetInstanceIfExists () |
static void | DeleteInstance () |
static G4bool | IsActivated () |
Protected Member Functions | |
~G4DNAChemistryManager () override | |
void | HandleStandaloneInitialization () |
void | PushTrack (G4Track *) |
void | SetGlobalTemperature (G4double temperatureKelvin) |
G4DNAWaterExcitationStructure * | GetExcitationLevel () |
G4DNAWaterIonisationStructure * | GetIonisationLevel () |
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 (const G4String &s) |
G4long | StoL (const G4String &s) |
G4double | StoD (const G4String &s) |
G4bool | StoB (G4String s) |
void | AddUIcommand (G4UIcommand *newCommand) |
void | CreateDirectory (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true) |
template<typename T > | |
T * | CreateCommand (const G4String &cname, const G4String &dsc) |
Additional Inherited Members | |
Protected Attributes inherited from G4UImessenger | |
G4UIdirectory * | baseDir = nullptr |
G4String | baseDirName = "" |
G4bool | commandsShouldBeInMaster = false |
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.
|
overrideprotected |
Definition at line 164 of file G4DNAChemistryManager.cc.
|
protected |
Definition at line 101 of file G4DNAChemistryManager.cc.
Referenced by Instance().
void G4DNAChemistryManager::AddEmptyLineInOutputFile | ( | ) |
Definition at line 565 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::Clear | ( | ) |
Definition at line 172 of file G4DNAChemistryManager.cc.
Referenced by Notify(), and ~G4DNAChemistryManager().
void G4DNAChemistryManager::CloseFile | ( | ) |
Close the file specified with WriteInto
Definition at line 575 of file G4DNAChemistryManager.cc.
Referenced by Run().
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 663 of file G4DNAChemistryManager.cc.
Referenced by G4TDNAOneStepThermalizationModel< MODEL >::SampleSecondaries(), and G4DNATransformElectronModel::SampleSecondaries().
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 607 of file G4DNAChemistryManager.cc.
Referenced by G4DNABornExcitationModel1::SampleSecondaries(), G4DNABornExcitationModel2::SampleSecondaries(), G4DNABornIonisationModel1::SampleSecondaries(), G4DNABornIonisationModel2::SampleSecondaries(), G4DNACPA100ExcitationModel::SampleSecondaries(), G4DNACPA100IonisationModel::SampleSecondaries(), G4DNAEmfietzoglouExcitationModel::SampleSecondaries(), G4DNAEmfietzoglouIonisationModel::SampleSecondaries(), G4DNAMillerGreenExcitationModel::SampleSecondaries(), G4DNARuddIonisationExtendedModel::SampleSecondaries(), G4DNARuddIonisationModel::SampleSecondaries(), G4DNADingfelderChargeDecreaseModel::SampleSecondaries(), G4DNARPWBAExcitationModel::SampleSecondaries(), G4DNARPWBAIonisationModel::SampleSecondaries(), and G4DNAPTBExcitationModel::SampleSecondaries().
|
static |
Definition at line 202 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::Deregister | ( | G4VUserChemistryList & | chemistryList | ) |
Definition at line 731 of file G4DNAChemistryManager.cc.
Referenced by Clear(), and G4VUserChemistryList::~G4VUserChemistryList().
void G4DNAChemistryManager::ForceMasterReinitialization | ( | ) |
Definition at line 781 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::ForceRebuildingPhysicsTable | ( | ) |
Definition at line 774 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::ForceThreadReinitialization | ( | ) |
Definition at line 789 of file G4DNAChemistryManager.cc.
|
overridevirtual |
Reimplemented from G4UImessenger.
Definition at line 278 of file G4DNAChemistryManager.cc.
|
protected |
Definition at line 585 of file G4DNAChemistryManager.cc.
Referenced by CreateWaterMolecule().
|
static |
Definition at line 157 of file G4DNAChemistryManager.cc.
Referenced by G4VUserChemistryList::~G4VUserChemistryList().
|
protected |
Definition at line 596 of file G4DNAChemistryManager.cc.
Referenced by CreateWaterMolecule().
|
protected |
Definition at line 438 of file G4DNAChemistryManager.cc.
Referenced by InitializeThread().
void G4DNAChemistryManager::Initialize | ( | ) |
Definition at line 360 of file G4DNAChemistryManager.cc.
Referenced by G4EmDNAChemistry::ConstructProcess(), G4EmDNAChemistry_option1::ConstructProcess(), G4EmDNAChemistry_option3::ConstructProcess(), G4EmDNAChemistry_option2::ConstructProcess(), and SetNewValue().
|
protected |
Definition at line 508 of file G4DNAChemistryManager.cc.
Referenced by InitializeThread().
|
protected |
Definition at line 399 of file G4DNAChemistryManager.cc.
Referenced by ForceMasterReinitialization(), and Initialize().
|
protected |
Definition at line 472 of file G4DNAChemistryManager.cc.
Referenced by Initialize(), Run(), and SetNewValue().
|
protected |
Definition at line 298 of file G4DNAChemistryManager.cc.
Referenced by Initialize(), and Notify().
|
static |
Definition at line 132 of file G4DNAChemistryManager.cc.
Referenced by G4EmDNAChemistry::ConstructProcess(), G4EmDNAChemistry_option1::ConstructProcess(), G4EmDNAChemistry_option3::ConstructProcess(), G4EmDNAChemistry_option2::ConstructProcess(), G4EmDNAChemistry::G4EmDNAChemistry(), G4EmDNAChemistry_option1::G4EmDNAChemistry_option1(), G4EmDNAChemistry_option2::G4EmDNAChemistry_option2(), G4EmDNAChemistry_option3::G4EmDNAChemistry_option3(), G4DNABornExcitationModel1::SampleSecondaries(), G4DNABornExcitationModel2::SampleSecondaries(), G4DNABornIonisationModel1::SampleSecondaries(), G4DNABornIonisationModel2::SampleSecondaries(), G4DNACPA100ExcitationModel::SampleSecondaries(), G4DNACPA100IonisationModel::SampleSecondaries(), G4DNAEmfietzoglouExcitationModel::SampleSecondaries(), G4DNAEmfietzoglouIonisationModel::SampleSecondaries(), G4DNAMeltonAttachmentModel::SampleSecondaries(), G4DNAMillerGreenExcitationModel::SampleSecondaries(), G4TDNAOneStepThermalizationModel< MODEL >::SampleSecondaries(), G4DNARuddIonisationExtendedModel::SampleSecondaries(), G4DNARuddIonisationModel::SampleSecondaries(), G4DNATransformElectronModel::SampleSecondaries(), G4DNADingfelderChargeDecreaseModel::SampleSecondaries(), G4DNARPWBAExcitationModel::SampleSecondaries(), G4DNARPWBAIonisationModel::SampleSecondaries(), and G4DNAPTBExcitationModel::SampleSecondaries().
|
static |
Definition at line 524 of file G4DNAChemistryManager.cc.
Referenced by G4TDNAOneStepThermalizationModel< MODEL >::SampleSecondaries().
G4bool G4DNAChemistryManager::IsChemistryActivated | ( | ) |
Definition at line 531 of file G4DNAChemistryManager.cc.
Referenced by IsActivated().
G4bool G4DNAChemistryManager::IsCounterResetWhenRunEnds | ( | ) | const |
Definition at line 760 of file G4DNAChemistryManager.cc.
|
overridevirtual |
Implements G4VStateDependent.
Definition at line 222 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::PushMolecule | ( | std::unique_ptr< G4Molecule > | pMolecule, |
G4double | time, | ||
const G4ThreeVector & | position, | ||
G4int | parentID | ||
) |
Definition at line 683 of file G4DNAChemistryManager.cc.
Referenced by CreateSolvatedElectron().
|
protected |
Definition at line 746 of file G4DNAChemistryManager.cc.
Referenced by CreateWaterMolecule(), and PushMolecule().
void G4DNAChemistryManager::ResetCounterWhenRunEnds | ( | G4bool | resetCounterWhenRunEnds | ) |
Definition at line 767 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::Run | ( | ) |
Definition at line 310 of file G4DNAChemistryManager.cc.
Referenced by SetNewValue().
void G4DNAChemistryManager::SetChemistryActivation | ( | G4bool | flag | ) |
Definition at line 538 of file G4DNAChemistryManager.cc.
Referenced by SetChemistryList(), and SetNewValue().
void G4DNAChemistryManager::SetChemistryList | ( | G4VUserChemistryList & | chemistryList | ) |
Chemistry list is managed outside the chemistry manager (eg. constructor).
Definition at line 715 of file G4DNAChemistryManager.cc.
Referenced by G4EmDNAChemistry::G4EmDNAChemistry(), G4EmDNAChemistry_option1::G4EmDNAChemistry_option1(), G4EmDNAChemistry_option2::G4EmDNAChemistry_option2(), and G4EmDNAChemistry_option3::G4EmDNAChemistry_option3().
void G4DNAChemistryManager::SetChemistryList | ( | G4VUserChemistryList * | pChemistryList | ) |
Definition at line 708 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::SetChemistryList | ( | std::unique_ptr< G4VUserChemistryList > | pChemistryList | ) |
Not a constructor or when used in standalone? Prefer this method.
Definition at line 722 of file G4DNAChemistryManager.cc.
|
protected |
Definition at line 700 of file G4DNAChemistryManager.cc.
Referenced by SetNewValue().
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.
|
overridevirtual |
Reimplemented from G4UImessenger.
Definition at line 247 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::SetPhysChemIO | ( | std::unique_ptr< G4VPhysChemIO > | pPhysChemIO | ) |
Definition at line 88 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::SetVerbose | ( | G4int | verbose | ) |
Definition at line 753 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::TagThreadForReinitialization | ( | ) |
Definition at line 796 of file G4DNAChemistryManager.cc.
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.
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 545 of file G4DNAChemistryManager.cc.