A pre-framework GEANT4 simulation of the LUCID experiment.
Welcome! This is the GitHub repo for the GEANT4 simulation of the Langton Ultimate Cosmic ray Intensity Detector (LUCID) experiment. This code was used to generate the results featured in the CERN@school paper:
i.e. the proceedings from the corresponding conference presentation at the 20th International Conference on Computing in High Energy and Nuclear Physics, a.k.a. CHEP 2013.
- This code dates from 2013. While every attempt has been made to ensure that it is usable, some work may be required to get it running on your own particular system. Unfortunately CERN@school cannot guarantee support for this. Please proceed at your own risk.
- This repository is now deprecated, and remains here for legacy purposes. For future work regarding LUCID and CERN@school, please refer to the Institute for Research in Schools (IRIS) GitHub repository. Please also feel free to fork and modify this code as required for your own research.
CERN@school was supported by the UK Science and Technology Facilities Council (STFC) via grant numbers ST/J000256/1 and ST/N00101X/1, as well as a Special Award from the Royal Commission for the Exhibition of 1851. The CERN@school Collaboration would also like to acknowledge the support provided by the GridPP Collaboration in terms of both computing resources and technical guidance from collaboration members.
We run SimLUCID (lite) on Xubuntu 13.04. If it's easier for you, you can run a Xubuntu 13.04 virtual machine on Windows using VirtualBox.
You will need to install the following software on your system:
Python
ROOT
GEANT4
Make a note of where your installations are located. For example, I
keep my ROOT
installation here:
cd $ROOTSYS # change directory to my ROOT installation directory.
pwd # print the working directory, which is:
> /home/alovelace/software/root-v5-34
and my GEANT4
installation here:
cd $GEANT4INSTALLDIR
pwd
> /home/alovelace/software/geant4.9.6.p02-install/
You will need these for configuring SimLUCID
later.
To clone the SimLUCID-lite repository to your system open a terminal shell and type the following commands.
cd $WORKINGDIR # environment variable for your working directory,
# i.e. change directory to your working directory.
git clone https://github.com/CERNatschool/SimLUCID-lite
cd SimLUCID-lite
Advanced users may wish to fork the SimLUCID-lite
repo so that
you can play with the code and commit your own changes to your GitHub
account. Go for it!
Now that you have the SimLUCID-lite
code on your
ROOT
- and GEANT4
-ready system, you're ready to "build" the
SimLUCID-lite
executable (i.e. the file that will actually perform the
simulation).
There are two shell scripts that must be generated in order to setup the
working environment and build the SimLUCID
program. These are:
setup.sh
: sets up the environment variables;buildandmake.sh
: builds theSimLUCID
program.
These are not included with the code from GitHub; rather, the Python
script configure.py
creates these for you with arguments you supply:
python configure.py $ROOTSYS $GEANT4INSTALLDIR
> # output from the script
cd simlucid-build
Then run the setup script to set the required environment variables:
source setup.sh # Run the setup script
Then build and make SimLUCID
:
source buildandmake.sh #
(You can take a look at these scripts to see what they're doing, if you like.)
If you're running on Xubuntu and have OpenInventor
installed, you should
be able to run the visualisation example provided:
./SimLucid visualtest.in
Alternatively, you can run the simulation in batch mode using the following example:
./SimLucid batchtest.in
To start to investigate the physics, you can look at the ROOT files produced by the simulation:
timepix.root
pseudodet.root
Further information can be found in the CHEP 2013 paper referenced below.
- The Institute for Research in Schools (IRIS) homepage;
- The IRIS CERN@school website;
- The Official IRIS GitHub Organization;
- The CHEP 2013 presentation on SimLUCID-lite;
- The CHEP 2013 conference proceedings (JINST, Open Access);
- The CERN@school Document Index.