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
InitHistograms
create a new histogram template with the following command, for the 1D case:call CreateHist(HIST_ID, "title", nobins, xmin, xmax)
where
HIST_ID
is the integer identification of the histogram (make sure to use a different number for each histogram);title
the title of the histogram (will be used as plot title -- e.g.dS/dmjj: dijet mass
);nobins
the number of histogram bins;xmin
the lower bound of the histogram;xmax
the 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_x
andObsValue_y
are the x-axis and y-axis observables, respectively. They can be, e.g.etajj
andmjj
, which must be calculated from the external-state momenta. -
The utilities directory must be cleaned by using the
make clean
command 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.