Import Geant4 10.5.0 source tree

This commit is contained in:
Gabriele Cosmo
2018-12-07 15:15:39 +01:00
parent 6aa23be517
commit db49709b53
11370 changed files with 187480 additions and 160142 deletions
+52 -78
View File
@@ -1,4 +1,3 @@
//$Id$
///\file "field/field04/.README.txt"
///\brief Example field04 README page
@@ -21,35 +20,32 @@
See field04.cc.
Note:
\verbatim
// runManager->Initialize();
\endverbatim
is commented out and must be executed with: /run/initialize
either in a macro or on the command line. Note: One can change
the geometry (see below) only BEFORE the initialization!
The example can be run with the following optional arguments:
Is is possible to assign the F04PhysicsList via an argument to
program submission:
\verbatim
% field04 [-m macro ] [-p physicsList] [-r randomSeed] [-s preinit|idle]
\endverbatim
If a macro is provided with the option "-m", the program runs in a batch mode,
otherwise the program open the interactive session after executing the
default initialization macro init_vis.mac. The option "-s preinit" can be used
to start the program without initialization in PreInit phase.
For example:
to assign the F04PhysicsList:
\verbatim
% field04 -p QGSP_BERT
\endverbatim
and an initial random number seed with:
an initial random number seed with:
\verbatim
% field04 field04.in 12345
% field04 field04.in -r 12345
\endverbatim
It is also possible to specify more than one macro file which are
then executed in succession:
to start with a macro file and an initial seed:
\verbatim
% field04 field04.in field04.in 12345
% field04 -m field04.in -r 12345
\endverbatim
(Note, in this case the initial random # must also be provided)
- (1) argc holds the number of arguments on the command line. Since
this MUST include at least the program name, argc value is >= 1!
- (2) argv[0] is always the name of the program
argv[1] points to the first argument, and so on ...
- (3) argv[argc-1] is assumed to be the intial random # seed
- (4) the loop over macro files goes from optind = 1 to (argc-1)
\subsection field04_sub_s12 F04DetectorConstruction
@@ -195,66 +191,25 @@ See field04.cc.
\subsection field04_sub_s16 F04PhysicsList
The F04PhysicsList is adopted from examples/extended/hadronic/Hadr01.
It uses components which are distributed with Geant4 in
/geant4/physics_lists subdirectory. So, before compiling field04
it is necessary to compile physics_lists.
The F04PhysicsList extends a selected Geant4 physics list.
The base physics list name is provided by its name in the F04PhysicsList
constructor.
There are two std::vector<G4VPhysicsConstructor*> PhysicsListVectors;
one for EMPhysics and one for HadronPHysics and a user defined process
F04StepMax.
In addition to processes defined in the base Geant4 physics list,
there is added the F04StepMax process and the decay of pions can be assigned
via dedicated commands in F04PhysicsListMessenger.
The choice of the physics is provided by the UI command:
The command to define maximum step:
\verbatim
/exp/phys/addPhysics emstandard_opt1
/exp/phys/addPhysics QGSP_BERT
\endverbatim
To see the list of available configurations one can use:
\verbatim
/exp/phys/list
/exp/phys/stepMax value unit
\endverbatim
The command:
\verbatim
/exp/phys/addPhysics PHYSLIST
\endverbatim
allows to download a physics configuration defined by an
environment variable PHYSLIST.
The cuts for electromagnetic phsyics can be established via:
\verbatim
/exp/phys/allCuts 1 mm
/exp/phys/gammaCut 0.1 mm
/exp/phys/electronCut 0.2 mm
/exp/phys/positronCut 0.3 mm
\endverbatim
The cut for the F04StepMax process via:
\verbatim
/exp/phys/stepMax
\endverbatim
The two G4PhysConstVectors can be cleared via:
\verbatim
/exp/phys/clearEMPhysics
/exp/phys/clearHadronPhysics
\endverbatim
and individual processes can be removed from the vectors via,
for example:
\verbatim
/exp/phys/removeEMPhysics msc
/exp/phys/removeHadronPhysics gamma_nuc
\endverbatim
Furthermore, the following commands are also available, but
may only be used AFTER /run/initialize
\verbatim
/process/inactivate msc
/process/activate msc
\endverbatim
The decay of pions can be assigned via (pi -> e nu, pi -> mu nu):
\verbatim
/decay/pienu
/decay/pimunu
\endverbatim
The pienu assignment includes a small fraction of radiative decay:
e nu gamma (G4PionRadiativeDecayChannel).
@@ -267,7 +222,15 @@ See field04.cc.
The muon decay process is G4DecayWithSpin
\subsection field04_sub_s17 Overlapping Fields
Furthermore, the following commands are also available, but
may only be used AFTER /run/initialize
\verbatim
/process/inactivate msc
/process/activate msc
\endverbatim
\subsection field04_sub_s17 Overlapping Fields
The F04GlobalField (a singleton) is instantiated in
F04DetectorConstruction() and assigned to the global field manager
@@ -400,7 +363,8 @@ if (fields) {
- F04SteppingVerbose: \n
Only print track header and step information for
pi+ and mu+
pi+ and mu+.
Note: the information for primary protons is not printed.
- F04Trajectory, F04TrajectoryPoint: \n
Example of application specific implementations
@@ -409,15 +373,25 @@ if (fields) {
- Execute field04 in 'batch' mode from macro files e.g.
\verbatim
% field04 field04.in
% field04 -m field04.in
\endverbatim
- Execute field04 in 'interactive' mode with visualization e.g.
- Execute field04 in 'interactive' mode with visualization
\verbatim
% field04
....
Idle> type your commands, for example:
Idle> control/execute field04.in
Idle> type your commands
....
\endverbatim
- Execute field04 in 'interactive' mode without initialization
\verbatim
% field04 -s preinit
....
Idle> type your commands, then
Idle> /run/initialize
Idle> /control/execute vis.mac
....
\endverbatim
*/
@@ -40,7 +40,7 @@ target_link_libraries(field04 ${Geant4_LIBRARIES} )
# relies on these scripts being in the current working directory.
#
set(field04_SCRIPTS
field04.in field04.out vis.mac gui.mac
field04.in field04.out init_vis.mac vis.mac gui.mac
)
foreach(_script ${field04_SCRIPTS})
@@ -1,4 +1,3 @@
# $Id: GNUmakefile 68021 2013-03-13 13:36:07Z gcosmo $
# --------------------------------------------------------------
# GNUmakefile for examples module. Gabriele Cosmo, 06/04/98.
# --------------------------------------------------------------
+14 -1
View File
@@ -1,4 +1,3 @@
// $Id:$
// ------------------------------------------------------------------
=========================================================
@@ -15,6 +14,20 @@ track of all tags.
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
July 27, 2018 I.Hrivnacova - fieldex04-V10-04-02
- Macro review and code clean-up:
- Modify handling program according to basic examples
- Separated other than visualization settings from vis.mac in a
new init_vis.mac and added 'startPhase' program argument
- Added test for commands defined in the example at the end
of field04.in macro
- Removed SetCut functions and commands from the physics list and
physics list messenger (available in G4 kernel)
- Fixed warnings when geometry parameters are set in PreInit phase
- Improved visualization of geometry
- Added "beamOn 10" button in gui.mac
- Updated README files
May 15, 2018 J.Allison - fieldex04-V10-04-01
- Remove G4UI_USE and G4VIS_USE.
- Move instantiation of G4UIExecutive to start of main.
+41 -82
View File
@@ -25,36 +25,24 @@
See field04.cc.
Note:
The example can be run with the following optional arguments:
// runManager->Initialize();
% field04 [-m macro ] [-p physicsList] [-r randomSeed] [-s preinit|idle]
is commented out and must be executed with: /run/initialize
either in a macro or on the command line. Note: One can change
the geometry (see below) only BEFORE the initialization!
Is is possible to assign the F04PhysicsList via an argument to
program submission:
If a macro is provided with the option "-m", the program runs in a batch mode,
otherwise the program open the interactive session after executing the
default initialization macro init_vis.mac. The option "-s preinit" can be used
to start the program without initialization in PreInit phase.
For example:
to assign the F04PhysicsList:
% field04 -p QGSP_BERT
and an initial random number seed with:
an initial random number seed with:
% field04 field04.in -r 12345
% field04 field04.in 12345
It is also possible to specify more than one macro file which are
then executed in succession:
% field04 field04.in field04.in 12345
(Note, in this case the initial random # must also be provided)
(1) argc holds the number of arguments on the command line. Since
this MUST include at least the program name, argc value is >= 1!
(2) argv[0] is always the name of the program
argv[1] points to the first argument, and so on ...
(3) argv[argc-1] is assumed to be the intial random # seed
(4) the loop over macro files goes from optind = 1 to (argc-1)
to start with a macro file and an initial seed:
% field04 -m field04.in -r 12345
2- GEOMETRY DEFINITION
@@ -199,58 +187,16 @@
6- PHYSICS
The F04PhysicsList is adopted from examples/extended/hadronic/Hadr01.
It uses components which are distributed with Geant4 in
/geant4/physics_lists subdirectory. So, before compiling field04
it is necessary to compile physics_lists.
The F04PhysicsList extends a selected Geant4 physics list.
The base physics list name is provided by its name in the F04PhysicsList
constructor.
There are two std::vector<G4VPhysicsConstructor*> PhysicsListVectors;
one for EMPhysics and one for HadronPHysics and a user defined process
F04StepMax.
In addition to processes defined in the base Geant4 physics list,
there is added the F04StepMax process and the decay of pions can be assigned
via dedicated commands in F04PhysicsListMessenger.
The choice of the physics is provided by the UI command:
/exp/phys/addPhysics emstandard_opt1
/exp/phys/addPhysics QGSP_BERT
To see the list of available configurations one can use:
/exp/phys/list
The command:
/exp/phys/addPhysics PHYSLIST
allows to download a physics configuration defined by an
environment variable PHYSLIST.
The cuts for electromagnetic phsyics can be established via:
/exp/phys/allCuts 1 mm
/exp/phys/gammaCut 0.1 mm
/exp/phys/electronCut 0.2 mm
/exp/phys/positronCut 0.3 mm
The cut for the F04StepMax process via:
/exp/phys/stepMax
The two G4PhysConstVectors can be cleared via:
/exp/phys/clearEMPhysics
/exp/phys/clearHadronPhysics
and individual processes can be removed from the vectors via,
for example:
/exp/phys/removeEMPhysics msc
/exp/phys/removeHadronPhysics gamma_nuc
Furthermore, the following commands are also available, but
may only be used AFTER /run/initialize
/process/inactivate msc
/process/activate msc
The command to define maximum step:
/exp/phys/stepMax value unit
The decay of pions can be assigned via (pi -> e nu, pi -> mu nu):
@@ -269,6 +215,11 @@
The muon decay process is G4DecayWithSpin
Furthermore, the following commands are also available, but
may only be used AFTER /run/initialize
/process/inactivate msc
/process/activate msc
7- Overlapping Fields
@@ -317,8 +268,8 @@
A beamline element, for example the F04SimpleSolenoid, will derive
from F04ElementField and implement the computation for the element.
simpleSolenoid = new F04SimpleSolenoid(B, l,
logicTransferMgnt,TransferMgntCenter);
simpleSolenoid
= new F04SimpleSolenoid(B, l, logicTransferMgnt,TransferMgntCenter);
Besides the magnetic field and the length of the simple solenoid,
the constructor needs the knowledge of the G4LogicalVolume for
@@ -400,19 +351,27 @@
F04SteppingVerbose:
Only print track header and step information for
pi+ and mu+
pi+ and mu+.
Note: the information for primary protons is not printed.
F04Trajectory, TrajectoryPoint:
Example of application specific implementations
9- HOW TO START ?
- execute field04 in 'batch' mode from macro files e.g.
% field04 field04.in
- Execute field04 in 'batch' mode from macro files e.g.
% field04 -m field04.in
- execute field04 in 'interactive' mode with visualization e.g.
- Execute field04 in 'interactive' mode with visualization
% field04
....
Idle> type your commands, for example:
Idle> control/execute field04.in
Idle> type your commands
....
- Execute field04 in 'interactive' mode without initialization
% field04 -s preinit
....
Idle> type your commands, then
Idle> /run/initialize
Idle> /control/execute vis.mac
....
+65 -65
View File
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: field04.cc 110170 2018-05-17 07:28:42Z gcosmo $
//
/// \file field/field04/field04.cc
/// \brief Main program of the field/field04 example
@@ -64,18 +63,51 @@
#include "G4VisExecutive.hh"
#include "G4UIExecutive.hh"
// argc holds the number of arguments (including the name) on the command line
// -> it is ONE when only the name is given !!!
// argv[0] is always the name of the program
// argv[1] points to the first argument, and so on
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
namespace {
void PrintUsage() {
G4cerr << " Usage: " << G4endl;
G4cerr << " field04 [-m macro ] [-p physicsList] [-r randomSeed] [-s preinit|idle]"
<< G4endl;
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
int main(int argc,char** argv)
{
// Evaluate arguments
// argc holds the number of arguments (including the name) on the command line
// -> it is ONE when only the name is given !!!
// argv[0] is always the name of the program
// argv[1] points to the first argument, and so on
//
if ( argc > 7 ) {
PrintUsage();
return 1;
}
G4String macro;
G4String physicsList = "QGSP_BERT";
G4int randomSeed = 1234;
G4String startPhase = "idle";
for ( G4int i=1; i<argc; i=i+2 ) {
if ( G4String(argv[i]) == "-m" ) macro = argv[i+1];
else if ( G4String(argv[i]) == "-r" ) randomSeed = atoi(argv[i+1]);
else if ( G4String(argv[i]) == "-p" ) physicsList = argv[i+1];
else if ( G4String(argv[i]) == "-s" ) startPhase = argv[i+1];
else {
PrintUsage();
return 1;
}
}
// Instantiate G4UIExecutive if there are no arguments (interactive mode)
G4UIExecutive* ui = nullptr;
if ( argc == 1 ) {
if ( ! macro.size() ) {
ui = new G4UIExecutive(argc, argv);
}
@@ -83,9 +115,6 @@ int main(int argc,char** argv)
//
G4Random::setTheEngine(new CLHEP::RanecuEngine);
G4int myseed = 1234;
if (argc > 2) myseed = atoi(argv[argc-1]);
// Construct the default run manager
//
#ifdef G4MULTITHREADED
@@ -95,28 +124,7 @@ int main(int argc,char** argv)
G4RunManager * runManager = new G4RunManager;
#endif
G4Random::setTheSeed(myseed);
G4String physicsList = "QGSP_BERT";
#ifndef WIN32
G4int c = 0;
while ((c=getopt(argc,argv,"p")) != -1)
{
switch (c)
{
case 'p':
physicsList = optarg;
G4cout << "Physics List used is " << physicsList << G4endl;
break;
case ':': /* -p without operand */
fprintf(stderr,"Option -%c requires an operand\n", optopt);
break;
case '?':
fprintf(stderr,"Unrecognised option: -%c\n", optopt);
}
}
#endif
G4Random::setTheSeed(randomSeed);
// Set mandatory initialization classes
//
@@ -143,41 +151,33 @@ int main(int argc,char** argv)
//
G4UImanager* UImanager = G4UImanager::GetUIpointer();
#ifndef WIN32
G4int optmax = argc;
if (argc > 2) { optmax = optmax-1; }
if (optind < optmax)
{
G4String command = "/control/execute ";
for ( ; optind < optmax; optind++)
{
G4String macroFilename = argv[optind];
UImanager->ApplyCommand(command+macroFilename);
}
// Process macro or start UI session
//
if ( macro.size() ) {
// batch mode
G4String command = "/control/execute ";
UImanager->ApplyCommand(command+macro);
}
#else // Simple UI for Windows runs, no possibility of additional arguments
if (!ui) // batch mode
{
G4String command = "/control/execute ";
G4String fileName = argv[1];
UImanager->ApplyCommand(command+fileName);
}
#endif
else
{
// UImanager->ApplyCommand("/control/execute vis.mac");
G4cout << "At the prompt, issue commands to set up detector & field, then:"
<< G4endl;
G4cout << "/run/initialize" << G4endl;
G4cout << "Then if you want a viewer:"<< G4endl;
G4cout << "/control/execute vis.mac" << G4endl;
G4cout << "Then: " << G4endl;
G4cout << "/run/beamOn … etc." << G4endl;
if (ui->IsGUI())
UImanager->ApplyCommand("/control/execute gui.mac");
ui->SessionStart();
delete ui;
else {
// interactive mode : define UI session
if ( startPhase == "preinit" ) {
// start in PreInit> phase if requested
G4cout << "At the prompt, issue commands to set up detector & field, then:"
<< G4endl;
G4cout << "/run/initialize" << G4endl;
G4cout << "Then if you want a viewer:"<< G4endl;
G4cout << "/control/execute vis.mac" << G4endl;
G4cout << "Then: " << G4endl;
G4cout << "/run/beamOn … etc." << G4endl;
} else {
// perform initialization and draw geometry
UImanager->ApplyCommand("/control/execute init_vis.mac");
}
if (ui->IsGUI()) {
UImanager->ApplyCommand("/control/execute gui.mac");
}
ui->SessionStart();
delete ui;
}
// Job termination
+7 -1
View File
@@ -1,5 +1,5 @@
#
# Macro file for the initialization phase of field04
# Macro file for the test of field04 example
#
#/run/verbose 1
/control/verbose 2
@@ -78,3 +78,9 @@
#
/run/beamOn 10
#
/field04/SetTransferR 0.3 m
/field04/SetTransferZ 15.0 m
/field04/SetTransferP 0.0 m
#
/run/beamOn 1
File diff suppressed because it is too large Load Diff
+1
View File
@@ -10,6 +10,7 @@
# Run menu :
/gui/addMenu run Run
/gui/addButton run "beamOn 1" "/run/beamOn 1"
/gui/addButton run "beamOn 10" "/run/beamOn 10"
#/gui/addButton run run1 "/control/execute run1.mac"
#/gui/addButton run run2 "/control/execute run2.mac"
#
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04DetectorConstruction.hh 78551 2014-01-07 09:45:08Z gcosmo $
//
/// \file field/field04/include/F04DetectorConstruction.hh
/// \brief Definition of the F04DetectorConstruction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04DetectorMessenger.hh 78551 2014-01-07 09:45:08Z gcosmo $
//
/// \file field/field04/include/F04DetectorMessenger.hh
/// \brief Definition of the F04DetectorMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04ElementField.hh 78551 2014-01-07 09:45:08Z gcosmo $
//
/// \file field/field04/include/F04ElementField.hh
/// \brief Definition of the F04ElementField class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04EventAction.hh 90239 2015-05-21 09:07:05Z gcosmo $
//
/// \file field/field04/include/F04EventAction.hh
/// \brief Definition of the F04EventAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04EventActionMessenger.hh 90239 2015-05-21 09:07:05Z gcosmo $
//
/// \file field/field04/include/F04EventActionMessenger.hh
/// \brief Definition of the F04EventActionMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04FieldMessenger.hh 78551 2014-01-07 09:45:08Z gcosmo $
//
/// \file field/field04/include/F04FieldMessenger.hh
/// \brief Definition of the F04FieldMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04FocusSolenoid.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04FocusSolenoid.hh
/// \brief Definition of the F04FocusSolenoid class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04GlobalField.hh 78551 2014-01-07 09:45:08Z gcosmo $
//
/// \file field/field04/include/F04GlobalField.hh
/// \brief Definition of the F04GlobalField class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04Materials.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04Materials.hh
/// \brief Definition of the F04Materials class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04PhysicsList.hh 85915 2014-11-06 09:05:23Z gcosmo $
//
/// \file field/field04/include/F04PhysicsList.hh
/// \brief Definition of the F04PhysicsList class
@@ -47,11 +46,6 @@ public:
F04PhysicsList(G4String);
virtual ~F04PhysicsList();
virtual void SetCuts();
void SetCutForGamma(G4double);
void SetCutForElectron(G4double);
void SetCutForPositron(G4double);
void SetStepMax(G4double);
F04StepMax* GetStepMaxProcess();
void AddStepMax();
@@ -67,10 +61,6 @@ public:
private:
G4double fCutForGamma;
G4double fCutForElectron;
G4double fCutForPositron;
G4double fMaxChargedStep;
static G4ThreadLocal F04StepMax* fStepMaxProcess;
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04PhysicsListMessenger.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04PhysicsListMessenger.hh
/// \brief Definition of the F04PhysicsListMessenger class
@@ -60,10 +59,6 @@ private:
G4UIdirectory* fDirectory;
G4UIdirectory* fDecayDirectory;
G4UIcmdWithADoubleAndUnit* fGammaCutCMD;
G4UIcmdWithADoubleAndUnit* fElectCutCMD;
G4UIcmdWithADoubleAndUnit* fPosCutCMD;
G4UIcmdWithADoubleAndUnit* fAllCutCMD;
G4UIcmdWithADoubleAndUnit* fStepMaxCMD;
/*
G4UIcmdWithAString* fRemovePhysicsCMD;
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04PrimaryGeneratorAction.hh 77884 2013-11-29 08:41:11Z gcosmo $
//
/// \file field/field04/include/F04PrimaryGeneratorAction.hh
/// \brief Definition of the F04PrimaryGeneratorAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04PrimaryGeneratorMessenger.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04PrimaryGeneratorMessenger.hh
/// \brief Definition of the F04PrimaryGeneratorMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04RunAction.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04RunAction.hh
/// \brief Definition of the F04RunAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04RunActionMessenger.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04RunActionMessenger.hh
/// \brief Definition of the F04RunActionMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04SimpleSolenoid.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04SimpleSolenoid.hh
/// \brief Definition of the F04SimpleSolenoid class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04StackingAction.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04StackingAction.hh
/// \brief Definition of the F04StackingAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04StepMax.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04StepMax.hh
/// \brief Definition of the F04StepMax class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04SteppingAction.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04SteppingAction.hh
/// \brief Definition of the F04SteppingAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04SteppingActionMessenger.hh 73014 2013-08-15 08:54:47Z gcosmo $
//
/// \file field/field04/include/F04SteppingActionMessenger.hh
/// \brief Definition of the F04SteppingActionMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04SteppingVerbose.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04SteppingVerbose.hh
/// \brief Definition of the F04SteppingVerbose class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04TrackingAction.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04TrackingAction.hh
/// \brief Definition of the F04TrackingAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04Trajectory.hh 90239 2015-05-21 09:07:05Z gcosmo $
//
/// \file field/field04/include/F04Trajectory.hh
/// \brief Definition of the F04Trajectory class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04TrajectoryPoint.hh 76690 2013-11-14 08:45:07Z gcosmo $
//
/// \file field/field04/include/F04TrajectoryPoint.hh
/// \brief Definition of the F04TrajectoryPoint class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04UserTrackInformation.hh 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/include/F04UserTrackInformation.hh
/// \brief Definition of the F04UserTrackInformation class
@@ -0,0 +1,15 @@
# Macro file for the initialization of example field04
# in interactive session
#
#
# Set some verbose
/control/verbose 1
/run/verbose 1
#/event/verbose 2
#/tracking/verbose 1
#
# Initialize Geant4
/run/initialize
#
# Visualization setting
/control/execute vis.mac
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04DetectorConstruction.cc 78551 2014-01-07 09:45:08Z gcosmo $
//
/// \file field/field04/src/F04DetectorConstruction.cc
/// \brief Implementation of the F04DetectorConstruction class
@@ -51,6 +50,7 @@
#include "G4PhysicalVolumeStore.hh"
#include "G4RunManager.hh"
#include "G4StateManager.hh"
#include "G4PhysicalConstants.hh"
#include "G4SystemOfUnits.hh"
@@ -354,7 +354,10 @@ void F04DetectorConstruction::SetDegraderMaterial(const G4String materialChoice)
void F04DetectorConstruction::SetWorldSizeZ(G4double val)
{
fWorldSizeZ = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -362,7 +365,9 @@ void F04DetectorConstruction::SetWorldSizeZ(G4double val)
void F04DetectorConstruction::SetWorldSizeR(G4double val)
{
fWorldSizeR = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -370,7 +375,9 @@ void F04DetectorConstruction::SetWorldSizeR(G4double val)
void F04DetectorConstruction::SetCaptureMgntRadius(G4double val)
{
fCaptureMgntRadius = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -378,7 +385,9 @@ void F04DetectorConstruction::SetCaptureMgntRadius(G4double val)
void F04DetectorConstruction::SetCaptureMgntLength(G4double val)
{
fCaptureMgntLength = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -386,7 +395,9 @@ void F04DetectorConstruction::SetCaptureMgntLength(G4double val)
void F04DetectorConstruction::SetCaptureMgntB1(G4double val)
{
fCaptureMgntB1 = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -394,7 +405,9 @@ void F04DetectorConstruction::SetCaptureMgntB1(G4double val)
void F04DetectorConstruction::SetCaptureMgntB2(G4double val)
{
fCaptureMgntB2 = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -402,7 +415,9 @@ void F04DetectorConstruction::SetCaptureMgntB2(G4double val)
void F04DetectorConstruction::SetTransferMgntRadius(G4double val)
{
fTransferMgntRadius = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -410,7 +425,9 @@ void F04DetectorConstruction::SetTransferMgntRadius(G4double val)
void F04DetectorConstruction::SetTransferMgntLength(G4double val)
{
fTransferMgntLength = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -418,7 +435,9 @@ void F04DetectorConstruction::SetTransferMgntLength(G4double val)
void F04DetectorConstruction::SetTransferMgntB(G4double val)
{
fTransferMgntB = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -426,7 +445,9 @@ void F04DetectorConstruction::SetTransferMgntB(G4double val)
void F04DetectorConstruction::SetTransferMgntPos(G4double val)
{
fTransferMgntPos = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -434,7 +455,9 @@ void F04DetectorConstruction::SetTransferMgntPos(G4double val)
void F04DetectorConstruction::SetTargetRadius(G4double val)
{
fTargetRadius = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -442,7 +465,9 @@ void F04DetectorConstruction::SetTargetRadius(G4double val)
void F04DetectorConstruction::SetTargetThickness(G4double val)
{
fTargetThickness = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -450,7 +475,9 @@ void F04DetectorConstruction::SetTargetThickness(G4double val)
void F04DetectorConstruction::SetTargetPos(G4double val)
{
fTargetPos = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -458,7 +485,9 @@ void F04DetectorConstruction::SetTargetPos(G4double val)
void F04DetectorConstruction::SetTargetAngle(G4int val)
{
fTargetAngle = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -466,7 +495,9 @@ void F04DetectorConstruction::SetTargetAngle(G4int val)
void F04DetectorConstruction::SetDegraderRadius(G4double val)
{
fDegraderRadius = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -474,7 +505,9 @@ void F04DetectorConstruction::SetDegraderRadius(G4double val)
void F04DetectorConstruction::SetDegraderThickness(G4double val)
{
fDegraderThickness = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -482,7 +515,9 @@ void F04DetectorConstruction::SetDegraderThickness(G4double val)
void F04DetectorConstruction::SetDegraderPos(G4double val)
{
fDegraderPos = val;
G4RunManager::GetRunManager()->ReinitializeGeometry();
if ( G4StateManager::GetStateManager()->GetCurrentState() != G4State_PreInit ) {
G4RunManager::GetRunManager()->ReinitializeGeometry();
}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04DetectorMessenger.cc 78551 2014-01-07 09:45:08Z gcosmo $
//
/// \file field/field04/src/F04DetectorMessenger.cc
/// \brief Implementation of the F04DetectorMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04ElementField.cc 101905 2016-12-07 11:34:39Z gunter $
//
/// \file field/field04/src/F04ElementField.cc
/// \brief Implementation of the F04ElementField class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04EventAction.cc 90239 2015-05-21 09:07:05Z gcosmo $
//
/// \file field/field04/src/F04EventAction.cc
/// \brief Implementation of the F04EventAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04EventActionMessenger.cc 90239 2015-05-21 09:07:05Z gcosmo $
//
/// \file field/field04/src/F04EventActionMessenger.cc
/// \brief Implementation of the F04EventActionMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04FieldMessenger.cc 78551 2014-01-07 09:45:08Z gcosmo $
//
/// \file field/field04/src/F04FieldMessenger.cc
/// \brief Implementation of the F04FieldMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04FocusSolenoid.cc 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/src/F04FocusSolenoid.cc
/// \brief Implementation of the F04FocusSolenoid class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04GlobalField.cc 96981 2016-05-19 09:42:40Z gcosmo $
//
/// \file field/field04/src/F04GlobalField.cc
/// \brief Implementation of the F04GlobalField class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04Materials.cc 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/src/F04Materials.cc
/// \brief Implementation of the F04Materials class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04PhysicsList.cc 100252 2016-10-17 07:50:45Z gcosmo $
//
/// \file field/field04/src/F04PhysicsList.cc
/// \brief Implementation of the F04PhysicsList class
@@ -75,9 +74,6 @@ F04PhysicsList::F04PhysicsList(G4String physName) : G4VModularPhysicsList()
G4LossTableManager::Instance();
defaultCutValue = 1.*mm;
fCutForGamma = defaultCutValue;
fCutForElectron = defaultCutValue;
fCutForPositron = defaultCutValue;
fMessenger = new F04PhysicsListMessenger(this);
@@ -97,7 +93,7 @@ F04PhysicsList::F04PhysicsList(G4String physName) : G4VModularPhysicsList()
// Physics List is defined via environment variable PHYSLIST
// if (!phys) phys = factory.ReferencePhysList();
if (!phys) G4Exception("WLSPhysicsList::WLSPhysicsList","InvalidSetup",
if (!phys) G4Exception("F04PhysicsList::F04PhysicsList","InvalidSetup",
FatalException,"PhysicsList does not exist");
for (G4int i = 0; ; ++i) {
@@ -259,49 +255,6 @@ void F04PhysicsList::ClearPhysics()
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void F04PhysicsList::SetCuts()
{
if (verboseLevel >0) {
G4cout << "F04PhysicsList::SetCuts:";
G4cout << "CutLength : " << G4BestUnit(defaultCutValue,"Length")
<< G4endl;
}
// set cut values for gamma at first and for e- second and next for e+,
// because some processes for e+/e- need cut values for gamma
SetCutValue(fCutForGamma, "gamma");
SetCutValue(fCutForElectron, "e-");
SetCutValue(fCutForPositron, "e+");
if (verboseLevel>0) DumpCutValuesTable();
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void F04PhysicsList::SetCutForGamma(G4double cut)
{
fCutForGamma = cut;
SetParticleCuts(fCutForGamma, G4Gamma::Gamma());
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void F04PhysicsList::SetCutForElectron(G4double cut)
{
fCutForElectron = cut;
SetParticleCuts(fCutForElectron, G4Electron::Electron());
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void F04PhysicsList::SetCutForPositron(G4double cut)
{
fCutForPositron = cut;
SetParticleCuts(fCutForPositron, G4Positron::Positron());
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void F04PhysicsList::SetStepMax(G4double step)
{
fMaxChargedStep = step ;
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04PhysicsListMessenger.cc 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/src/F04PhysicsListMessenger.cc
/// \brief Implementation of the F04PhysicsListMessenger class
@@ -56,40 +55,6 @@ F04PhysicsListMessenger::F04PhysicsListMessenger(F04PhysicsList* pPhys)
fDirectory = new G4UIdirectory("/exp/phys/");
fDirectory->SetGuidance("Control the physics lists");
fGammaCutCMD = new G4UIcmdWithADoubleAndUnit("/exp/phys/gammaCut",this);
fGammaCutCMD->SetGuidance("Set gamma cut");
fGammaCutCMD->SetParameterName("Gcut",false);
fGammaCutCMD->SetUnitCategory("Length");
fGammaCutCMD->SetRange("Gcut>0.0");
fGammaCutCMD->SetDefaultUnit("mm");
fGammaCutCMD->AvailableForStates(G4State_PreInit,G4State_Idle);
fElectCutCMD = new G4UIcmdWithADoubleAndUnit("/exp/phys/electronCut",
this);
fElectCutCMD->SetGuidance("Set electron cut");
fElectCutCMD->SetParameterName("Ecut",false);
fElectCutCMD->SetUnitCategory("Length");
fElectCutCMD->SetRange("Ecut>0.0");
fElectCutCMD->SetDefaultUnit("mm");
fElectCutCMD->AvailableForStates(G4State_PreInit,G4State_Idle);
fPosCutCMD = new G4UIcmdWithADoubleAndUnit("/exp/phys/positronCut",
this);
fPosCutCMD->SetGuidance("Set positron cut");
fPosCutCMD->SetParameterName("Pcut",false);
fPosCutCMD->SetUnitCategory("Length");
fPosCutCMD->SetRange("Pcut>0.0");
fPosCutCMD->SetDefaultUnit("mm");
fPosCutCMD->AvailableForStates(G4State_PreInit,G4State_Idle);
fAllCutCMD = new G4UIcmdWithADoubleAndUnit("/exp/phys/allCuts",this);
fAllCutCMD->SetGuidance("Set cut for all");
fAllCutCMD->SetParameterName("cut",false);
fAllCutCMD->SetUnitCategory("Length");
fAllCutCMD->SetRange("cut>0.0");
fAllCutCMD->SetDefaultUnit("mm");
fAllCutCMD->AvailableForStates(G4State_PreInit,G4State_Idle);
fStepMaxCMD = new G4UIcmdWithADoubleAndUnit("/exp/phys/stepMax",this);
fStepMaxCMD->SetGuidance("Set max. step length in the detector");
fStepMaxCMD->SetParameterName("mxStep",false);
@@ -124,10 +89,6 @@ F04PhysicsListMessenger::F04PhysicsListMessenger(F04PhysicsList* pPhys)
F04PhysicsListMessenger::~F04PhysicsListMessenger()
{
delete fGammaCutCMD;
delete fElectCutCMD;
delete fPosCutCMD;
delete fAllCutCMD;
/*
delete fClearPhysicsCMD;
delete fRemovePhysicsCMD;
@@ -163,24 +124,6 @@ void F04PhysicsListMessenger::SetNewValue(G4UIcommand* command,
fParticleDef->SetDecayTable(fTable);
}
if (command == fGammaCutCMD) {
fPhysicsList->SetCutForGamma(fGammaCutCMD
->GetNewDoubleValue(newValue));
}
else if (command == fElectCutCMD) {
fPhysicsList->SetCutForElectron(fElectCutCMD
->GetNewDoubleValue(newValue));
}
else if (command == fPosCutCMD) {
fPhysicsList->SetCutForPositron(fPosCutCMD
->GetNewDoubleValue(newValue));
}
else if (command == fAllCutCMD) {
G4double cut = fAllCutCMD->GetNewDoubleValue(newValue);
fPhysicsList->SetCutForGamma(cut);
fPhysicsList->SetCutForElectron(cut);
fPhysicsList->SetCutForPositron(cut);
}
else if (command == fStepMaxCMD) {
fPhysicsList->SetStepMax(fStepMaxCMD
->GetNewDoubleValue(newValue));
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04PrimaryGeneratorAction.cc 78002 2013-12-02 08:25:49Z gcosmo $
//
/// \file field/field04/src/F04PrimaryGeneratorAction.cc
/// \brief Implementation of the F04PrimaryGeneratorAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04PrimaryGeneratorMessenger.cc 77884 2013-11-29 08:41:11Z gcosmo $
//
/// \file field/field04/src/F04PrimaryGeneratorMessenger.cc
/// \brief Implementation of the F04PrimaryGeneratorMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04RunAction.cc 78002 2013-12-02 08:25:49Z gcosmo $
//
/// \file field/field04/src/F04RunAction.cc
/// \brief Implementation of the F04RunAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04RunActionMessenger.cc 76690 2013-11-14 08:45:07Z gcosmo $
//
/// \file field/field04/src/F04RunActionMessenger.cc
/// \brief Implementation of the F04RunActionMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04SimpleSolenoid.cc 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/src/F04SimpleSolenoid.cc
/// \brief Implementation of the F04SimpleSolenoid class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04StackingAction.cc 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/src/F04StackingAction.cc
/// \brief Implementation of the F04StackingAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04StepMax.cc 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/src/F04StepMax.cc
/// \brief Implementation of the F04StepMax class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04SteppingAction.cc 73014 2013-08-15 08:54:47Z gcosmo $
//
/// \file field/field04/src/F04SteppingAction.cc
/// \brief Implementation of the F04SteppingAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04SteppingActionMessenger.cc 73014 2013-08-15 08:54:47Z gcosmo $
//
/// \file field/field04/src/F04SteppingActionMessenger.cc
/// \brief Implementation of the F04SteppingActionMessenger class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04SteppingVerbose.cc 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/src/F04SteppingVerbose.cc
/// \brief Implementation of the F04SteppingVerbose class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04TrackingAction.cc 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/src/F04TrackingAction.cc
/// \brief Implementation of the F04TrackingAction class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04Trajectory.cc 90239 2015-05-21 09:07:05Z gcosmo $
//
/// \file field/field04/src/F04Trajectory.cc
/// \brief Implementation of the F04Trajectory class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04TrajectoryPoint.cc 76690 2013-11-14 08:45:07Z gcosmo $
//
/// \file field/field04/src/F04TrajectoryPoint.cc
/// \brief Implementation of the F04TrajectoryPoint class
@@ -23,7 +23,6 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: F04UserTrackInformation.cc 68021 2013-03-13 13:36:07Z gcosmo $
//
/// \file field/field04/src/F04UserTrackInformation.cc
/// \brief Implementation of the F04UserTrackInformation class
+34 -11
View File
@@ -16,10 +16,6 @@
#/vis/viewer/set/style surface
/vis/viewer/set/style wireframe
#
# Set direction from target to camera.
/vis/viewer/set/viewpointVector 1 1.5 1.1
/vis/viewer/set/viewpointThetaPhi 110 140
/vis/viewer/zoom 1.4
#
# The compound command "/vis/drawVolume"
# is equivalent to the following set of commands:
@@ -34,9 +30,9 @@
#
# Add trajectories to the current scene
/vis/scene/add/trajectories smooth
#/vis/modeling/trajectories/create/drawByCharge
#/vis/modeling/trajectories/drawByCharge-0/default/setDrawStepPts true
#/vis/modeling/trajectories/drawByCharge-0/default/setStepPtsSize 2
/vis/modeling/trajectories/create/drawByCharge
/vis/modeling/trajectories/drawByCharge-0/default/setDrawStepPts true
/vis/modeling/trajectories/drawByCharge-0/default/setStepPtsSize 2
# (if too many tracks cause core dump => /tracking/storeTrajectory 0)
#
#/vis/modeling/trajectories/create/drawByParticleID
@@ -47,8 +43,35 @@
#/vis/modeling/trajectories/drawByParticleID-0/set nu_e yellow
#/vis/modeling/trajectories/drawByParticleID-0/set anti_nu_mu yellow
#
# Requests viewer to accumulate hits, tracks, etc. at end of event.
# detector remains or is redrawn.
/vis/scene/endOfEventAction refresh
#/vis/scene/endOfEventAction accumulate
# To superimpose all of the events from a given run:
/vis/scene/endOfEventAction accumulate
#
# field04 specific setting
#
# To get nice view
#/vis/geometry/set/visibility World 0 false
/vis/geometry/set/colour World 0 1 1 1 .3 # gray
/vis/geometry/set/colour CaptureMgnt 0 0 0 1 .3 # blue
/vis/geometry/set/colour Target 0 1 0 0 .3 # red
/vis/geometry/set/colour TransferMgnt 0 0 1 0 .3 # green
/vis/geometry/set/colour TestPlane 0 1 1 0 .3 # yellow
/vis/geometry/set/colour Degrader 0 0 1 1 .3 # cyan
/vis/viewer/set/style surface
/vis/viewer/set/hiddenMarker true
#
# Specify view angle:
# Set direction from target to camera.
/vis/viewer/set/viewpointThetaPhi 110 140
#
# Specify zoom value:
/vis/viewer/zoom 1.4
#
# Draw magnetic field
#/vis/scene/add/magneticField 1
#
# Re-establish auto refreshing and verbosity:
/vis/viewer/set/autoRefresh true
/vis/verbose warnings
#
# For file-based drivers, use this to create an empty detector view:
#/vis/viewer/flush