Running NUISANCE at Nevis 
NUISANCE
 is a tool for comparing the output of different neutrino event generators, including 
GENIE
, 
NuWro
, and 
GiBUU
. 
 Super-quick guide to running NUISANCE 
Start from a clean login environment (no packages set up via 
module load or FNAL UPS). Use the following command:
source /nevis/amsterdam/share/seligman/microboone/nuisance/setup_nuisance.sh
Advice: Do not treat 
setup_nuisance.sh as a "mysterious black box" that does everything for you. Almost certainly as you work with NUISANCE you will have to adjust things to suit your task. 
Assume you've run GENIE to generate events; e.g., the following will generate 100 1
GeV ν
μ on Ar
40 events. The output will be in 
gntp.0.ghep.root.
gevgen -n 100 -p 14 -t 1000180400 -e 1 --run 100 \
   -f ${XSEC_PKG_DATA}/uB-flux.root,numu \
   --seed 2989819 --cross-sections $GXMLPATH/gxspl-FNALsmall.xml \
   --event-generator-list Default
NUISANCE requires that GENIE files get additional processing, using similar options used for the GENIE run; e.g., to process the output of the above 
gevgen command:
PrepareGENIE -i gntp.0.ghep.root -f ${XSEC_PKG_DATA}/uB-flux.root,numu -t 1000180400
Note that the 
PrepareGENIE command requires the same flux file and target(s) used to run GENIE. 
PrepareGENIE will modify 
gntp.0.ghep.root with additional spline information, so it needs write access to the file. 
Now the NUISANCE commands can be used on the modified GENIE output file; e.g.,
nuisflat -i gntp.0.ghep.root -o nuisance-output.root
 What next? 
Consult the following for more information about running the event generators and NUISANCE. 
Warning: Ignore the instructions on how to install packages. Getting a consistent set of software packages in this suite (ROOT, GENIE, NuWro, GiBUU, NUISANCE) to compile and execute is a non-trivial task, and the installation directions in the following documents do not give all the steps necessary.  
  
If you have to recompile any of the above packages, I suggest starting with the 
setup_nuisance.sh script. 
WilliamSeligman included comments that indicate the differences between compiling the packages according to the directions and what's actually required. Note that if you recompile GENIE, you must also recompile NUISANCE since it calls GENIE routines directly. 
 Where to find things 
| Software | Location | 
| ROOT   | Set up by module load root | 
| libxml2   | Installed as part of Scientific Linux 6 | 
| log4cpp   | Installed as part of Scientific Linux 6 | 
| LHAPDF   | Installed as part of Scientific Linux 6 | 
| PYTHIA6   | /usr/nevis/pythia6/v6_428/ | 
| GENIE | ${XSEC_PKG_DIR}/genie | 
| NuWro | ${XSEC_PKG_DIR}/nuwro | 
| GiBUU | ${XSEC_PKG_DIR}/GiBUU | 
| NUISANCE | ${XSEC_PKG_DIR}/nuisance | 
GENIE also requires spline files which, in the configuration set up by 
setup_nuisance.sh, are stored in 
${XSEC_PKG_DATA}. That location and 
${XSEC_PKG_DIR} are defined in 
setup_nuisance.sh.