next up previous contents
Next: LUND_Frag. Up: DESCRIBES for JLC physics Previous: Names of DESCRIBE

SPRING

The many JLC physics event generators use the BASES/SPRING program[#!BASESOLD!#] for the calculation of differential cross section and event generation of parton four momentum. In this program, the SPRING generate the parton four momentum reading the integrated result of BASES from a disk. Since the original subroutines of SPRING are not well fitted to the FULL structure% latex2html id marker 1288
\setcounter{footnote}{2}\fnsymbol{footnote} , we made some modification to the SPRING.

By including the DESCRIBE DSSPRG in the FLANLI program, SPRING is called within the frame work of FULL and the generated parton information stored in the TBS bank can be accessed by the subsequent module for hadronization, detector simulation, and analysis.

In the DESCRIBE DSSPRG, the subroutines SPGPAR, SPRNIN, SPJBTM, and SPCALL are defined for the parameter reading, run initialization, job termination and event generation, respectively.

The calling sequence of the subroutine SPGPAR is,
2cm \fbox {\tt SUBROUTINE SPGPAR}
The default SPGPAR is a dummy routine and does nothing, except to quit after reading the string ``EXIT'''. If user needs to read parameter, he should override the SPGPAR. The original SPRING requires two input data from FORTRAN unit number 5, namely number of events to generate and CPU time limit. Since the FULL steering takes care of these parameter, these two input data are not required any more.

The SPRNIN is called at the run initialization. It stores the run information in the bank Spring of the Begin_run record, then calls the SPBEGN for SPRING initialization. As a result, we can not generate events with multiple run number in a single job, but this will not hurt any one. During the SPRING initialization, the subroutine SPINIT is called. The calling sequence of SPINIT is same as the original BASES/SPRING. In the SPINIT, user should declare the function name of the integrand and maximum number of retry for event generation, by calling the subroutine SPFUNC. User can also store his own information at the beginning of the run in the SPINIT. The example of SPINIT is shown in the Fig. 1.

 
Figure 1:  An example of the subroutine SPINIT
\begin{figure}
\epsfxsize=10cm
\centerline{\epsfbox{SPINIT.f.epsf}}\end{figure}

The subroutine SPJBTM is prepared to terminate SPRING at end run. Since the standard termination subroutine of SPRING , SPTERM, is called from SPJBTM, user can do their own termination task for SPRING in the SPTERM.

For every event, the subroutine SPEVNT is called. The SPEVNT should prepared parton four momentum according to the phase space information stored in the BASES commons, and the result should be stored in the bank ``Spring:Parton_List'' of the event record so that they can be hadronized and used for detector simulation by the other FULL module. The calling sequence of SPEVNT is,
2cm \fbox {\tt SUBROUTINE SPEVNT(NRET)}
where NRET is a INTEGER*4 variable. If NRET is negative, the FULL modules following thereafter are not executed and the event is discarded. On the otherhand the SPEVNT in the library on the FACOM MSP system, namely those in a file T#FP.GENLIB.LOAD, does not require the argument NRET. Please note the difference in the calling sequence.


next up previous contents
Next: LUND_Frag. Up: DESCRIBES for JLC physics Previous: Names of DESCRIBE
Miyamoto Akiya
11/20/1998