Many tools are available for the simulation of ILC detectors and the analysis of results. There are three differents toolchains that can be used. These have been developed separately in the US, European, and Asian (Japanese) regions.
The system used by SLAC and ALCPG has the SLIC Simulations Package (C++) with the org.lcsim for reconstruction and analysis using Java. This system also uses the JAS3 graphical analysis environment.
There is a C++ framework developed under ECFA that uses Mokka for the simulator with the MARLIN tool for analysis and reconstruction.
Finally, the ACFA group has a http://root.cern.ch-based suite of softare.
SLIC is the recommended simulator because it allows great flexibility and power in the specification of the detector by using the LCDD XML format. LCDD provides a 100% runtime description of the detector and its associated properties, including the volume hierarchy, sensitive detectors, and detector component identifiers, among other features. In practice, using this standard format is much easier than trying to author custom C++ code for different full detector designs and their subdetectors.
The org.lcsim package is recommended, because it uses the Java programming language, which is generally much easier to get started with and use than C++, especially for those with only partial time to devote to ILC research. Additionally, JAS3 provides a number of integrated tools such as the WIRED event display and an AIDA-compliant plotter.
The remainder of this FAQ focuses (almost exclusively) on the US/ALCPG/SLAC software suite based on SLIC and org.lcsim. The LCIO file format and its different language implementations ensure a basic level of interoperability between the three disparate systems. |
The LCSim Software Index has links to all the primary tools for ILC Detector Simulations. The Portals Section lists sites that cover full suites of software.
SLIC stands for "Simulator for the Linear Collider". It is a full simulation package that uses the Geant4 Monte Carlo toolkit to simulate the passage of particles through the detector. SLIC outputs LCIO files that can be analysed using a variety of language bindings, including Java, C++, FORTRAN, and Python. SLIC uses a separate backend for the input of detector data called Linear Collider Detector Description (LCDD), which itself is based on the GDML project from CERN.
Jeremy McCormick <jeremym@slac.stanford.edu> is the primary author and maintainer of SLIC. The handling of MCParticles in SLIC was based on earlier work by Ron Cassell <cassell@slac.stanford.edu> from a package called Linear Collider Simulator (LCS). Much work has also been done by Ron to verify and debug the LCIO output files.
Fermilab: Here are instructions for Fermilab users on getting started with SLIC.
SLAC: Here are instructions for SLAC users on running slic from the public Unix machines at the lab. SLIC can be used on any of the load-balanced interactive Linux clusters, including noric, iris, and yakut.