Version 9 (modified by 7 years ago) (diff) | ,
---|
NUISCOMP
The NUISANCE comparison application can be used to generate MC predictions that can be directly compared with published scatter data by automatically selecting the correct event topologies from a provided event sample and binning them to match the data.
Wiki content
Running NUISCOMP
Author: Patrick Stowell
Date: June 2017
Versions: NUISANCE v2r0
, GENIE 2.12.6
The following example details how to run NUISANCE and produce MiniBooNE pion production comparisons to a generator of choice. Each generator requires very slightly different ways to handle NUISANCE, therefore multiple versions of this tutorial have been provided. Please use the following links to choose what generator you would like to use.
Useful NUISCOMP Commands
There are also additional card file arguments and run time arguments that can be used with nuiscomp to help with debugging or performing slightly different comparisons.
Overriding config options
A list of default configuration options requested in the code are given in the file 'parameters/config.xml'. When NUISANCE runs this file is automatically loaded in that start.
It is also possible however, to override any of these defaults at runtime by giving them to nuiscomp.
Card file override
One way to achieve this is to include them in your card file before all of your samples, like in the following examples setting the VERBOSITY level.
simple card format example
# config NAME VALUE config VERBOSITY 4 sample MiniBooNE_CCQE_XSec_1DQ2_nu GENIE:myfiles.root
xml card format example
<!-- <config NAME='VALUE' /> --> <config VERBOSITY='4' /> <sample name='MiniBooNE_CCQE_XSec_1DQ2_nu' input='GENIE:myfiles.root' />
Command line override
Another alternative is to override parameters on the command line using the '-q' argument.
$ nuiscomp -q NAME=VALUE ...
verbosity example
$ nuiscomp -c samples.card -o samples.root -q VERBOSITY=1
Restricting the number of events
The "-n" flag is included as a quick way to override the configuration value 'MAXEVENTS'.
When set to anything other than -1 this parameter will restrict the maximum number of events read from each MC file, reducing the time taken to run, but enhancing statistical uncertainty.
Example 1 : Limit the number of events to 5000
$ nuiscomp -c samples.card -o samples.root -n 5000
Example 2 : Limit the number of events to 1E6
$ nuiscomp -c samples.card -o samples.root -n 1000000
Example 3 : Limit the number of events to 1E6
$ nuiscomp -c samples.card -o samples.root -q MAXEVENTS=1000000
Example 4 : Run with the default limit given in 'parameters/config.xml'
$ nuiscomp -c samples.card -o samples.root
Example 5 : Run with no event limit
$ nuiscomp -c samples.card -o samples.root -n -1
Example 6 : Run with no event limit
$ nuiscomp -c samples.card -o samples.root -q MAXEVENTS=-1
WARNING: Restricting the number of events doesn't work for event samples that have had to be 'spliced' together by NUISANCE.
For example to make NEUT comparisons to MiniBooNE_CCQELike_XSec_1DQ2_antinu data, both a numb and numu event file need to be passed in so that NUISANCE can add them together to make the prediction. If MAXEVENTS was not set to '-1' for this sample, the results will be incorrect as the relative proportions of events will be incorrectly sampled!
Specifying fake data
Increasing or decreasing Verbosity
The +/-e and +/-v flags are reserved to increase or decrease the NUISANCE verbosity quickly at runtime.
Increase verbosity by one level
$ nuiscomp -c samples.card -o samples.root +v
Decrease verbosity by one level
$ nuiscomp -c samples.card -o samples.root -v
Increase verbosity by two levels
$ nuiscomp -c samples.card -o samples.root +v +v
Decrease error verbosity by one level
$ nuiscomp -c samples.card -o samples.root -e
Increase error verbosity by two levels
$ nuiscomp -c samples.card -o samples.root +e +e