HBOOK and its output options

[HOUTOPTS]

The HBOOK system consists of a few hundred Fortran subroutines which enable the user to symbolically define, fill and output one- and two-dimensional density estimators, under the form of histograms, scatter-plots and tables and to handle Ntuples.

Some interesting features of HBOOK are:

  1. The basic operations require the knowledge of just a few subroutine calls that can be learned in half an hour, reading a few pages of documentation. The internal structure of the package is also such that the options that are not directly called by the user program are not loaded in memory.
  2. Histograms and plots are represented on the line printer in a standard format that contains the picture and some numerical information. Several options are available to modify the presentation, mainly in the case of one dimensional histograms. By default, one histogram per page is printed, writing a possible common title, date, individual title, drawing the countour of the histogram between the minimum and maximum channel content, with the contents scale adjusted to fit in one page, followed by channel number, contents and scale, and some statistical information (entries, mean value, standard deviation and so on). If the number of channels is greater than 100, the histogram is printed on several pages.
  3. Printing options permit to add or suppress some information, choose a different graphic presentation and modify the mapping of histograms on output pages. Histograms can also be printed with channels oriented along rows instead of columns, to avoid splitting the ones with many channels. Logarithmic contents scale can be selected. Various alternative output choices are illustrated in the examples.

    About 120 subroutines are directly accessible to the user program, via Fortran calls of the type

                        +--------------------------------+
                        | CALL H.....(P1,P2,..) |
                        +--------------------------------+
    
                                      

    This is the only interface between the Fortran program and the dynamic data structure managed by HBOOK, which can remain hidden from the average user.

    The functionality of HBOOK

    The various user routines of HBOOK can be subdivided by functionality as follows:

    Booking
    Declare a one- or two-dimensional histogram or a Ntuple
    Projections
    Project two-dimensional distributions onto both axes
    Ntuples
    Way of writing micro data-summary-files for further processing. This allows projections of individual variables or correlation plots. Selection mechanisms may be defined
    Function representation
    Associates a real function of 1 or 2 variables to a histogram
    Filling
    Enter a data value into a given histogram, table or Ntuple
    Access to information
    Transfer of numerical values from HBOOK-managed memory to Fortran variables and back
    Arithmetic operations
    On histograms and Ntuples
    Fitting
    Least squares and maximum likelihood fits of parametric functions to histogramed data
    Smoothing
    Splines or other algorithms
    Random number generation
    Based on experimental distributions
    Archiving
    Information is stored on mass storage for further reference in subsequent programs
    Editing
    Choice of the form of presentation of the histogramed data