Jump Over Left Menu
Algol Library Manual
F R A Hopgood, Mrs E A Baker
The Algol string quotes used in the original document have been replaced by the " symbol.
ALGOL LIBRARY PROCEDURES
The Library of Algol procedures currently available on Atlas is stored on the Standard Algol Library Tape ALGOLIB. Full details of how to incorporate these library procedures into an Algol program are given in the Atlas Algol System manual. A subset of the more widely used procedures are available on the disc area R502 ALGOLIB. In the following index, library names followed by asterisk indicate that the item is also available on the disc area. The library is divided into three main groups SC, ACM and ICT.
The SC group are procedures specifically designed to run with the GROATS graphic output system. Full details of these can be found in the GROATS manual.
The Algorithms available under the Class Name ACM are those published in the Communications of the ACM. The numbering of the Algorithms is the same as given in the CACM. These Algorithms have been punched at the Atlas Laboratory. Corrections given in Certifications have been added. Trial compilations have been used to give a syntactic check of the Algorithms. No semantic checking of the Algorithms has been attempted. The definitions of these Algorithms can either be found in the relevant copy of the Communications or alternatively a complete set of definitions is available from the ACM. A copy of this is available at the Atlas Laboratory.
The class name ICT has been used for all library items that do not fall into either of the other two classes. Complete details of these are given in the following sections. These procedures should be fully debugged and working.
ICT50 - 99
ICT50 - 99 are a set of procedures for various numerical operations. The methods employed are among the most reliable discovered so far and the procedures should be fully debugged.
- ICT50-59 - linear algebra
- ICT60-69 - eigenproblems
- ICT70-74 - solution of algebraic equations
- ICT75-79 - solution of ordinary differential equations
- ICT80-84 - numerical quadrature
- ICT85-95 - approximation of functions
- ICT96-99 - probability
No procedure is ever completely foolproof, and a brief note is made indicating where difficulties may arise. On the whole, the procedures will be most satisfactory for medium-sized problems where considerations of storage and/or computing time are not of over-riding importance.
Items ICT55, 56, and 57 are from Algol 60 Procedures in Numerical Algebra, Part I by T J Dekker (Mathematisch Centrum Amsterdam Tract no. 22).
All other items are selected from Procedures Algol en Analyse Numerique published by the Centre National de la Recherche Scientifique, Paris.
1 * dump program 2 * release mag tape 3 * dump 4 * print input 5 Array handling procedures 6 Array handling procedures 7 Matrix procedures 8 Matrix procedures 9 Matrix procedures 10 Matrix procedures 11 Matrix procedures 12 * set up directory 13 * break output 14 * random, initialise generator, extract generator 15 * Upper case versions of SIN, COS etc 16 * ham 17 * dump tape positions 18 * whats on my library tape 19 * erase 20 * KDF9 magnetic tape handling procedures 21 22 writekdf9, format 23 char in kdf9, char out kdf9 24 copy text kdf9 25 read array kdf9 26 write array kdf9 27 address, lowbound, range, size 28 advance elliott, buffer elliott 29 * dialect list 30 * initialise dialect : ATLAS CARDS 31 * initialise dialect : ICT 1900 TAPE 32 33 34 35 36 37 * outjob title time date 38 chain 39 * call algol 40 * dump program 41 * lower triangle iliffe vectors 42 * interpret 43 * Fixed block magnetic tape procedures 44 * fast char print routine 45 * chain 46 * elegant output 47 * layout, inlogical, outlogical 48 * elapsed time 49 50 * gresolpiv 51 * tridiagreson 52 * deter 53 * trace 54 * pivotmax 55 * detsym 1, solsym 1, detinvsym 1 56 * detbnd, solbnd 57 * Least square problems 58 * pseudoinv 59 * pseudo inverse 60 * eigenvalues 61 * iter jacobi 62 * jacobi 63 * rutisvalues 64 * hyman values 65 * eigenvec 66 67 68 69 70 * newton complexe 71 * muller 72 * laguerre 73 * bissection 74 * bisdou 75 * rungekutta 76 * rungekutta 77 * rungekutta 78 79 80 * insire 81 * in dourec 82 * int3neville 83 * intcossin 84 85 * approxicon 86 * remez 87 * tchebecha 88 * chebfit 89 * tchebdessous 90 * tchfbing 91 * mcpolysp 92 * methdintepoly 93 * coef spline trois 94 * spline hermite 95 * splderivee 96 * classemarkoff 97 * sous classe cyclique 98 * polweyl 99 * not lag 100* reduction 101* ratqr 102* tred 103* tridi inverse iteration 104* back transformation 105* bisect 106* Character manipulation procedures 107* Lineprinter graphical procedures 108* random 109* chisqaure 110* timer