Skip to content

Commit 2d7b93c

Browse files
committed
A2PrimaryGeneratorMessenger: added command /A2/generator/SetBeamEnergy
1 parent 9ead50a commit 2d7b93c

File tree

3 files changed

+12
-0
lines changed

3 files changed

+12
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,7 @@ Command | Meaning
156156
`/A2/generator/SetTMax 450 MeV` | maximum kinetic energy for a particle in the phase-space generator
157157
`/A2/generator/SetThetaMin 0 deg` | minimum polar angle for a particle in the phase-space generator
158158
`/A2/generator/SetThetaMax 120 deg` | maximum polar angle for a particle in the phase-space generator
159+
`/A2/generator/SetBeamEnergy 0.2 GeV` | energy of incoming beam (overwrites beam energy in event file)
159160
`/A2/generator/SetBeamXSigma 10 mm` | x-sigma of incoming beam
160161
`/A2/generator/SetBeamYSigma 10 mm` | y-sigma of incoming beam
161162
`/A2/generator/SetBeamDiameter 10 mm` | beam-spot diameter on target

include/A2PrimaryGeneratorMessenger.hh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ class A2PrimaryGeneratorMessenger: public G4UImessenger
3838
G4UIcmdWithADoubleAndUnit* SetTmaxCmd;
3939
G4UIcmdWithADoubleAndUnit* SetThetaminCmd;
4040
G4UIcmdWithADoubleAndUnit* SetThetamaxCmd;
41+
G4UIcmdWithADoubleAndUnit* SetBeamEnergyCmd;
4142
G4UIcmdWithADoubleAndUnit* SetBeamXSigmaCmd;
4243
G4UIcmdWithADoubleAndUnit* SetBeamYSigmaCmd;
4344
G4UIcmdWithADoubleAndUnit* SetBeamDiameterCmd;

src/A2PrimaryGeneratorMessenger.cc

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,12 @@ A2PrimaryGeneratorMessenger::A2PrimaryGeneratorMessenger(
7171
SetThetamaxCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
7272
SetThetamaxCmd->SetUnitCategory("Angle");
7373

74+
SetBeamEnergyCmd = new G4UIcmdWithADoubleAndUnit("/A2/generator/SetBeamEnergy",this);
75+
SetBeamEnergyCmd->SetGuidance("Set the energy of the photon beam");
76+
SetBeamEnergyCmd->SetParameterName("BeamEnergy",false);
77+
SetBeamEnergyCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
78+
SetBeamEnergyCmd->SetUnitCategory("Energy");
79+
7480
SetBeamXSigmaCmd = new G4UIcmdWithADoubleAndUnit("/A2/generator/SetBeamXSigma",this);
7581
SetBeamXSigmaCmd->SetGuidance("Set the X width of the photon beam");
7682
SetBeamXSigmaCmd->SetParameterName("BeamXSigma",false);
@@ -130,6 +136,7 @@ A2PrimaryGeneratorMessenger::~A2PrimaryGeneratorMessenger()
130136
delete SetThetamaxCmd;
131137
delete SetModeCmd;
132138
delete SetSeedCmd;
139+
delete SetBeamEnergyCmd;
133140
delete SetBeamXSigmaCmd;
134141
delete SetBeamYSigmaCmd;
135142
delete SetBeamDiameterCmd;
@@ -174,6 +181,9 @@ void A2PrimaryGeneratorMessenger::SetNewValue(
174181
if( command == SetThetamaxCmd )
175182
{ A2Action->SetThetamax(SetThetamaxCmd->GetNewDoubleValue(newValue));}
176183

184+
if( command == SetBeamEnergyCmd )
185+
{ A2Action->SetBeamEnergy(SetBeamEnergyCmd->GetNewDoubleValue(newValue));}
186+
177187
if( command == SetBeamXSigmaCmd )
178188
{ A2Action->SetBeamXSigma(SetBeamXSigmaCmd->GetNewDoubleValue(newValue));}
179189

0 commit comments

Comments
 (0)