next up previous
Next: The Master File Up: THE STRUCTURE OF THE Previous: THE STRUCTURE OF THE

Subsections

CCSL As a FORTRAN Library

CCSL is a set of FORTRAN routines. Specifications of all the routines with detailed descriptions are in Appendix A, in alphabetical order of routine. Later in this chapter they are listed in groups under various headings, to give the user a broad view of what is available.

A FORTRAN job always has a main program, which usually calls routines. A CCSL user is expected to provide the main program, and then to link it with CCSL compiled as a searchable library. (The Master File contains some main programs as well as the Library).

Running a FORTRAN job varies from one computer to another, but where a FORTRAN compiler exists there should be some sort of facilities for:

(a)
compiling each routine of CCSL separately, and holding the set of such compiled routines as a Library, and
(b)
when given a CCSL main program, scanning this Library and extracting any routines referred to by the main program (and all routines referred to by them, and so on) so that the program can be run.
The point of compiling separate routines into a Library is that not every run needs every routine; the user is unlikely to call for, say, absorption corrections in the same run as a plotted Fourier. So he wishes to load and obey only those FORTRAN routines he actually needs in the program.

Language

CCSL is written almost entirely in FORTRAN 77, (ANSI standard X3.9-1978). The reference for what is standard F77 is taken from the VAX-11 FORTRAN Language Reference Manual (AA-D034C-TE) trying to ignore the extensions printed in blue.

Portability

There will always be problems trying to make the FORTRAN portable.

The areas which are particularly troublesome in portable programs are:

1)
input/output
2)
use of graphical output
3)
what the consequences of an error are

but there are other areas, which tend only to become apparent when the system is actually implemented on a particular machine.

We are aware of the problems of portability, but nevertheless we insist that CCSL must be portable. Some of the FORTRAN used may seem pedestrian as a result.

The best way to get a view of CCSL's FORTRAN is to print out part of the Library. It is intended to be understandable as far as possible.


next up previous
Next: The Master File Up: THE STRUCTURE OF THE Previous: THE STRUCTURE OF THE
P.J. Brown - Institut Laue Langevin, Grenoble, FRANCE. e-mail brown@ill.fr