History: PSA, BOS, FPACK, LOOK and all that


PSA - A system for data analysis


BOS is a program system, written in standard FORTRAN77, for the dynamic management of data areas and for the persistent input/output of sets ofdata areas. The system supports a modular structure of the application program and portability for both the software and the data sets. The main application is in the data analysis of high-energy-physics experiments. The first version has been developed in 1975 for the experiment PLUTO at the e+e- collider DORIS. The next version was used at the e+e- collider PETRA by the PUTO, CELLO, JADE and TASSO experiments. A slightly upgraded experimental version with the name YBOS was then used by CDF (after some furtehr upgrade) in their RUN I. Then BOS is used by the ALEPH experiment at the e+e- collider LEP and by the H1 experiment at the ep collider HERA. BOS was a stable system. During the PETRA time there was no reason to recompile it at all.

BOS - Manual: psfile

FPACK is a general stand-alone package of FORTRAN77 and C programs for the machine-independent input/output of data blocks. A word-format conversion between local and other word-formats is performed automatically using a format description of the data blocks, if data are exchanged between different computers. Exchange of data is possible via networks and tapes, cassettes etc. F-records contain a record key for fast access to a subset of the data. Unformatted and formatted access is supported, in addition keyed access on certain machines. Index files allow the fast access of a selected subset of data. Fast access is also possible steered by up to 30 (overlapping) classes assigned to the data. It is possible to read and to write subsets of data records, steered ny an interpreter language, which allows to use the many optiuons of the sustem in a simple and machine-independent way.

FPACK manual: text file

LOOK is a general system for graphics applications in physics. It is written in FORTRAN 77 and uses GKS functions at a low level for the basic graphical operations. FPACK is the only further library necessary for LOOK. Portability of code to different computer types is one of the basic principles followed in the design of the system. No machine-dependent extensions of FORTRAN77 have been used. The system is running at present on IBM (main frames), VAX, APOLLO, SGI, ALLIANT, SUN, IBM R6000, DEC workstations, X-window HP stations, MIPS and MacII systems. All necessary machine dependent code (for example differences in OPEN statements, logical functions) are kept within macros in the source file. Special machine dependent code is used in specialized versions for some work stations in order to make use of their special options. A Motif interface is implemented for the X-window Unix systems using OnX package and emulating all necessary GKS functions by X-window primitives. LOOK has been designed as an open system, extendible in a simple way by specialized user-written graphical programs. It may be considered as a kernel system, as a program layer between the low level graphics (GKS or similar) and user display programs, and it provides a system of utility subprograms, which allows the user to write his own display program with a minimum amount of work. In particular it requires that the user learn only the so-called drawing primitives, which he can use in his display program. The user as a writer of display programs does not have to consider the opening of workstations, transformations, hardcopy devices etc; all this is covered by LOOK. One important area of application of a graphics program for the analysis of data is the area of distributions. LOOK includes a fast data base for distributions. Distributions may be binned (histograms) or unbinned (vector or n-tuple data). It also contains the interactive program parts for the display of data from the data base. Operations on histograms, fast peak finding together with more sophisticated analysis possible with the interactive LOOK interpreter, including fitting of functions to the data, makes the system a powerful tool for the data analysis. An essential part of LOOK is the command processor; this allows the execution of a collection of display subroutines which can be developed independently, together with LOOK, without the necessity to modify or recompile the LOOK system. The system allows the user to add, eventually in one subroutine, all the necessary instructions for a special display including the addition of new user commands for the interactive steering. The structure of LOOK is shown in the figure below: there can be a series of display subroutines, connected in a modular way to the LOOK kernel. One of these display subroutines is included in the standard LOOK for the display of distributions from the data base.

LOOK manual: text file