MIDIAT was a program from the IBM SHARE Library (Distribution No 849) used extensively at AERE Harwell from 1960 onwards. It was mounted on the IBM 7090 at Risley and later the Chilton Atlas by Bob Hopgood. The original Corbato/Switendick Fortran program (DIATOM) was adapted for the IBM 709/7090 by Dr Emmett Moore Jr and Mr Arnold Rom of Boeing. A full description is given of the system in the paper Integrals for Diatomic Molecular Calculations by Fernado J Corbato and Alfred C Switendick of the Solid State and Molecular Theory Group at MIT. The SHARE Library name for the program was MIDIAT (coming from MIT and DIATOM?).
MIDIAT was one of the programs used to debug the S2 Fortran Compiler on Stretch and Hartran on the Chilton Atlas.
Examples of the work done using MIDIAT at Harwell is:
The computation was done on the IBM 7090 at Risley.
Two interesting features of the MIDIAT program were:
As the records on the magnetic tape were required randomly, four copies of the records were made on four separate magnetic tapes for the IBM 7090. The subroutine GETFUN looked up the position of the required record on the magnetic tapes and chose to read from the magnetic tape that required the least time to position and read the required record.
This was not as straightforward as it might seem as the 7090 magnetic tapes only read records in the ascending direction. Thus a magnetic tape moving forward might be faster than one moving backwards.
If one of the magnetic tapes was misreading, it was possible to take that one out of action and continue the run with the remaining three.
Modifications were made on the Harwell version of MIDIAT that ran at Risley. The Risley 7090 frequently did not arrive at the correct record if the tape had to move a long distance. In consequence, the tape records were numbered so that a check could be made that the record being read was the correct one. Later a database was added that kept a record of any incorrect moves on the four magnetic tape decks so that over the period of a MIDIAT run, adjustments could be made to the number of records moved over to adjust for the machine errors. For example, if long forward moves on one magnetic tape deck were often two records too many, the requested record was the one two before the one required.
MIDIAT runs were often 30-60 minutes in computation time with a much longer elapsed time.
The version of MIDIAT running on the IBM Stretch at Aldermaston did not suffer from this particular fault.
The move of MIDIAT to the Chilton Atlas was very straightforward. The fixed block Ampex tables ensured that tape movement was faster and nearly always correct. Eventually the four magnetic tapes were replaced by a single scratch area on the Data Products disc.
The terms used in the D functions were stored as a sequence of numbers that defined the factors of the number:
2 3 5 7 11 13 17 19 23 29 ....etc prime numbers 1 3 -2 -1 0 0 0 0 0 0
The sequence 1,3,-2,-1 represented the number 21335-27-1 which is 54/175.
This representation of integer fractions had some interesting properties: