Geant4 11.3.0
Toolkit for the simulation of the passage of particles through matter
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
G4RadioactivationMessenger Class Reference

#include <G4RadioactivationMessenger.hh>

+ Inheritance diagram for G4RadioactivationMessenger:

Public Member Functions

 G4RadioactivationMessenger (G4RadioactiveDecay *)
 
 ~G4RadioactivationMessenger () override
 
void SetNewValue (G4UIcommand *command, G4String newValues) override
 
- Public Member Functions inherited from G4UImessenger
 G4UImessenger ()=default
 
 G4UImessenger (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
virtual ~G4UImessenger ()
 
virtual G4String GetCurrentValue (G4UIcommand *command)
 
G4bool CommandsShouldBeInMaster () const
 

Additional Inherited Members

- 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 (const 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)
 
- Protected Attributes inherited from G4UImessenger
G4UIdirectorybaseDir = nullptr
 
G4String baseDirName = ""
 
G4bool commandsShouldBeInMaster = false
 

Detailed Description

Definition at line 56 of file G4RadioactivationMessenger.hh.

Constructor & Destructor Documentation

◆ G4RadioactivationMessenger()

G4RadioactivationMessenger::G4RadioactivationMessenger ( G4RadioactiveDecay * ptr)

Definition at line 47 of file G4RadioactivationMessenger.cc.

48 :theRadDecay(ptr)
49{
50 rdmDirectory = new G4UIdirectory("/process/had/rdm/");
51 rdmDirectory->SetGuidance("Controls the biased version of radioactive decay");
52
53 // Command to turn on/off variance reduction options
54 analoguemcCmd = new G4UIcmdWithABool("/process/had/rdm/analogueMC",this);
55 analoguemcCmd->SetGuidance("false: variance reduction method; true: analogue method");
56 analoguemcCmd->SetParameterName("AnalogueMC",true);
57 analoguemcCmd->SetDefaultValue(true);
58
59 // Command to use branching ratio biasing or not
60 brbiasCmd = new G4UIcmdWithABool("/process/had/rdm/BRbias",this);
61 brbiasCmd->SetGuidance("false: no biasing; true: all branches are treated as equal");
62 brbiasCmd->SetParameterName("BRBias",true);
63 brbiasCmd->SetDefaultValue(true);
64
65 // Command to set the half-life thresold for isomer production
66 hlthCmd = new G4UIcmdWithADoubleAndUnit("/process/had/rdm/hlThreshold",this);
67 hlthCmd->SetGuidance("Set the h-l threshold for isomer production");
68 hlthCmd->SetParameterName("hlThreshold",false);
69 hlthCmd->SetUnitCategory("Time");
70
71 // Command to define the incident particle source time profile
72 sourcetimeprofileCmd = new G4UIcmdWithAString("/process/had/rdm/sourceTimeProfile",this);
73 sourcetimeprofileCmd->SetGuidance
74 ("Supply the name of the ascii file containing the source particle time profile");
75 sourcetimeprofileCmd->SetParameterName("STimeProfile",true);
76 sourcetimeprofileCmd->SetDefaultValue("source.data");
77
78 // Command to define the incident particle source time profile
79 decaybiasprofileCmd = new G4UIcmdWithAString("/process/had/rdm/decayBiasProfile",this);
80 decaybiasprofileCmd->SetGuidance
81 ("Supply the name of the ascii file containing the decay bias time profile");
82 decaybiasprofileCmd->SetParameterName("DBiasProfile",true);
83 decaybiasprofileCmd->SetDefaultValue("bias.data");
84
85 // Command to set nuclei splitting parameter
86 splitnucleiCmd = new G4UIcmdWithAnInteger("/process/had/rdm/splitNuclei",this);
87 splitnucleiCmd->SetGuidance("Set number of splitting for the isotopes.");
88 splitnucleiCmd->SetParameterName("NSplit",true);
89 splitnucleiCmd->SetDefaultValue(1);
90 splitnucleiCmd->SetRange("NSplit>=1");
91}

◆ ~G4RadioactivationMessenger()

G4RadioactivationMessenger::~G4RadioactivationMessenger ( )
override

Definition at line 94 of file G4RadioactivationMessenger.cc.

95{
96 delete rdmDirectory;
97 delete analoguemcCmd;
98 delete sourcetimeprofileCmd;
99 delete decaybiasprofileCmd;
100 delete brbiasCmd;
101 delete splitnucleiCmd;
102 delete hlthCmd;
103}

Member Function Documentation

◆ SetNewValue()

void G4RadioactivationMessenger::SetNewValue ( G4UIcommand * command,
G4String newValues )
overridevirtual

Reimplemented from G4UImessenger.

Definition at line 106 of file G4RadioactivationMessenger.cc.

107{
108 if ( command == analoguemcCmd ) { theRadDecay->
109 SetAnalogueMonteCarlo( analoguemcCmd->GetNewBoolValue( newValues ) );
110 } else if ( command == brbiasCmd ) { theRadDecay->
111 SetBRBias( brbiasCmd->GetNewBoolValue( newValues ) );
112 } else if ( command == sourcetimeprofileCmd ) { theRadDecay->
113 SetSourceTimeProfile( newValues );
114 } else if ( command == decaybiasprofileCmd ) { theRadDecay->
115 SetDecayBias( newValues );
116 } else if ( command == splitnucleiCmd ) { theRadDecay->
117 SetSplitNuclei( splitnucleiCmd->GetNewIntValue( newValues ) );
118 } else if ( command == hlthCmd ) { theRadDecay->
119 SetHLThreshold( hlthCmd->GetNewDoubleValue( newValues ) );
120 }
121}

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