source: trunk/examples/extended/parameterisations/gflash/README @ 1313

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

update

File size: 3.0 KB
Line 
1$README, v 1.0 26.11.2004 Joanna Weng  $
2-------------------------------------------------------------------
3
4
5
6
7     =========================================================
8     Geant4 - an Object-Oriented Toolkit for Simulation in HEP
9     =========================================================
10
11                            GFLASH Example
12                            ----------
13
14This examples demonstrates the use of the GFLASH parameterisation library.
15It uses the GFLASH equations(hep-ex/0001020, Grindhammer & Peters)
16to parametrise electromagnetic showers in matter.
17In this example the calorimeter is a simple cube,
18which consists of 10 x 10 crystals of PbWO4 (CMS like:).
19The Geant4 shower framework is used (see novice example N05)
20Geometry, sensitive detector, hits, processes are defined respectively in:
21
22        ExGflashDetectorConstruction
23        ExGflashSensitiveDetector
24        ExGflashHit
25        ExGflashPhysicsList
26
27Briefly, whenever a e-/e+  enters the calorimeter, it is parametrised if it
28has a minimum energy and the shower is expected to be contained
29in the calorimeter(so called " parameterisation envelope").
30If this is fullfilled the particle is killed, as well as all secondaries,
31and the energy is deposited according to the GFLASH equations.
32The example shows how to interface GFLASH to your application.
33The simulation time is measured, so the user can see immiadiatly
34the speed up by using GFLASH.
35 
36
37To use GFLASH the user has to implement the following to use GFLASH:
38
39        o ExGflashPhysicsList::AddParameterisation():
40        the paraameterisation has to be added to the processmanager.
41        Don't forget it, since than gflash is never triggered. 
42               
43        o ExGflashDetectorConstruction  :
44        Here GFLASH has to be initialized and assigend to the enelope, 
45        where it should be active (here our calorimeter = m_calo_log )
46        /**********************************************
47         * Initializing shower modell
48        ***********************************************/       
49        cout<<"Shower parameterization"<<endl;
50        m_theFastShowerModel =  new GFlashShowerModel("fastShowerModel",m_calo_log);
51        m_theParametrisation = new GFlashHomoShowerParamterisation(matManager->getMaterial(mat));
52        m_theFastShowerModel->SetParametrisation(*m_theParametrisation);
53        m_theFastShowerModel->SetParticleBounds(*m_theParticleBounds) ;
54        m_theFastShowerModel->SetHitMaker(*m_theHMaker);         
55        cout<<"end shower parameterization"<<endl;
56        /**********************************************/
57
58        o ExGflashSensitiveDetector:
59        It is mandatory to use G4VGFlashSensitiveDetector as (additionl)
60        base class for the sensitive detector.
61        Here it is necessary to implement a seperate
62        interface, where the GFlash spots are processed.
63        (ProcessHits(G4GFlashSpot*aSpot ,G4TouchableHistory* ROhist))
64        The separate interface is used, because the GFLASH spots contains
65        (naturally) less information than the full simulation.
66               
67        Note: Intead of particle gun the gps class is used here for
68        particle generation.
69 
Note: See TracBrowser for help on using the repository browser.