128 lines
5.0 KiB
Plaintext
128 lines
5.0 KiB
Plaintext
$Id: README 100688 2016-10-31 11:21:51Z gcosmo $
|
|
-------------------------------------------------------------------
|
|
|
|
=========================================================
|
|
Geant4 - an Object-Oriented Toolkit for Simulation in HEP
|
|
=========================================================
|
|
|
|
field01
|
|
-------
|
|
|
|
Example enabling investigation of tracking in a magnetic field.
|
|
|
|
|
|
The key capabilities of this example are creating a uniform magnetic
|
|
field interactively using the field messenger.
|
|
|
|
The capabilities are demonstrated in the field.in file:
|
|
|
|
/field/setStepperType 4
|
|
|
|
/field/setMinStep 0.1 mm
|
|
|
|
/field/update
|
|
|
|
There are several potential choices of the stepper type. Here are some suggestions:
|
|
===========================================================================
|
|
Number Name of Stepper Comments
|
|
===========================================================================
|
|
Recommended - new in Geant4 10.3-beta:
|
|
|
|
15 - Dormand Prince 745 : well-known and very efficient embedded method
|
|
Highly recommended in literature, including
|
|
Hairer & Wanner, & even Numerical Recipes
|
|
Used in several established RK code (e.g. DOPRI5)
|
|
===========================================================================
|
|
Good choices for reasonably smooth fields:
|
|
|
|
8 - Cash Karp RKF 45 : Old 'embedded' RK method - fairly robust,
|
|
Uses a pair 4th & 5th order formulae;
|
|
the difference is the error estimate.
|
|
Faster than old 'simple' that use two half
|
|
steps to estimate error.
|
|
Available since Geant4 1.0
|
|
|
|
45 - BogackiShampine45 : More efficient embedded 4/5 pair
|
|
Used in many applications, including
|
|
RKSUITE suite.
|
|
New in Geant4 10.3-beta:
|
|
|
|
===========================================================================
|
|
Default - good choice for unknown fields:
|
|
|
|
4 - ClassicalRK4 : original Runge-Kutta method, very robust but slower )
|
|
( obtains error estimate by doing 2 half steps )
|
|
|
|
===========================================================================
|
|
Good choices for non-smooth fields (with kinks, abrupt changes):
|
|
|
|
3 - SimpleHeum : low order, with error obtained from half-steps
|
|
23 - BogackiShampine23 : lower order embedded method (new in 10.3-beta)
|
|
===========================================================================
|
|
|
|
Background Information
|
|
|
|
1- GEOMETRY DEFINITION
|
|
|
|
The "absorber" is a solid made of a given material.
|
|
|
|
Three parameters define the absorber :
|
|
- the material of the absorber,
|
|
- the thickness of an absorber,
|
|
- the transverse size of the absorber (the input face is a square).
|
|
|
|
The volume "World" contains the "absorber".
|
|
In this test the parameters of the "World" can be changed , too.
|
|
|
|
In addition a transverse uniform magnetic field can be applied.
|
|
|
|
The default geometry is constructed in F01DetectorConstruction class,
|
|
but all the parameters can be changed via
|
|
the commands defined in the F01DetectorMessenger class.
|
|
|
|
2- AN EVENT : THE PRIMARY GENERATOR
|
|
|
|
The primary kinematic consists of a single particle (proton, Ekin = 1 GeV)
|
|
which hits the
|
|
absorber perpendicular to the input face. The type of the particle
|
|
and its energy are set in the F01PrimaryGeneratorAction class, and can
|
|
be changed via the G4 build-in commands of G4ParticleGun class (see
|
|
the macros provided with this example).
|
|
|
|
A RUN is a set of events.
|
|
|
|
3- DETECTOR RESPONSE
|
|
|
|
The spatial distribution of charged particles transported in magnetic
|
|
field is envistigated.
|
|
A HIT is a record, event per event , of all the
|
|
informations needed to simulate and analyse the detector response.
|
|
|
|
In this example a F01CalorHit is defined as a set of 2 informations:
|
|
- the total energy deposit in the absorber,
|
|
- the total tracklength of all charged particles in the absorber,
|
|
|
|
Therefore the absorber is declared
|
|
'sensitive detector' (SD), see F01CalorimeterSD, which means they can contribute to the hit.
|
|
|
|
4- PHYSICS LIST
|
|
|
|
The particle's type and the physic processes which will be available
|
|
in this example are set in the FTFP_BERT physics list. This physics list
|
|
requires data files for electromagnetic and hadronic processes.
|
|
See more on installation of the datasets in Geant4 Installation Guide,
|
|
|
|
5- HOW TO START ?
|
|
|
|
- execute field01 in 'batch' mode from macro file e.g.
|
|
% field01 field01.in
|
|
|
|
- execute field01 in 'interactive' mode with visualization e.g.
|
|
% field01
|
|
....
|
|
Idle> /control/execute vis.mac
|
|
....
|
|
|
|
|
|
|