MOKKA - a detailed Geant4 simulation for the International Linear Collider detectors

(last update: Dezember 2005)

    « Mokka » is a full simulation using Geant4 and a realistic description of a detector for the future linear collider. The first basic model was the proposed for the Tesla project, described in details in the TESLA Technical Design Report (T.D.R.). Since 1999 several new detector parts, models and prototypes became also available in the Mokka geometry database. In its last releases Mokka provides several models for both LDC and SiD detector concepts.
 

  New release mokka-06-01 available for download
 

  • History and old stuff
  • Geometry models drived by Mokka
  •  
  • MOKKA software design
  • Geometry Database
  • Mokka F77 / C / C++ Common Geometry Access (CGA) APIs 
  • BRAHMS backward compatibility

  •  
  • Getting and running Mokka UPDATED Mars 2005
  • Mokka developer's corner UPDATED Oct 2002

  •  

    Geometry models drived by Mokka

    Mokka is geometry data driven, able to simulate several detector or prototype models from its geometry database. The actual available models are listed in the database "models03" in the Mokka reference database server. Following we describe here just same examples of the actual models in the database.

    1-  LDC detector Models:

          Four models are available for the LDC concept:

        1) LDC00 it's the same as the model D12, almost the baseline for the Tesla TDR proposal. What changes with LDC00 is that you can change same key parameters in your local steering files in such way to change this geometry baseline. For example, you can try it with a smaller TPC, with a different number of layers for the calorimeters, with different radiator layer thickness for each calorimeter and so on. But as default you'll get the Tesla model when you ask LDC00 without parameters.

       2) LDC00Sc is exactly the same as LDC00, but with scintillators as sentive material for the Hcal. (LDC00 has RPC).

      3) LDC01 is a new LDC proposal by Henri Videau. The TPC dimensions are smaller than D12, the Ecal has only 30 layers (20X 2.1mm + 10X 4.2 mm as W radiator), etc. LDC01 has RPC as sensitive model for the Hcal (see below).

      4) LDC01Sc is the same as LDC01, but with scintillators as sentive material for the Hcal.

        For both models LDC01 and LDC01Sc the inner tracking devices are the same as for the old Tesla D12 model.  The TPC is smaller than the Tesla proposal (outer_radius  = 1580.00 mm, Z size = 4400 mm). The Ecal has the same geometry detail level as the Tesla TDR one, but it  has only 30 layers: a first set of 20 and a set of 10, before the Hcal. The Hcal has the same detail level as the Tesla TDR Hcal, but the barrel staves are composed by five standard modules: there aren't no more special end modules with a special shape in the barrel. Anyway, for backward compatibility with reconstruction programs, the HcalBarrelEndCollection hits collection still exists indeed it never should contain hits. The TPC, Ecal and Hcal barrels shares the same Z size.

          The default sensitive model for SHcal01 is RPC1. If you want to play with the scintillator one, please, use the model LDC01Sc. 

          LDC00, LDC00Sc, LDC01 and LDC01Sc are composed by the following subdetectors:
          tube01, vxd00, sit00, ftd01, LumiCalS, mask04, STpc01, SEcal01, SHcal01, SCoil01, SYoke01 and SField01.
        

    2- SiD detector Models:

         Thanks to Valeri Saveliev Mokka implements the  SiD Si tracker device. Thanks to this implementation and the new geometry scaling mechanism, Mokka provides models describing the SiD detector concept.

          SiD01 implements the SiD detector concept using the calorimeters and so on from LDC, but with all the parameters adapted the best possible to agree with all the current SiD proposal. The considered values were found in the sidmay05 document. SiD02 implements the SiD detector concept using also the calorimeters and so on from LDC, but without modifications except the calorimeter inner radius and Z dimensions to agree with the Si tracker device. For both models the field is set to 5.0 tesla.

           SiD01 and SiD02 are compose both by the following subdetector:
           SiDFwd00, SiDBar00, tubeSiD01, vxdSiD00, ftdSiD00, SEcal01, SHcal01, SCoil01, SYoke01 and SField01.

           SiDBar00 implements the Si Tracker barrel and SiDFwd00 the Si Tracker end caps. tubeSiD01, vxdSiD00 and ftdSiD00 are LDC devices adapted for the SiD dimensions. ftdSiD00 works as the Si vxd disks for these models.

       As the SLIC output has its own hits collection names, before reading lcio files created by Mokka using reconstruction or analysis programs written to co-work with SLIC, the user should map the hits collections for the SLIC default names, perhaps to merge some collections (or to adapt the reconstruction or analysis programs) . The Mokka SiD models generate the following his collections:

    VXDCollection : hits in the VXD barrel;
    FTDCollection : hits in the VXD end caps;

    SiDBar00Collection : hits in the Si Tracker barrel;
    SiDFwd00Collection : hits in the Si Tracker end caps;

    EcalBarrelCollection : hits in the Ecal barrel;
    EcalEndcapCollection : hits in the Ecal end caps;

    HcalBarrelRegCollection : hits in the Hcal barrel;
    HcalBarrelEndCollection : always empty for SiD models;
    HcalEndCapsCollection : hits in the Hcal end caps. 

    3-  Tesla detector Models:

          Click here to see some TESLA proposed detector views. Following you have a list of some Tesla detector models you can simulate with Mokka:

         Thanks to Bogdan Pawlik the detector model D12 implements essentially the model D09 with new drivers for the recent geometry as proposed by the FCAL colaboration: cylindrical geometry for tungsten mask and LumiCal, and conical (86 mrad opening angle) iron beam pipe which extends down to LumiCal. In order to avoid the overlap of the new conical tube with the FTD rings, the inner radius of the FTD rings were increased.  D12 brings also a improved TPC description thanks to Ties Behnke.

  • D09

  • 2- Calorimeter Prototypes UPDATED July 2004




    TESLA detector views


    MOKKA software design


        Mokka is a C++ application able to access the geometry database on the fly via a MySQL C++ wrapper and, using the Geant4 framework, build the detector geometry and simulate events in this geometry.
        The run control and conditions are setup via some run control commands. It can be done via commands in steering files, interactive command dialogues or via macro files. As one of the Geant4 facilities it's very easy to read Pythia event files in HEPEvt or stdhep file formats, to be tracked inside the detector.
         Event output files can be write on disk in ASCII or LCIO file formats.

        Mokka is also able to generate Geant3 Fortran code for BRAHMS , the so called "BRAHMS backward facility" .


    Geometry Database

        The mechanic designs led to Entity Relationship data models to describe and to keep the geometrical parameters in a relational database. Also some technical sheets are available to help to decode this model and to navigate in the database issuing SQL queries.
        The actual data values are kept in a MySQL data base server. MySQL is a relational database management system (DBMS) implemented in a client server TCP/IP model, it's free and widely portable. It offers a lot of useful features like C and Java APIs, management utilities, etc. Thanks to a MySQL C++ API, the geometry to be simulated by Mokka is completely data driven at run time.
        You can get the following more information about the geometry databases:
    You can browse the actual database values here.


     

    BRAHMS backward compatibility


        In option, at launch time Mokka is able to write automatically a Geant3 Fortran code to implement the electromagnetic calorimeter geometry into the BRAHMS DESY official simulation package. The logical connection (material index, etc.) is kept aside via a Fortran parameters included file. A stepping time cell mapping function is also automatically generated.
        The translation is quite simple: Geant3 and Geant4 deal both with the same kind of volume shapes, Box, Tubes and so on. So, in the Mokka C++ code where these shapes are placed we have all the information we need to write on the fly the Geant3 Fortran calls.
        The following mapping from some of the Geant4 geometry objects to the Geant3 geometry subroutines is implemented: the Geant4 Solid and Logical Volume object creations are translated to Geant3 GSVOLU calls; the Geant4 placements to the Geant3 GPOS calls.



    Team working on the Geant4 simulation for The Future Linear Collider:
        Henri VIDEAU
        Jean-Claude BRIENT
        Paulo Mora de Freitas
        Gabriel Musat