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.
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.
HistogramEvent
, for 1D case,
calculate the desired distribution (or observable) value, named
ObsValue
- e.g. dijet mass mjj
, then
fill the new histogram using the command:
call FillHist2d(HIST_ID, ObsValue_x, ObsValue_y, dw,
NLO)
where ObsValue_x
and ObsValue_y
are
the x-axis and y-axis observables, respectively. They can be,
e.g. etajj
and mjj
, which must be
calculated from the external-state momenta.
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.