Page 21 - Compact Numerical Methods For Computers
P. 21

A starting point                         11
                           quality. The user must, however, learn how to invoke the programs, as there is
                           no user interface to assist in problem specification and input.
                       Press et al (1986) Numerical Recipes
                           —This is an ambitious collection of methods with wide capability. Codes are
                           offered in FORTRAN, Pascal, and C. However, it appears to have been only
                           superficially tested and the examples presented are quite simple. It has been
                           heavily advertised.
                         Many other products exist and more are appearing every month. Finding out
                       about them requires effort, the waste of which can sometimes be avoided by using
                       modern online search tools. Sadly, more effort is required to determine the quality of
                       the software, often after money has been spent.
                         Finally on sources of software, readers should be aware of the Association for
                       Computing Machinery (ACM) Transactions on Mathematical Software which pub-
                       lishes research papers and reports algorithms. The algorithms themselves are avail-
                       able after a delay of approximately 1 year on NETLIB and are published in full in the
                       Collected Algorithms of the ACM. Unfortunately, many are now quite large pro-
                       grams, and the Transactions on Mathematical Software (TOMS) usually only
                       publishes a summary of the codes, which is insufficient to produce a working
                       program. Moreover, the programs are generally in FORTRAN.
                         Other journals which publish algorithms in some form or other are Applied
                       Statistics (Journal of the Royal Statistical Society, Part C), the Society for Industrial
                       and Applied Mathematics (SIAM) journals on Numerical Analysis and on Scientific
                       and Statistical Computing, the Computer Journal (of the British Computer Society),
                       as well as some of the specialist journals in computational statistics, physics,
                       chemistry and engineering. Occasionally magazines, such as Byte or PC Magazine,
                       include articles with interesting programs for scientific or mathematical problems.
                       These may be of very variable quality depending on the authorship, but some
                       exceptionally good material has appeared in magazines, which sometimes offer the
                       codes in machine-readable form, such as the Byte Information Exchange (BIX) and
                       disk ordering service. The reader has, however, to be assiduous in verifying the
                       quality of the programs.



                           1.4. PROGRAMMING LANGUAGES USED AND STRUCTURED
                                                  PROGRAMMING
                       The algorithms presented in this book are designed to be coded quickly and easily for
                       operation on a diverse collection of possible target machines in a variety of
                       programming languages. Originally, in preparing the first edition of the book, I
                       considered presenting programs in BASIC, but found at the time that the various
                       dialects of this language were not uniform in syntax. Since then, International
                       Standard Minimal BASIC (IS0 6373/ 1984) has been published, and most commonly
                       available BASICS  will run Minimal BASIC  without difficulty. The obstacle for the user is
                       that Minimal BASIC  is too limited for most serious computing tasks, in that it lacks
                       string and file handling capabilities. Nevertheless, it is capable of demonstrating all
                       the algorithms in this book.
   16   17   18   19   20   21   22   23   24   25   26