Julia Yarba wrote: > > > Hi Rooters, > I'm curious about TGeant3 class. I think it's been somewhere around for > quite a while; at least I hear of it several times. What puzzles me is that > so far I can't see it as a part of the official release of root. > I've looked the info on the web and also tried to browse our local version > here at FNAL (v2_22_09) but still fail to catch TGeant3. > Am I looking at the wrong thing ? Or it's not a part of root package yet ? > If it's not a part of root **official** release, is there a plan to make it > into root sometimes in the near future ? > Thank you. > Julia Yarba > FNAL/CD-PAT Dear Julia, Yes, we have developed in the context of the ALICE collaboration a set of classes to interface the simulation program with Geant3, Geant4, Fast MC and possibly other MonteCarlos such as FLUKA. A common interface is provided by an abstract base class TVirtualMC from which we derive TGeant3, TGeant4, AliFast, etc ------------------------- I TVirtualMC I ------------------------- / I \ / I \ / I \ / I \ -------------- ----------------- ---------------- | TGeant3 | | TGeant4 | | AliFast | | THIGZ | | + | | | -------------- | a few more | ---------------- | | classes | | ----------------- | | -------------- ----------------- | Geant3 | | Geant4 | -------------- ----------------- TGeant3 ======= The TGeant3 class is a complete interface to the Geant3.21 package in f77. We have our own installation procedure for Geant3 with a minimal CERNLIB such that we can create a shared library for both CERNLIB (Zebra) and Geant3 on most Unix systems. This speeds up considerably the development phase. Because Geant3 uses the HIGZ package for graphics, we have also developed a small class THIGZ that emulates the HIGZ functionality in a Root pad. In this way, we have full access to the Geant3 graphics subsystem without linking with Graflib, etc. We developped a semi-automatic conversion tool converting the old geometry definition (about 50000 lines of code) in Fortran to C++ calls to the TVirtualMC class. >From Geant3, we use only the Geometry, tracking, Physics and graphics. The kinematics and the hits/digits are ALICE classes based on Root containers. In implementing this interface classes, we have a considerable gain in performance (the new package with Geant3 is almost two times faster than the old Fortran version!). We have gained a very modular hits/digits/kine mechanism stored in Root Trees. The link time has been reduced to nothing. The size of the executable module on disk went from 11 MBytes to 0.5 Mbytes. The size of the executable in memory is also smaller. We have replaced the old control based on FFREAD and KUIP by Root macros and Root interative control. The reconstruction program is developed on the same line. TGeant4 ======= Because we had a considerable investment in the geometry based on Geant3 it was out of question to start again from scratch to test a yet unmature Geant4. Our current MC is based on the solid Geant3, but we want to be able to test the same geometry with Geant4, be able to assess both the tracking and physics performance of Geant4 compared to Geant3. The TGeant4 class and the set of classes necessary to run with Geant4 have been developed. The interface to Geant4 is exclusively via the TVirtualMC class. This is quite interesting because the changes in the ALICE code are minimal to switch between Geant3 and Geant4. AliFast ======= This is a fast MonteCarlo specific to ALICE. Currently under development, the interface is again via the TVirtualMC abstract class. Both the TGeant3 and TGeant4 complex are currently operational. We are currently polishing these interfaces to remove a few ALICE specific cases. (The TVirtualMC is still called AliMC in the docs). Several collaborations have expressed interest in this architecture. The idea is to include these classes in the ROOT system in the near future. You can look at the current design and implementation at the following URLs: http://www1.cern.ch/ALICE/Projects/offline/aliroot/Welcome.html http://www.cern.ch/ALICE/Projects/offline/aliroot/roothtml/TGeant3.html http://www.cern.ch/ALICE/Projects/offline/aliroot/roothtml/THIGZ.html http://www.cern.ch/ALICE/Projects/offline/aliroot/Welcome.html http://home.cern.ch/~ivana/AliceG4/AG4Main.html http://home.cern.ch/~ivana/AliceG4/AG4Presentations.html Examples of geometry definition can be seen at URLs: http://www1.cern.ch/ALICE/Projects/offline/aliroot/roothtml/src/AliTPCv1.cxx.html http://www1.cern.ch/ALICE/Projects/offline/aliroot/roothtml/src/AliABSO.cxx.html Rene Brun
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:36 MET