View Source

Along with other software for LCD research, a common distribution of the SLIC simulator package is available for SLAC Unix users.

{info:title=Access to NFS}
Access to SLAC NFS can be requested from the [Unix Administration List|mailto:unix-admin@slac.stanford.edu]. (Of course, you must already
have a SLAC Unix account to get NFS access.)
{info}

Open a connection to a SLAC Unix machine.

{noformat}
ssh [YOURACCOUNT]@iris.slac.stanford.edu
{noformat}

Replace *YOURACCOUNT* with your actual SLAC Unix account.

Now, switch to the bash shell.

{noformat}
bash
{noformat}

You need to setup the project environment to access the common software
distribution.

{noformat}
source /nfs/slac/g/lcd/mc/prj/bin/prj.sh
{noformat}

Now, you should be able to run slic from {{$PRJ_BIN}}.

{noformat}
slic [arguments]
{noformat}

{tip:title=SLIC Command Line Interface}
The SLIC command line interface maps directly to Geant4 macro commands.
{tip}

To see available command line options, invoke the _help_ command.

{noformat}
slic --help
{noformat}

There are a number of different ways to run SLIC, including purely
macro or command-line driven.

For instance, here is a command to load the SDJan03 test geometry
and start an interactive terminal.

{noformat}
slic -g $PRJ_DIST/slic/current/examples/sdjan03/SDJan03.lcdd -n
{noformat}

{tip:title=LCDD files for Common Detectors}
The LCDD files for common detectors such as SiD are kept at */nfs/slac/g/lcd/mc/prj/data/detectors*,
which should be accessible from the SLAC Linux machines.
{tip}

Now, in order to have a work area for your SLIC usage, checkout the
package from CVS.

{noformat}
export CVSROOT=:pserver:anonymous@cvs.freehep.org:/cvs/lcd
cvs co slic
cd slic
{noformat}

Within this directory, you will be able to write LCIO files.

This is an example of visualizing a single muon event in the SDJan03 test
detector using GPS. From your slic directory, execute the following
commands.

{noformat}
slic -g examples/sdjan03/SDJan03.lcdd -n
Idle>/control/execute macros/vis_gl.mac
Idle>/control/execute macros/gps.mac
Idle>/run/beamOn
{noformat}

You could also dump a heprep.

{noformat}
Idle>/control/execute macros/heprep2.mac
{noformat}

Or you may want to check for overlaps in the detector.

{noformat}
Idle>/geometry/test/recursive_test
{noformat}

A purely macro-driven job can be executed from the slic directory like so.

{noformat}
slic macros/sdjan03_dbg.mac
{noformat}

You can dump this event using an LCIO utility.

{noformat}
lcio-dumpevent outfile.slcio 0 0
{noformat}

In general, a minimalist SLIC session will be started as follows.

{noformat}
slic -g /path/to/geometry/file -n
{noformat}

The {{-n}} will start an interactive session.

Alternately, you may start up in interactive mode and manually input all required commands.

{noformat}
slic -n
Idle>/lcdd/setURI examples/sdjan03/SDJan03.lcdd
Idle>/run/initialize
{noformat}

An input file in StdHep or LCIO format can be specified with the {{-i}}
option or using the {{/generator/filename}} command from the {{PreInit>}} prompt.
When you call {{/run/beamOn}}, the events from this file will
be used as input to the simulator.

{tip:title=Batch job submission}
Here is a set of commands that may be useful for batch submission.
{noformat}
slic -g geom_file -i input_file -p path_for_output_file -o output_file -s #_events_to_skip -r #_events
{noformat}
{tip}