I. How to use the version controlled MicroBooNE BNB Flux files (gsimple files)

Currently MicroBooNE utilizes the GENIE event generator. GENIE accepts fluxes in the form of a "gsimple file", this is (effectively) an unweighted ntuple. We create the gsimple files that MicroBooNE uses from the MiniBooNE BNB simulation (see Sec. II).

All the gsimple files are stored at this absolute path:


Where there are two versions:

MCC8 and before : /pnfs/uboone/persistent/uboonebeam/bnb_gsimple/bnb_gsimple_fluxes_02.28.2014_470
Post-MCC8 : /pnfs/uboone/persistent/uboonebeam/bnb_gsimple/bnb_gsimple_fluxes_07.11.2017_470

Beyond this location these files are also backed up in SAM, see next sub-section

To implement these into uboonecode one will need change the following fcl parameters in genie_microboone.fcl and genie_microboone_default+MEC.fcl under "microboone_genie_simple"

FluxSearchPaths, is the absolute path to the directory that contains the gsimple files
FluxFiles, is the character string that mimics the file names, wildcards are acceptable

SAM backup for flux files

Currently there are 3 SAM definitions that contain tape backups of the MicroBooNE BNB-flux:

MCC8 and before, gsimple files : uboone_bnb_gsimple_fluxes_02_28_2014_470
post-MCC8, gsimple files : uboone_bnb_gsimple_fluxes_07_11_2017_470
post-MCC8, MiniBooNE ntuples : uboone_bnb_redecay_fluxes_07_11_2017_470

If you are interested in the flux for the full "world-volume", you'll want the 'dirt' flux:

post-MCC8 dirt, gsimple files : uboone_bnb_gsimple_fluxes_07_11_2017_470_dirt
post-MCC8 dirt, MiniBooNE ntuples : uboone_bnb_redecay_fluxes_07_11_2017_470_dirt

before users copy these files locally be sure to use "sam_prestage_dataset" there are many files that are located in these definitions and we should be responsible with our tape robots.

To recover these files I recommend using:

source /cvmfs/
setup uboonecode <version> -q <qual>
setup fife_utils
sam_clone_dataset -0 -v --name=<def> -d /pnfs/uboone/scratch/<your_desired_location>

This will copy all of the files in the definitions into the scratch space. Copy them into the scratch space first and then transfer them, these are a large number of files.

II. How to convert MiniBooNE weighted ntuples into GENIE compatible gsimple files

If one wants to modify the gsimple files that we are currently using or modify the work flow or expand the data saved in the gsimple file this can be done using the scripts located here

Currently within this directory is a setup script ( and a README file. Once this setup script is sourced one can build this directory.

One thing to note before building is that the last argument in the "DoIt()" function is the target POT. This should be the same for all gsimple files and is currently set to 500000000 POT to allow for adequate coverage of the underlaying ntuple via the "rejection method" sampling.

At this point one can use to submit the ntuple to gsimple conversion jobs to the grid. This is script has the following relevant arguments:

-f, number of first file to consider
-l, number of the last file to consider
-i, input filepath
-o, output filepath

For example: -f 0 -l 4999 -i /pnfs/uboone/persistent/uboonebeam/bnb_redecay/bnb_redecay_fluxes_07.11.2017_470 -o /pnfs/uboone/scratch/user/iamananalyzer/gsimplefiles/

will grab MiniBooNE ntuples with the name beammc_*.root and start 5,000 grid jobs and convert each to gsimple files as laid out here