The ILC Detector Simulations FAQ
General
What tools are available for ILC Detector Simulations?
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. Much of the functionality within org.lcsim comes from the FreeHep Java Library.
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 suite of softare based on the ROOT framework.
Where can I get additional information about software packages?
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.
Why are SLIC and org.lcsim the recommended software tools?
SLIC is the recommended simulator because it allows great flexibility and power in the specification of the detector geometry. LCDD provides a 100% runtime description of the detector and its associated properties, including the detailed volume hierarchy, assignment and properties of sensitive detectors, and the specification of detector component identifiers, among many other features. In practice, writing files in this standardized format is much easier than trying to author custom C++ code for each proposed full detector design 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 should you want to "mix and match".
Feedback
Is there an forum for ILC detector simulation issues?
The linearcollider.org forum is an appropriate place to post your questions on detector simulations and reconstruction and analysis.
How do I file a bug report or make a feature request related to ILC software?
The SLAC Jira Bugtracker allows users to submit bug reports or make feature requests.
The projects relavent to ILC are ...
Each package will be covered in more detail within this FAQ.
How do I file a bug report or make feature request for auxiliary ILC software?
Several packages are used by org.lcsim that are not specific to ILC simulations. There is a separate FreeHep bugtracker for these projects. These Jira projects include ...
How do I get an account on the ILC or FreeHep Jira?
Contact Tony Johnson <tony_johnson@slac.stanford.edu> to obtain an account on either of these systems.
SLIC
What is SLIC?
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.
Where is SLIC's homepage?
The SLIC Confluence page is the best source for up-to-date information on this software package.
Who is the primary maintainer of SLIC?
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.
At which HEP sites and labs is SLIC installed?
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.
NICADD: A copy of SLIC is available on the NICADD Linux clusters at /k2data/APPS/SimDist.
Installing SLIC
Which operating systems and compilers does SLIC support?
These are known working configurations of platform and compiler.
platform |
compiler |
compiler version |
---|---|---|
Linux |
g++ |
3.3, 3.4 |
OSX |
g++ |
4.0 |
Windows (Cygwin) |
g++ |
3.4 |
The only supported compiler is g++. Other versions may work, but these are the ones that are known to build successfully.