nuisance is hosted by Hepforge, IPPP Durham
close Warning: Can't synchronize with repository "(default)" ("(default)" is not readable or not a Git repository.). Look in the Trac log for more information.

Version 10 (modified by Patrick Stowell, 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

  1. NUISCOMP
    1. Running NUISCOMP
  2. Useful NUISCOMP Commands
    1. Overriding config options
      1. Card file override
      2. Command line override
    2. Restricting the number of events
    3. Specifying fake data
    4. Increasing or decreasing Verbosity

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.

Example 1 : Card verbosity change in simple card format

# config  NAME  VALUE
config VERBOSITY 4
sample MiniBooNE_CCQE_XSec_1DQ2_nu GENIE:myfiles.root

Example 2 : Card verbosity change in xml card format

<!-- <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  ...

Example 3 : Runtime verbosity change

$ 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.

Example 1 : Increase verbosity by one level

$ nuiscomp -c samples.card -o samples.root +v

Example 2 : Decrease verbosity by one level

$ nuiscomp -c samples.card -o samples.root -v

Example 3 : Increase verbosity by two levels

$ nuiscomp -c samples.card -o samples.root +v +v

Example 4 : Decrease error verbosity by one level

$ nuiscomp -c samples.card -o samples.root -e

Example 5 : Increase error verbosity by two levels

$ nuiscomp -c samples.card -o samples.root +e +e