Running GENIE at Nevis
To run the
GENIE Neutrino Monte Carlo
at Nevis, the simplest thing to do is to access the version maintained at
Fermilab
. I recommend against trying to install it on your laptop or in your own work area on the cluster; GENIE requires quite a few external packages, is finicky about those packages' versions, and the complete build/installation process has a number of pitfalls. Even the supposedly pre-configured
lamp
scripts, which are supposed to install all of GENIE's dependencies for you, does not work reliably.
Setting up GENIE
First, set up the Fermilab
UPS
environment:
source /a/share/amsterdam/seligman/microboone/setup_uboone.sh
You can look over the available versions of
GENIE:
ups list -aK+ genie
As of 5-Apr-2017, some of the output of that command includes:
"genie" "v2_12_4" "Linux64bit+2.6-2.12" "debug:e10:r6" ""
"genie" "v2_12_4" "Linux64bit+2.6-2.12" "e10:prof:r6" ""
"genie" "v2_12_2b" "Linux64bit+2.6-2.12" "e10:prof" ""
"genie" "v2_12_2b" "Linux64bit+2.6-2.12" "debug:e10" ""
It appears that the latest version of GENIE available at FNAL is v2_12_4. To set up the environment necessary to run the GENIE programs for that version:
setup genie v2_12_4 -q e10:prof:r6
Note that you don't include the OS version in the
setup command, but you do have to include the "qualifier" to select the options that were used to compile GENIE. Just copy whatever is in the quotes and put it after the
-q
option.
Running GENIE
The GENIE manual is
here
(PDF file). The practical examples start on page 59. Here's the first example, adapted for running at Nevis, and with an Ar
40 target. Note that the ν
μ histogram in the flux file is named "numu"; that name follows the comma after the .root file in the
-f
option. .
# Create a work area for transient output files
mkdir -p /a/data/westside/seligman/work
cd /a/data/westside/seligman/work
# Define variables to point at directories with flux and cross-section files.
export GENIE_FLUXES=/a/data/westside/uboone/flux
export GENIE_XSECS=/a/data/westside/uboone/genie/genie_xsec
# Generate 10,000 numu+Ar events with energies between 0 and 10 GeV
gevgen -n 10000 -p 14 -t 1000180400 -e 0,10 --run 100 \
-f $GENIE_FLUXES/bnb/current/histograms/ub470_r200_bnb_fhc/numode_bnb_470m_r200.root,numu
--seed 2989819 --cross-sections $GENIE_XSECS/v2_12_0/NULL/DefaultPlusMECWithNC/data/gxspl-FNALsmall.xml
Archeology: on 5-Apr-2017, I copied the flux files from
uboonegpvm01.fnal.gov:/uboone/data/flux
, and the GENIE spline files from
https://www.hepforge.org/archive/genie/data/
.
This example is straight from the manual: π
+ on O
16, with kinetic energy 200 MeV:
gevgen_hadron -n 10000 -p 211 -t 1000080160 -k 0.2 --seed 9839389
What's next?
As described in the GENIE manual, to turn various models on/off you need to generate new spline files. The program for doing that is
gmkspl
, described on page 63 of the manual. You'll want to copy the directory
$GENIE/config/
to your work area, then copy and edit file
EventGeneratorListAssembler.xml
; that revised file will become an input list to
gmkspl
. An possible example (ν
μ on Ar
40, up to 10 GeV):
gmkspl -p 14 -t 1000180400 -e 10 \
--event-generator-list my-edited-process-list.xml \
--output-cross-sections my-splines.xml
Note that
gmkspl
typically takes several hours to run.