beowulf Usage Notes

For beowulf version 2.0
1 March 2002

Compiling

lepton% f77 -u beowulf.f beowulfsubs.f -o beowulf

Running

  1. Start the program.
  2. Tell what program mode you would like.
  3. Tell what gauge you would like, coulomb or feynman. Of course, the result should be independent of the gauge.
  4. Give the number of hours that beowulf should run. You can give 0.01 if you just want to see if it is working, or much longer times if you want to have small statistical errors.
  5. Give the ratio of the MS-bar renormalization scale to the c.m. energy. Good choices are 1.0 or 0.3.
  6. Give a seed for the random number generator.
Here is an example.
 Please give program mode (born, nlo, or hocoef)
nlo
 Please give gauge choice (coulomb or feynman)
coulomb
 Please give the approximate CPU time limit (hours).
0.3
 Please give ratio of the renormalization scale to sqrt(s).
0.3
 Please give a seed (0<I<259200) for random numbers.
3743

Output

Here is an explanation of the program's output.

Statement of parameters

When the program starts, it will write the values of the parameters that it is using.
 beowulf version 2.0 Fri Mar  1 13:18:58 2002    
--------------------------------------------------
 Latest revision 1 March 2002        
 beowulf 2.0 subroutines 1 March 2002
 Coulomb gauge and Feynman gauge
  
 I put as much faith in my martial
 might and power as Grendel puts in his.
 Therefore Ill not slay him with a sword...
 ... no sword on earth
 even the best of iron war-blades,
 could make a dent in that miscreant; 
 for he had worked a spell on weapons
 to blunt their edge...
   - Beowulf, translated by Stanley B. Greenfield
  
Beowulf will work for    0.30 hours
using groups of   4 sets of points.
The seed is    3743.
Using Coulomb gauge.
Calculating observable/sigma_0 at next-to-leading order.
Alpha_s(Mz) is 0.1180 with Mz = 91.1876.
Sqrt(s) is 91.1876    .
Using  3.0     colors and  5.0     flavors.
Renormalization parameter:
                   mu /Sqrt(s): 0.3000    
Cutoff parameters:
                 Badness limit: 1.00E+04
            Cancellation limit: 1.00E+04

All graphs are used.
Most of this should be self-explanatory, but I discuss below two items.

1) The program chooses points in sets. Each set consists of roughly 3000 points distributed over the ten graph topologies. The sets are assembled into groups. Here we learn how many sets there will be in a group; when the program is done, we will learn how many groups have been used. The division into sets and groups is relevant for the error analysis, which is based on the fluctuations of the results among the groups.

2) A small region is excluded from the integration according to the values of two parameters, the badness limit and the cancellation limit. A point has large badness if it is very near one of the collinear or soft singularities, so that the program is likely to mess up in calculating the kinematics. The program calculates, as a kind of side product, a sample integral (discussed below). A point has large cancellation if the largest contribution to the sample integral from a point is large compared to the net contribution, so that the calculation of the net contribution may not be accurate. If the badness is bigger than the badness limit OR if the cancellation is bigger than the cancellation limit, then the point is excluded from whatever quantities are being calculated. The program lists the values of the limits that it is using.

Standard results

As mentioned above, the program calculates a sample integral. By default, this is the average value of (1-thrust)2 times sigma /sigma0. That is this is the "average" normalized to the born level total cross section sigma0, not the full total cross section sigma.

After     1097.4 CPU seconds, Beowulf is done.
Beowulf used     25 groups of points.

Results for average of (1 - thrust)**2:
  
     Points included in result:      347941
   Points in cutoff correction:        3855
       Points dropped entirely:         804
  
         Re(Result) =  6.75917E-03 +/-  7.90E-05
         Im(Result) = -1.45443E-05 +/-  4.72E-05
  Cutoff correction =  3.76307E-06 +/-  5.17E-06

Check integral, equal to 1.0 plus a cutoff error.
For Badness limit = Cancellation limit = 1.00E+04,
and Mode = hocoef, it is approximately 0.95.
          Re(Check) =  0.97937     +/-  1.45E-02
          Im(Check) =  2.56552E-03 +/-  1.03E-02
The following items are reported:

Hrothgar's results

The main point of the program is to send events with weights to a subroutine Hrothgar. This subroutine, which can be easily modified by the user, can use the events and their weights to calculate whatever quantities may be desired. (Hrothgar was the king for whom Beowulf rendered mighty service by eliminating a monster, Grendel, that had been terrorizing the neighborhood, eating the king's loyal subjects, etc.)

The main program sends a signal to Hrothgar that now is the time to report on the status of all monsters in the kingdom, and Hrothgar issues his report.

For each item in Hrothgar's report below, the following quantities are reported:

The first part of the report below concerns the ratio of the thrust distribution divided by a function that fits the results for this quantity reported by Kunszt and Nason (Z Physics at LEP I, CERN Yellow report). This ratio is averaged over a region centered on the stated value of the thrust T, using a smooth weighting function. In the next two parts of the report below, moments of the thrust distribution and of the derivative of the three jet cross section with respect to ycut are reported.

Of course, you are invited to modify the Hrothgar subroutine to calculate whatever you want.

       ---   Hrothgar reports   ---

First, the average near the thrust T of the thrust 
distribution ((1-T)/sigma_0) d sigma /d T divided by
an approximation to the same quantity.

T = 0.710    Approximation function = 5.424E-02
             Result =  0.93652     +/-  0.11    
  Cutoff correction = -1.19310E-02 +/-  1.31E-02
  Alternative error =  0.11    

T = 0.740    Approximation function = 7.862E-02
             Result =   1.0416     +/-  9.89E-02
  Cutoff correction =  1.92224E-03 +/-  2.00E-03
  Alternative error =  0.10    

T = 0.770    Approximation function = 0.103    
             Result =   1.0110     +/-  8.95E-02
  Cutoff correction = -3.02375E-04 +/-  1.27E-03
  Alternative error =  9.95E-02

T = 0.800    Approximation function = 0.129    
             Result =  0.96165     +/-  7.56E-02
  Cutoff correction =  2.75349E-03 +/-  2.09E-03
  Alternative error =  7.34E-02

T = 0.830    Approximation function = 0.159    
             Result =   1.0461     +/-  4.89E-02
  Cutoff correction =  7.99559E-04 +/-  1.36E-03
  Alternative error =  4.61E-02

T = 0.860    Approximation function = 0.193    
             Result =  0.97865     +/-  7.55E-02
  Cutoff correction = -3.21985E-03 +/-  4.13E-03
  Alternative error =  6.77E-02

T = 0.890    Approximation function = 0.236    
             Result =   1.0926     +/-  5.93E-02
  Cutoff correction =  2.38858E-03 +/-  1.58E-03
  Alternative error =  5.72E-02

T = 0.920    Approximation function = 0.289    
             Result =  0.94741     +/-  4.29E-02
  Cutoff correction =  3.72408E-03 +/-  2.98E-03
  Alternative error =  4.19E-02

T = 0.950    Approximation function = 0.358    
             Result =  0.93133     +/-  5.26E-02
  Cutoff correction =  6.11803E-03 +/-  4.43E-03
  Alternative error =  5.11E-02


Next, moments <(1-t)^n>.

n = 1.500
             Result =  1.89196E-02 +/-  2.77E-04
  Cutoff correction =  1.15859E-05 +/-  1.66E-05
  Alternative error =  2.84E-04

n = 2.000
             Result =  6.75917E-03 +/-  7.90E-05
  Cutoff correction =  3.76307E-06 +/-  5.17E-06
  Alternative error =  7.83E-05

n = 2.500
             Result =  2.68153E-03 +/-  3.24E-05
  Cutoff correction =  1.31377E-06 +/-  1.97E-06
  Alternative error =  3.30E-05

n = 3.000
             Result =  1.14231E-03 +/-  1.58E-05
  Cutoff correction =  5.54326E-07 +/-  8.01E-07
  Alternative error =  1.70E-05

n = 3.500
             Result =  5.11629E-04 +/-  8.34E-06
  Cutoff correction =  2.91552E-07 +/-  3.41E-07
  Alternative error =  9.04E-06

n = 4.000
             Result =  2.37819E-04 +/-  4.53E-06
  Cutoff correction =  1.75872E-07 +/-  1.55E-07
  Alternative error =  4.84E-06

n = 4.500
             Result =  1.13750E-04 +/-  2.49E-06
  Cutoff correction =  1.11180E-07 +/-  7.77E-08
  Alternative error =  2.60E-06

n = 5.000
             Result =  5.56547E-05 +/-  1.38E-06
  Cutoff correction =  7.04472E-08 +/-  4.39E-08
  Alternative error =  1.41E-06

n = 5.500
             Result =  2.77366E-05 +/-  7.65E-07
  Cutoff correction =  4.41003E-08 +/-  2.70E-08
  Alternative error =  7.67E-07

n = 6.000
             Result =  1.40356E-05 +/-  4.27E-07
  Cutoff correction =  2.72085E-08 +/-  1.71E-08
  Alternative error =  4.20E-07


Next, moments <(y_cut)^n>.

n = 1.500
             Result =  6.20468E-03 +/-  1.27E-04
  Cutoff correction = -2.53196E-06 +/-  7.38E-06
  Alternative error =  1.25E-04

n = 2.000
             Result =  2.13555E-03 +/-  4.89E-05
  Cutoff correction = -7.58268E-08 +/-  2.56E-06
  Alternative error =  5.00E-05

n = 2.500
             Result =  8.20087E-04 +/-  2.25E-05
  Cutoff correction =  1.46978E-07 +/-  1.02E-06
  Alternative error =  2.38E-05

n = 3.000
             Result =  3.39360E-04 +/-  1.12E-05
  Cutoff correction =  2.03848E-07 +/-  5.12E-07
  Alternative error =  1.18E-05

n = 3.500
             Result =  1.48067E-04 +/-  5.75E-06
  Cutoff correction =  2.00123E-07 +/-  3.36E-07
  Alternative error =  6.01E-06

n = 4.000
             Result =  6.71768E-05 +/-  3.03E-06
  Cutoff correction =  1.65399E-07 +/-  2.36E-07
  Alternative error =  3.10E-06

n = 4.500
             Result =  3.13998E-05 +/-  1.62E-06
  Cutoff correction =  1.23088E-07 +/-  1.62E-07
  Alternative error =  1.62E-06

n = 5.000
             Result =  1.50244E-05 +/-  8.78E-07
  Cutoff correction =  8.55286E-08 +/-  1.06E-07
  Alternative error =  8.63E-07

n = 5.500
             Result =  7.32558E-06 +/-  4.78E-07
  Cutoff correction =  5.66849E-08 +/-  6.79E-08
  Alternative error =  4.64E-07

n = 6.000
             Result =  3.62751E-06 +/-  2.62E-07
  Cutoff correction =  3.63113E-08 +/-  4.22E-08
  Alternative error =  2.53E-07

  

Diagnostics

The last part of the output is some diagnostic information that results from the calculation of the sample integral. This is for users who want to know how well the program is doing. The first item tells the distribution of the contributions v to the sample integral. The average value of v is the result for the sample integral, e.g. 6.75917E-03. For this average value of v, it would be nice if all of the contributions had log10(|v|) in the range -4 to -2. Points with log10(|v|) < - 4 are essentially wasted because they are not contributing significantly to the average. Points with log10(|v|) > -2 are a problem because they make the statistical error large. Alas, there are points with log10(|v|) approxomately +1. Each of these points makes a very big contribution to the statistical error. The largest |v| in this run is reported as 1.91. Values of |v| up to about 4 are occasionally be encountered. Evidently, there is room for improvement in the code.

The rest of the diagnostic report concerns the characteristics of the point with the worst value of |v|.

***********************
Diagnostic information: 
  
Number of points with -9 < log_10(|v|) <-8 is       6570
Number of points with -8 < log_10(|v|) <-7 is      10673
Number of points with -7 < log_10(|v|) <-6 is      18061
Number of points with -6 < log_10(|v|) <-5 is      29420
Number of points with -5 < log_10(|v|) <-4 is      46219
Number of points with -4 < log_10(|v|) <-3 is      65325
Number of points with -3 < log_10(|v|) <-2 is      79329
Number of points with -2 < log_10(|v|) <-1 is      66950
Number of points with -1 < log_10(|v|) < 0 is      14202
Number of points with  0 < log_10(|v|) < 1 is         29
Number of points with  1 < log_10(|v|) < 2 is          0
Number of points with  2 < log_10(|v|) < 3 is          0
Number of points with  3 < log_10(|v|) < 4 is          0
Number of points with  4 < log_10(|v|) < 5 is          0
Number of points with  5 < log_10(|v|) < 6 is          0
Number of points with  6 < log_10(|v|) < 7 is          0
  
Biggest contribution was    1.91    
From graph  1, map  1
  
 Analysis by subroutine DIAGNOSTIC
  
Graph number   1
 Point:
P = 1  K =    -1.61       0.893       0.383    
P = 2  K =     1.61      -0.893      -0.383    
P = 3  K =    -1.61       0.893       0.383    
P = 4  K =     1.42       4.890E-02  -0.954    
P = 5  K =    0.191      -0.942       0.571    
P = 6  K =   -0.191       0.942      -0.571    
P = 7  K =   -1.317E-02  -6.889E-03   3.440E-02
P = 8  K =    0.204      -0.935       0.536    
  
 Softness:
P = 1  |K| =     1.88    
P = 2  |K| =     1.88    
P = 3  |K| =     1.88    
P = 4  |K| =     1.71    
P = 5  |K| =     1.12    
P = 6  |K| =     1.12    
P = 7  |K| =    3.748E-02
P = 8  |K| =     1.10    
  
 Collinearity:
V = 3 Ps = 2 4 5  sines =   0.58659   0.98584   0.89679
V = 4 Ps = 3 4 6  sines =   0.58659   0.98584   0.89679
V = 5 Ps = 5 7 8  sines =   0.82594   0.84151   0.02821
V = 6 Ps = 6 7 8  sines =   0.82594   0.84151   0.02821
  
Badness of this point is   45.    
  
 CALCULATE finds the folowing:
Ncut = 3 CUTINDEX = 5 4 1 0
  7  Contribution: -8.3211620666E-04 -4.7102232541E-06
Ncut = 3 CUTINDEX = 6 4 1 0
  7  Contribution: -8.3211620666E-04  4.7102232541E-06
Ncut = 4 CUTINDEX = 8 7 4 1
     Contribution:  1.5287805634E-03  0.0000000000E+00
VALUE = -1.3545E-04  0.0000E+00 ABS(VALUE) =   1.3545E-04
BIGGEST contribution was   1.5288E-03

 DONE Fri Mar  1 14:09:37 2002    

Davison E. Soper
Institute of Theoretical Science
University of Oregon
Eugene OR 97403 USA
soper@physics.uoregon.edu