2 -----------------------------------------------------------------
7 interfaces: new subcategory introduced
11 new subdirectory for Root dictionary classes;
12 only header files that are specified in the include/.rootcint
15 28.3.00: new subcategories introduced:
16 geometry, physics, event, run, global, visualization
20 added inheritance from AliVMC;
21 Changed the roles with TGeant4: main program
22 instantiates TG4RunManager and TGeant4 is created
23 within TG4RunManager constructor.
24 (see aliroot/History, too)
28 AliMC methods for visualization (Gsatt, Gdraw)
31 Gdraw() ignores the last four parameters (e.g. position of the volume
32 center and scaling factors) the volume is automatically centered
33 in the window and make it confortably on the view at any viewing
35 If the visible attributes for a required volume are shared by others
36 (in G4 it is possible) Gsatt() duplicates them so they
37 can be changed at any time.
40 New class TG4GeometryOutputManager:
41 management of g3calls.dat output (open/close
42 the file; prvides write method for G3 "tokens").
46 Added methods for writing (if fWriteGeometry is set true
47 -> the methods for writing tokens WG4xxx() are called before
48 TG4xxx()) and reading tokens (ReadG3Geometry())
49 to/from g3calls.dat files.
53 Exception case "INCONSISTENT GEOMETRY" has been
54 taken into account: for each mother copy
55 (created with gsposp) a new VTE daughter is creted
56 !! TO DO: to create only new G3Pos, set
57 mother <-> daughter and use test of existence of logical
58 volume in G3toG4BuildTree to position this volume
63 After the AG4_VISUALIZE flag has been replaced with G4VIS_USE,
64 the independent on Ali* specifics class has been renamed from
65 AlVisManager and moved from visualization.
68 TG4PhysicsList::ConstructEM()
69 When only one instance of Muon process of each type
70 is created for both mu+ and mu- -> run-time error.
71 The new instance of each process is created each time
72 when it is associated with a new particle.
75 Physics management - new classes:
77 - cuts/process flags handling has been moved from
78 TG4GeometryManager here
79 - methods SetCut(), SetProcess() fro global setup
80 of physics has been implemented
82 - replaced the RW vector of cut/flag values;
83 get methods moved from TG4Limits here
84 (as these classes are used also for storing the global
87 - replaced AliPhysics list
88 - build physics setup according to TG4Cut/FlagVector
89 set in the TG4PhysicsManager
92 New category g4mc has been created;
93 It contains all classes that implements the interface
94 to the abstract Monte Carlo (AliMC) class for Geant4.
96 g3tog4 - corrected methods from geant4 g3tog4 package
97 (moved from previous g3tog4 category)
98 management - all other classes/methods implemented for
104 g3tog4 has been replaced from G4 g3tog4;
105 WG4xxx() methods for writing tokens to g3calls.dat
106 have been merged into the TG4GeometryOutputManager class;
107 TG4gstparcut/flag() methods have been moved to
108 TG4GeometryManager as they were not yet provided to G4.
111 Added methods for reading (RG4xxx()) and writing (WG4xxx())
112 tokens to/from g3calls.dat file.
113 The generated g3calls.dat file can be processed with standard
118 Class methods has been modified:
119 public UpdateVTE() method has been added:
120 it redefines the divided volume parameters,
121 creates solid and eventually envelope VTE and its solid,
122 and calculates parameters needed for creating G4PVReplica
123 (parameters are stored in class data members)
124 public CreatePVReplica() has been modified:
125 it creates G4PVReplica using the parameteres stored
126 in relevant class data members;
130 - Test of existence of clones of mother added;
131 TO DO: restore Npar, Rpar from mother when G4gsdvn/t(2)
132 are processed in order to take into account positioning
133 with gsposp into division.
134 - CONS division for axis 2,3 has been implemented;
135 missing parts in CreateEnvelope() for supported division
137 G3Pos, TG3toG4BUildTree:
138 Mother volume name is stored in G3Pos in order to be able to
139 place the VTE's positions correctly in case when more
140 different mothers (not only clone copies) exist.
144 removed inheritance from orig. VolTableEntry,
145 added vector of TG3VolTableEntry* fClones;
146 In case a volume is positioned with negative parameters
147 or via gsposp - a new vte (clone) is created and
148 its pointer is added to fClones. The original vte
152 TG3Division - new class;
153 Used for storing the parameters for the division
154 methods and for creating the G4 correspondent geometry;
155 Extern methods G4MakeReplica/Envelope were moved
156 here (as member function CreateLV(), CreateEnvelope()
157 Division methods TG4Gstdvn/t(2) has been rewritten with
159 TO DO: Extract the parts that build G4 geometry objects
160 into TG3toG4BuildTree() method and unified this method
161 for VTEs with positions and divisions;
164 Updated to geant4.0.1 release:
165 change of the "table" classes
166 -> added class: TG3Mat/Med/RotTable,
167 TG3Mat/Med/RotTableEntry
168 TG3VolTableEntry : VolTableEntry
169 Change of the way of construction of G4 geometry:
170 the G3VolTable is filled (with TG3VolTableEntry objects)
171 when processing the G3-like methods and G4 geometry objects
172 are created afterwords.
173 Division methods TG4Gstdvn/t(2) has not yet been updated.
176 Gstmate(), Gstmixt():
177 retrieving elements from the default element table
178 has been implemented;
179 several bugs in materials definition were fixed;
180 MixMaterial() - new method for mixing materials
184 AliG3GeometryManager:
185 Gstpar() method has been updated for setting
186 physics processes control flags, too, in similar way as
190 AliG3GeometryManager:
191 Gstpar() method (that sets the tracking media parameters
192 in Geant3) has been implemented for kinetic energu cut parameters:
193 The cut values are stored in the AliLimits:G4UserLimits (global)
194 and are applied by AliSpecialCuts:G4UserSpecialCuts (physics)
195 as the additional process that is added to the defined particles
196 in the AliPhysicsList (physics).
199 switchs the fUseG3Defaults option ->
200 the G3 default cut values are set for all logical volumes ;
202 returns true if any logical volume has defined the
204 GetSwitchCutVector():
205 returns a vector of booleans - with info which particles
206 have set the special cuts;
207 AliG3Defaults: new class
208 contains the Geant3 default parameters as static constants
209 and a static method for inquiring whether a given parameter
210 value is equal to the default one;
213 All AG4gsdv*.cxx were reimplemented. Now it works for following
215 BOX, TRD1-z, TRD2-z,TUBE, TUBS, CONE-phi,z CONS-phi,z
218 G3SensVolVector - has been added:
219 In case the created logical volume contains a medium with isvol>0
220 its pointer is stored in the extern G3SensVol vector.
221 The G3SensVol is defined in AliG3GeometryManager.cxx.
224 Class AliG3ToG4Geometry was renamed to AliG3GeometryManager
225 and moved from global;
228 Category for classes and methods for porting