Geant4 11.2.2
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 | LtoS (G4long l) |
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 156 of file G4DNAChemistryManager.cc.
|
protected |
Definition at line 103 of file G4DNAChemistryManager.cc.
Referenced by Instance().
void G4DNAChemistryManager::AddEmptyLineInOutputFile | ( | ) |
Definition at line 553 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::Clear | ( | ) |
Definition at line 164 of file G4DNAChemistryManager.cc.
Referenced by Notify(), and ~G4DNAChemistryManager().
void G4DNAChemistryManager::CloseFile | ( | ) |
Close the file specified with WriteInto
Definition at line 563 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 662 of file G4DNAChemistryManager.cc.
Referenced by G4DNATransformElectronModel::SampleSecondaries(), and G4TDNAOneStepThermalizationModel< MODEL >::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 595 of file G4DNAChemistryManager.cc.
Referenced by G4DNABornExcitationModel1::SampleSecondaries(), G4DNABornExcitationModel2::SampleSecondaries(), G4DNABornIonisationModel1::SampleSecondaries(), G4DNABornIonisationModel2::SampleSecondaries(), G4DNACPA100ExcitationModel::SampleSecondaries(), G4DNACPA100IonisationModel::SampleSecondaries(), G4DNADingfelderChargeDecreaseModel::SampleSecondaries(), G4DNAEmfietzoglouExcitationModel::SampleSecondaries(), G4DNAEmfietzoglouIonisationModel::SampleSecondaries(), G4DNAMillerGreenExcitationModel::SampleSecondaries(), G4DNAPTBExcitationModel::SampleSecondaries(), G4DNARPWBAExcitationModel::SampleSecondaries(), G4DNARPWBAIonisationModel::SampleSecondaries(), G4DNARuddIonisationExtendedModel::SampleSecondaries(), and G4DNARuddIonisationModel::SampleSecondaries().
|
static |
Definition at line 194 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::Deregister | ( | G4VUserChemistryList & | chemistryList | ) |
Definition at line 741 of file G4DNAChemistryManager.cc.
Referenced by Clear(), and G4VUserChemistryList::~G4VUserChemistryList().
void G4DNAChemistryManager::ForceMasterReinitialization | ( | ) |
Definition at line 791 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::ForceRebuildingPhysicsTable | ( | ) |
Definition at line 784 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::ForceThreadReinitialization | ( | ) |
Definition at line 799 of file G4DNAChemistryManager.cc.
|
overridevirtual |
Reimplemented from G4UImessenger.
Definition at line 270 of file G4DNAChemistryManager.cc.
|
protected |
Definition at line 573 of file G4DNAChemistryManager.cc.
Referenced by CreateWaterMolecule().
|
static |
Definition at line 149 of file G4DNAChemistryManager.cc.
Referenced by G4VUserChemistryList::~G4VUserChemistryList().
|
protected |
Definition at line 584 of file G4DNAChemistryManager.cc.
Referenced by CreateWaterMolecule().
|
protected |
Definition at line 426 of file G4DNAChemistryManager.cc.
Referenced by InitializeThread().
void G4DNAChemistryManager::Initialize | ( | ) |
Definition at line 352 of file G4DNAChemistryManager.cc.
Referenced by G4EmDNAChemistry::ConstructProcess(), G4EmDNAChemistry_option1::ConstructProcess(), G4EmDNAChemistry_option2::ConstructProcess(), G4EmDNAChemistry_option3::ConstructProcess(), and SetNewValue().
|
protected |
Definition at line 496 of file G4DNAChemistryManager.cc.
Referenced by InitializeThread().
|
protected |
Definition at line 387 of file G4DNAChemistryManager.cc.
Referenced by ForceMasterReinitialization(), and Initialize().
|
protected |
Definition at line 460 of file G4DNAChemistryManager.cc.
Referenced by Initialize(), Run(), and SetNewValue().
|
protected |
Definition at line 290 of file G4DNAChemistryManager.cc.
Referenced by Initialize(), and Notify().
|
static |
Definition at line 124 of file G4DNAChemistryManager.cc.
Referenced by G4EmDNAChemistry::ConstructProcess(), G4EmDNAChemistry_option1::ConstructProcess(), G4EmDNAChemistry_option2::ConstructProcess(), G4EmDNAChemistry_option3::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(), G4DNADingfelderChargeDecreaseModel::SampleSecondaries(), G4DNAEmfietzoglouExcitationModel::SampleSecondaries(), G4DNAEmfietzoglouIonisationModel::SampleSecondaries(), G4DNAMeltonAttachmentModel::SampleSecondaries(), G4DNAMillerGreenExcitationModel::SampleSecondaries(), G4DNAPTBExcitationModel::SampleSecondaries(), G4DNARPWBAExcitationModel::SampleSecondaries(), G4DNARPWBAIonisationModel::SampleSecondaries(), G4DNARuddIonisationExtendedModel::SampleSecondaries(), G4DNARuddIonisationModel::SampleSecondaries(), G4DNATransformElectronModel::SampleSecondaries(), and G4TDNAOneStepThermalizationModel< MODEL >::SampleSecondaries().
|
static |
Definition at line 512 of file G4DNAChemistryManager.cc.
Referenced by G4TDNAOneStepThermalizationModel< MODEL >::SampleSecondaries().
G4bool G4DNAChemistryManager::IsChemistryActivated | ( | ) |
Definition at line 519 of file G4DNAChemistryManager.cc.
Referenced by IsActivated().
G4bool G4DNAChemistryManager::IsCounterResetWhenRunEnds | ( | ) | const |
Definition at line 770 of file G4DNAChemistryManager.cc.
|
overridevirtual |
Implements G4VStateDependent.
Definition at line 214 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::PushMolecule | ( | std::unique_ptr< G4Molecule > | pMolecule, |
G4double | time, | ||
const G4ThreeVector & | position, | ||
G4int | parentID ) |
Definition at line 693 of file G4DNAChemistryManager.cc.
Referenced by CreateSolvatedElectron().
|
protected |
Definition at line 756 of file G4DNAChemistryManager.cc.
Referenced by CreateWaterMolecule(), and PushMolecule().
void G4DNAChemistryManager::ResetCounterWhenRunEnds | ( | G4bool | resetCounterWhenRunEnds | ) |
Definition at line 777 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::Run | ( | ) |
Definition at line 302 of file G4DNAChemistryManager.cc.
Referenced by SetNewValue().
void G4DNAChemistryManager::SetChemistryActivation | ( | G4bool | flag | ) |
Definition at line 526 of file G4DNAChemistryManager.cc.
Referenced by SetChemistryList(), SetChemistryList(), SetChemistryList(), and SetNewValue().
void G4DNAChemistryManager::SetChemistryList | ( | G4VUserChemistryList & | chemistryList | ) |
Chemistry list is managed outside the chemistry manager (eg. constructor).
Definition at line 725 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 718 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 732 of file G4DNAChemistryManager.cc.
|
protected |
Definition at line 710 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 345 of file G4DNAChemistryManager.cc.
|
overridevirtual |
Reimplemented from G4UImessenger.
Definition at line 239 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::SetPhysChemIO | ( | std::unique_ptr< G4VPhysChemIO > | pPhysChemIO | ) |
Definition at line 90 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::SetVerbose | ( | G4int | verbose | ) |
Definition at line 763 of file G4DNAChemistryManager.cc.
void G4DNAChemistryManager::TagThreadForReinitialization | ( | ) |
Definition at line 806 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 338 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 533 of file G4DNAChemistryManager.cc.