Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
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: