Implementation of new histograms
VBFNLO offers two kinds of histograms, 1D and 2D. Additional histograms can be created easily in VBFNLO by modifying the file utilities/histograms.F as follows.
-
In the subroutine
InitHistogramscreate a new histogram template with the following command, for the 1D case:call CreateHist(HIST_ID, "title", nobins, xmin, xmax)where
HIST_IDis the integer identification of the histogram (make sure to use a different number for each histogram);titlethe title of the histogram (will be used as plot title -- e.g.dS/dmjj: dijet mass);nobinsthe number of histogram bins;xminthe lower bound of the histogram;xmaxthe upper bound of histogram. Similarly, for the 2D case:call Create2dHist(HIST_ID, "title", "x-axis label", "y-axis label", nobins_x, nobins_y, xmin, xmax, ymin, ymax)where the number of bins and the bounds must be specified separately for the two axes. The axis labels
"x-axis label"and"y-axis label"can read e.g."eta_jj"and"m_jj", respectively. -
In the subroutine
HistogramEvent, for 1D case, calculate the desired distribution (or observable) value, namedObsValue- e.g. dijet massmjj, then fill the new histogram using the command:call FillHist2d(HIST_ID, ObsValue_x, ObsValue_y, dw, NLO)where
ObsValue_xandObsValue_yare the x-axis and y-axis observables, respectively. They can be, e.g.etajjandmjj, which must be calculated from the external-state momenta. -
The utilities directory must be cleaned by using the
make cleancommand before VBFNLO is remade and installed using the make and make install commands from the program directory.
Information about the final state particles is stored in the arrays
jets, leptons,
invisible (neutrinos) and photons as in
the previous section.