Import Geant4 9.6.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 17:01:34 +02:00
parent b1eb5424d2
commit e2d2f9810a
10384 changed files with 698580 additions and 628834 deletions
+62 -49
View File
@@ -1,63 +1,76 @@
$Id$
///\file "geometry/transform/.README"
///\brief Extended example Transform README page
///\file "geometry/transforms/.README"
///\brief Extended example Transforms README page
/*! \page ExampleTransform Example Transform
/*! \page Exampletransforms Example transforms
This example shows various ways of definition of 3D transformations for
placing volumes.
\section Transforms_s1 Geometry construction
This extended example demonstrates various ways of definition of the
3D transformations for placing volumes. It is defined with use of classes
from the common examples repository.
The geometry setup consists of two trapezoid volumes which are placed
in a world so that their axial symmetry axis is in given theta and phi
polar angles. The various ways of placement are implemented in the
TrDetectorConstruction class in the following private functions:
Two G4Trd volumes (daughters) are placed within a G4Tubs (mother).
The various ways of placement are implemented in the DetectorConstruction class
in the following private functions:
- PlaceWithDirectMatrix()
- PlaceWithInverseMatrix()
- PlaceWithAxialRotations()
- PlaceWithEulerAngles()
- PlaceWithReflections()
which are then called from the TrDetectorConstruction::Construct() function.
All methods define exactly same geometry except for the placement
with reflection where trapezoids are placed with their symmetry axis
in parallel with z-axis in order to make easier to check reflection
visually.
which are then called from the Construct() function.
All methods define exactly same geometry except for the placement
with reflection where trapezoids are placed with their symmetry axis
in parallel with z-axis in order to make easier to check reflection
visually.
The method of placement can be selected interactively via the command
(see TrDetectorConstructionMessenger):
\verbatim
/transform/setMethod method
The method of placement can be selected interactively via the command
(see DetectorMessenger and debug.mac):
\verbatim
/placement/setMethod method
\endverbatim
\section Transforms_s2 Physics list
The example is defined with use of classes from the common examples repository,
that's why it has to be compiled in two steps (the first step has to be done
only once):
\verbatim
% cd $G4INSTALL/examples/extended/new/geometry/transform
% make setup
% make
PhysicsList.cc defines only geantino and transportation process.
\section Transforms_s3 Primary generator
Default kinematic is a geantino, at rest, at coordinate origin.
Can be changed with particleGun commands.
\section Transforms_s4 Physics
No physics; only transportation.
\section Transforms_s5 Visualisation
Visualization Manager is set in the main().
Initialisation of the drawing is done via the commands
/vis/.. in the macro vis.mac. This macro is automatically read from the main
in case of interactive running mode.
\section Transforms_s6 How to start ?
- Execute transforms in 'interactive mode' with visualization
\verbatim
% transforms
....
Idle> ---> type your commands. For instance:
Idle> /control/execute debug.mac
....
Idle> /placement/setMethod WithInverseMatrix
Idle> /run/beamOn 1
....
Idle> exit
\endverbatim
- Execute transforms in 'batch' mode from macro files
\verbatim
% transforms debug.mac
\endverbatim
To run example:
\verbatim
% transform
PreInit> /transform/setMethod WithDirectMatrix
PreInit> /run/initialize
Init> /run/beamOn 1
\endverbatim
*/