source: trunk/examples/novice/N01/README @ 1254

Last change on this file since 1254 was 807, checked in by garnier, 16 years ago

update

File size: 2.4 KB
Line 
1$Id: README,v 1.3 2002/07/02 18:35:01 asaim Exp $
2-------------------------------------------------------------------
3
4     =========================================================
5     Geant4 - an Object-Oriented Toolkit for Simulation in HEP
6     =========================================================
7
8                            ExampleN01
9                            ----------
10
11 ExampleN01 is the simplest example in this novice level examples. It has
12a tracker tube and a sandwitch calorimeter made of boxes. It shoots a
13geantino (pseudo-particle which has no "real" physics interaction) per
14one event. This example demonstrates how the basic GEANT4 framework works.
15
161. Detector description
17
18 The detector is defined in ExN01DetectorConstruction.cc. Argon gas,
19aluminum and lead are defined first, where all of them are single element
20materials. Though materials are assigned for each volume, they will not
21affect the trajectory of a geantino.
22
23 The experimental hall, which is the world volume, is made of argon gas
24and it is a box. The tracker tube made of argon gas is placed at
25(-1m,0m,0m) respect to the origin of the world volume. The calorimeter
26block made of lead and it has 19 layers of aluminum plates inside.
27
282. Physics processes
29
30 ExN01PhysicsList.cc defines only a geantino and a transportation
31process. Though cutoff will not be applied onto geantino, a dummy
32value must be set.
33
343. Event generation
35
36 G4ParticleGun is instanciated in the constructor of
37ExN01PrimaryGeneratorAction class. At the every event, the public
38method GeneratePrimaries(G4Event*) is invoked. In this method,
39G4ParticleGun is accessed to generate a primary particle (geantino).
40 Please note that the direction of the primary particle is set
41just before shooting, i.e. GeneratePrimaryVertex() method invokation.
42G4ParticleGun class itself does not have any capability of randomizing
43the energy nor the momentum of the primary particle. Therefore the user
44should implement randomizing code in the GeneratePrimaries() method.
45
464. main()
47
48 exampleN01.cc has the main() method. In the main() method, three
49mandatory user classes described above are constructed and set to
50the G4RunManager object. Then, the "Initialize()" method of G4RunManager
51is invoked.
52 Some UI commands for setting verbosity are applied via hardly coded
53"ApplyCommand()" method of G4UImanager class.
54 The "BeamOn()" method triggers the event loop. The argument of this
55method is the number of event in the run.
56
57
Note: See TracBrowser for help on using the repository browser.