C ALGORITHM 620, COLLECTED ALGORITHMS FROM ACM. C THIS WORK PUBLISHED IN TRANSACTIONS ON MATHEMATICAL SOFTWARE, C VOL. 10, NO. 4, P.359 REFERENCES AND KEYWORDS FOR ACM-CALGO ALGORITHMS Prepared Oct. 11, 1984 and modified Mar. 1, 1986 by J. R. Rice & R. J. Hanson Revised July 27, 1989 by Tim Hopkins and David Morse Revised June 9, 1992 and August 4, 1994 by Robert Renka Annual updates will be made without comment This file contains compressed references for the set of algorithms contained in Collected Algorithms From ACM. Algorithms 1-492 were published in Communications of the ACM. With one exception, Algor- ithms 493-701 appeared in ACM Transactions on Mathematical Software. The exception is Algorithm 568, which was published in ACM Transac- tions on Programming Languages and Systems. Algorithm numbers 171 and 172 are not included because no algorithm with those numbers was published. The entry for each algorithm consists of either four or five records depending on whether there have been any published remarks. Lines are restricted to 80 characters, and records requiring more than one line include continuation lines which are distinguished by a + in the first column. Only the first record and continuation lines begin in character column one. Any mathematical notation used within the algorithm title and any accents in an author's name are indicated as defined in TEX. Also, all letters in the title which must remain capitalized in a printed version of the reference are enclosed in braces. The first record specifies the algorithm number, journal in which the algorithm was published, beginning page number, ending page number (or 0 if there is only one page), volume number, issue number, month and year of publication, modified SHARE classification, and language (F = Fortran, F90 = Fortran 90, A60 = Algol 60, PAS = Pascal, PLI = PL1, M = Matlab, L = Lisp, R = Ratfor, N = None) in which the algorithm was implemented. Some of the later algorithms have the associated gams classification as the last field. The second and third records contain the authors' names and the title of the algorithm, respectively. The fourth record contains keywords separated by semicolons, and the fifth record, if any, describes published remarks associated with the algorithm. Each remark, if any, is terminated by a semicolon, and includes the following fields, separated by commas: the type (Remark or Certification), the journal in which the remark was published, the page range (a single page number or a pair of numbers separated by --), the volume number, the issue number, the month, the year, and the author. As an example, the following entry is for algorithm 487: 487 cacm 703 704 17 12 December 1974 s14 F J. Pomeranz; Exact Cumulative Distribution of the {K}olmogorov-{S}mirnov Statistic for + Small Samples goodness-of-fit testing;k-s statistic;k-s test;Kolmogorov-Smirnov test; R,toms,111,2,1,March,1976,J. Pomeranz; +R,toms,285--294,3,3,September,1977,R. Kallman; The first line should be interpreted as 'ACM CALGO Algorithm 487 appeared in Comm. ACM, Volume 17, Number 12, December 1974, pages 703-704'. The algorithm was implemented in Fortran, and the SHARE classification is S14. The title spans two lines and contains two characters which must remain in upper case. The second remark appeared as a Remark in ACM TOMS, Volume 3, Number 3, September 1977, pages 285-294. The author is R. Kallman. ============================================================================== 1 cacm 74 0 3 2 February 1960 d1 A60 R. J. Herbold; Quad {I} obsolete;numerical integration;quadrature; 2 cacm 74 0 3 2 February 1960 c5 A60 J. Wegstein; Rootfinder obsolete;secant method;function zeros; C,cacm,354,3,6,June,1960,H. C. {Thacher Jr.}; +R,cacm,475,3,8,August,1960,H. C. {Thacher Jr.}; +R,cacm,153,4,3,March,1961,J. H. Wilkinson; 3 cacm 74 75 3 2 February 1960 c2 A60 A. A. Grau; Solution of Polynomial Equation by {Bairstow}-{Hitchcock} Method Bairstow's method;polynomial zeros; C,cacm,354,3,6,June,1960,H. C. {Thacher Jr.}; +C,cacm,105,4,2,February,1961,J. S. Vandergraft; +R,cacm,153,4,3,March,1961,J. H. Wilkinson; +C,cacm,181,4,4,April,1961,J. Herndon; 4 cacm 174 0 3 3 March 1960 c5 A60 S. Gorn; Bisection Routine bisection method;function zeros; C,cacm,153--154,4,3,March,1961,P. J. Rader; 5 cacm 240 0 3 4 April 1960 s18 A60 D. S. Clarke; {Bessel} Function ${I}$ Series Expansion Bessel function;series expansion; 6 cacm 240 0 3 4 April 1960 s18 A60 D. S. Clarke; {Bessel} Function ${I}$ Asymptotic Expansion asymptotic expansion;Bessel function; 7 cacm 240 0 3 4 April 1960 a1 A60 R. Claussen; {Euclidian} Algorithm obsolete;Euclidian algorithm;greatest common divisor; 8 cacm 318 0 3 5 May 1960 c6 A60 P. Naur; {Euler} Summation Euler summation;Euler transformation;infinite series; C,cacm,663,6,11,November,1963,H. C. {Thacher Jr.}; 9 cacm 318 0 3 5 May 1960 d2 A60 P. Naur; {Runge}-{Kutta} Integration ordinary differential equations;Runge-Kutta method; C,cacm,273,9,4,April,1966,H. C. {Thacher Jr.}; 10 cacm 353 0 3 6 June 1960 s22 A60 G. M. Galler; Evaluation of the {Chebyshev} Polynomial ${T}_n({X})$ by Recursion obsolete;Chebyshev polynomial;function evaluation;polynomial evaluation; C,cacm,181,4,4,April,1961,J. Herndon; 11 cacm 353 0 3 6 June 1960 s15 A60 G. M. Galler; Evaluation of the {Hermite} Polynomial ${H}_n({X})$ by Recursion obsolete;Hermite polynomial;function evaluation;polynomial evaluation; 12 cacm 353 0 3 6 June 1960 s22 A60 G. M. Galler; Evaluation of the {Laguerre} Polynomial ${L}_n({X})$ by Recursion obsolete;Laguerre polynomial;function evaluation;polynomial evaluation; 13 cacm 353 0 3 6 June 1960 s16 A60 G. M. Galler; Evaluation of the {Legendre} Polynomial ${P}_n({X})$ by Recursion obsolete;Legendre polynomial;function evaluation;polynomial evaluation; C,cacm,105,4,2,February,1961,P. J. Rader and H. C. {Thacher Jr.}; +C,cacm,181,4,4,April,1961,J. Herndon; 14 cacm 406 0 3 7 July 1960 s13 A60 A. Beam; Complex Exponential Integral complex exponential integral;continued fraction; 15 cacm 475 0 3 8 August 1960 c5 A60 H. C. {Thacher Jr.}; Rootfinder {II} obsolete;function zeros;fixed point;successive substitution; C,cacm,475,3,8,August,1960,H. C. {Thacher Jr.}; +R,cacm,602,3,11,November,1960,G. E. Forsythe and J. G. Herriot; +R,cacm,153,4,3,March,1961,J. H. Wilkinson; 16 cacm 507 508 3 9 September 1960 f4 A60 G. E. Forsythe; {Crout} with Pivoting obsolete;Crout reduction;linear system;simultaneous linear equations; R,cacm,540,3,10,October,1960,G. E. Forsythe; +R,cacm,154,4,3,March,1961,H. C. {Thacher Jr.}; 17 cacm 508 0 3 9 September 1960 f4 A60 C. F. Sprague III; {TRDIAG} linear system;simultaneous linear equations;tridiagonal matrix; +tridiagonal system; 18 cacm 508 0 3 9 September 1960 e1 A60 R. W. Floyd; Rational Interpolation by Continued Fractions continued fraction;interpolation;rational interpolation; C,cacm,437,5,8,August,1962,H. C. {Thacher Jr.}; 19 cacm 540 0 3 10 October 1960 s03 A60 R. R. Kenyon; Binomial Coefficients binomial coefficients; R,cacm,347,5,6,June,1962,B. Steck; +C,cacm,438,5,8,August,1962,R. George; 20 cacm 540 0 3 10 October 1960 s13 A60 S. Peavy; Real Exponential Integral exponential integral; R,cacm,105,4,2,February,1961,S. Peavy; +C,cacm,182,4,4,April,1961,W. J. Alexander and H. C. {Thacher Jr.}; 21 cacm 600 0 3 11 November 1960 s17 A60 W. B{\"{o}}rsch-Supan; {Bessel} Function for a Set of Integer Orders Bessel function; C,cacm,219,8,4,April,1965,J. Stafford; 22 cacm 600 601 3 11 November 1960 s17 A60 H. Oser; {Riccati}-{Bessel} Functions of First and Second Kind Riccati-Bessel function; C,cacm,448,13,7,July,1970,T. A. Bray; 23 cacm 601 0 3 11 November 1960 m1 A60 W. Feurzeig; Math Sort sorting; C,cacm,238,4,5,May,1961,R. W. Ranshaw; 24 cacm 602 0 3 11 November 1960 f4 A60 B. Leavenworth; Solution of Tri-Diagonal Linear Equations obsolete;linear system;simultaneous linear equations;tridiagonal matrix; +tridiagonal system; 25 cacm 602 0 3 11 November 1960 c5 A60 B. Leavenworth; Real Zeros of An Arbitrary Function obsolete;function zeros;Muller's method; R,cacm,153,4,3,March,1961,J. H. Wilkinson; +R,cacm,154,4,3,March,1961,R. M. Collinge; 26 cacm 603 0 3 11 November 1960 c5 A60 J. G. Herriot; Rootfinder {III} function zeros;regula falsi; R,cacm,153,4,3,March,1961,J. H. Wilkinson; 27 cacm 603 604 3 11 November 1960 h A60 R. Silver; Assignment assignment problem;operations research;optimization; C,cacm,618,6,10,October,1963,A. Newhouse; +C,cacm,739,6,12,December,1963,R. D. Witty; 28 cacm 604 0 3 11 November 1960 e2 A60 J. G. Mackinney; Least Squares Fit by Orthogonal Polynomials curve approximation;curve fitting;least squares solution; +orthogonal polynomials; R,cacm,544,4,12,December,1961,D. B. McMillan; +R,cacm,293,10,5,May,1967,G. J. Makinson; 29 cacm 604 0 3 11 November 1960 c1 A60 J. G. Mackinney; Polynomial Transformer linear translation;polynomial coefficients; 30 cacm 643 0 3 12 December 1960 c2 A60 K. W. Ellenberger; Numerical Solution of the Polynomial Equation Bairstow's method;function zeros;Newton's method;polynomial zeros; C,cacm,238,4,5,May,1961,W. J. Alexander; +C,cacm,50,5,1,January,1962,K. J. Cohen; +C,cacm,293,10,5,May,1967,J. J. Kohfeld; +R,toms,183--184,11,2,June,1985,M. Novotny; 31 cacm 105 0 4 2 February 1961 s14 A60 R. M. Collinge; Gamma Function obsolete;gamma function; C,cacm,605,5,12,December,1962,P. G. Behrenz; +C,cacm,38,6,1,January,1963,P. G. Behrenz; 32 cacm 106 0 4 2 February 1961 d1 A60 R. D. Freeman Jr.; Multint Gaussian integration;Gaussian quadrature;multiple integration; +numerical integration;quadrature; C,cacm,69,6,2,February,1963,H. C. {Thacher Jr.}; +R,cacm,826,11,12,December,1968,K. S. K{\"{o}}lbig; 33 cacm 106 0 4 2 February 1961 s03 A60 M. F. Lipp; Factorial obsolete;factorial;recursion; 34 cacm 106 0 4 2 February 1961 s14 A60 M. F. Lipp; Gamma Function obsolete;gamma function; R,cacm,391,5,7,July,1962,M. L. Johnson and W. Sangren; +R,cacm,685--686,9,9,September,1966,M. C. Pike and I. D. Hill; 35 cacm 151 0 4 3 March 1961 a1 A60 T. C. Wood; {SIEVE} obsolete;sieve of Eratostehenes;factoring integers; C,cacm,209,5,4,April,1962,P. J. Brown; +C,cacm,438,5,8,August,1962,J. S. Hillmore; +R,cacm,570,10,9,September,1967,B. A. Chartres; 36 cacm 151 0 4 3 March 1961 s22 A60 A. J. Gianni; {Tchebycheff} Chebyshev polynomial;function evaluation;polynomial evaluation; 37 cacm 151 0 4 3 March 1961 e2 A60 K. A. Brons; Telescope 1 economization;polynomial approximation; C,cacm,438,5,8,August,1962,H. C. {Thacher Jr.}; +C,cacm,445,6,8,August,1963,J. F. Bridges; 38 cacm 151 152 4 3 March 1961 e2 A60 K. A. Brons; Telescope 2 economization;polynomial approximation; C,cacm,445,6,8,August,1963,J. F. Bridges; 39 cacm 152 0 4 3 March 1961 g2 A60 P. Sassouni; Correlation Coefficients with Matrix Multiplication correlation coefficients;standard deviation; 40 cacm 152 153 4 3 March 1961 h A60 B. Leavenworth; Critical Path Scheduling critical path;critical path scheduling;job scheduling;operations research; C,cacm,392,4,9,September,1961,N. P. Alexander; +C,cacm,513,5,10,October,1962,L. Hellberg; +C,cacm,349,7,6,June,1964,I. A. Hoffman; 41 cacm 176 0 4 4 April 1961 f3 A60 J. G. Solomon; Evaluation of Determinant obsolete;determinant; R,cacm,144,7,3,March,1964,L. J. Rotenberg; +R,cacm,520,6,9,September,1963,B. H. Freed; +C,cacm,686,9,9,September,1966,A. Bergson; 42 cacm 176 0 4 4 April 1961 f1 A60 T. C. Wood; {INVERT} obsolete;matrix inversion; C,cacm,498,4,11,November,1961,A. W. Knapp and P. Shaman; +R,cacm,38,6,1,January,1963,P. Naur; +R,cacm,445,6,8,August,1963,P. Naur; 43 cacm 176 177 4 4 April 1961 f4 A60 H. C. {Thacher Jr.}; {Crout} with Pivoting {II} Crout reduction;linear system;simultaneous linear equations; C,cacm,182,4,4,April,1961,H. C. {Thacher Jr.}; +C,cacm,445--446,6,8,August,1963,C. Domingo and F. Rodriguez-Gil; 44 cacm 177 178 4 4 April 1961 s17 A60 M. E. Wojcicki; {Bessel} Functions Computed Recursively Bessel function; 45 cacm 178 0 4 4 April 1961 z A60 P. Z. Ingerman; {INTEREST} interest;loan repayment; C,cacm,520--521,6,9,September,1963,C. B. Wright; 46 cacm 178 0 4 4 April 1961 b3 A60 J. R. Herndon; Exponential of a Complex Number obsolete;complex function; C,cacm,347,5,6,June,1962,A. P. Relph; 47 cacm 178 179 4 4 April 1961 s16 A60 J. R. Herndon; Associated {Legendre} Functions of the First Kind for Real or Imaginary + Arguments associated Legendre function of the first kind; C,cacm,446,6,8,August,1963,R. George; +C,cacm,635--636,12,11,November,1969,S. M. Cobb; 48 cacm 179 0 4 4 April 1961 b3 A60 J. R. Herndon; Logarithm of a Complex Number obsolete;complex function; C,cacm,347,5,6,June,1962,A. P. Relph; +R,cacm,391,5,7,July,1962,M. L. Johnson and W. Sangren; +R,cacm,485,7,8,August,1964,D. S. Collens; 49 cacm 179 0 4 4 April 1961 s17 A60 J. R. Herndon; Spherical {Neumann} Function spherical Neumann function; R,toms,295,4,3,September,1978,J. P. Coleman; 50 cacm 179 0 4 4 April 1961 f1 A60 J. R. Herndon; Inverse of a Finite Segment of the {Hilbert} Matrix Hilbert matrix;matrix inversion; C,cacm,50,5,1,January,1962,B. Randell; +R,cacm,38--39,6,1,January,1963,P. Naur; 51 cacm 180 0 4 4 April 1961 f1 A60 J. R. Herndon; Adjust Inverse of a Matrix when an Element is Perturbed matrix inversion;matrix perturbation; C,cacm,391,5,7,July,1962,R. George; 52 cacm 180 0 4 4 April 1961 f1 A60 J. R. Herndon; A Set of Test Matrices eigenvalues;matrix inversion;test matrix; C,cacm,339,4,8,August,1961,H. E. Gilbert; +R,cacm,498,4,11,November,1961,G. H. Dubary; +C,cacm,438,5,8,August,1962,J. S. Hillmore; +R,cacm,39,6,1,January,1963,P. Naur; +R,cacm,446,6,8,August,1963,P. Naur; 53 cacm 180 0 4 4 April 1961 b4 A60 J. R. Herndon; ${N}{\rm th}$ Roots of a Complex Number complex function;complex roots; R,cacm,322,4,7,July,1961,C. W. {Nestor Jr.}; 54 cacm 180 0 4 4 April 1961 s14 A60 J. R. Herndon; Gamma Function for Range 1 to 2 obsolete;gamma function; R,cacm,685--686,9,9,September,1966,M. C. Pike and I. D. Hill; 55 cacm 180 0 4 4 April 1961 s21 A60 J. R. Herndon; Complete Elliptic Integral of The First Kind obsolete;complete elliptic integral of the first kind; C,cacm,166--167,6,4,April,1963,H. C. {Thacher jr.}; 56 cacm 180 181 4 4 April 1961 s21 A60 J. R. Herndon; Complete Elliptic Integral of The Second Kind obsolete;complete elliptic integral of the second kind; C,cacm,12,9,1,January,1966,G. M. Larssen; 57 cacm 181 0 4 4 April 1961 s19 A60 J. R. Herndon; Ber or Bei Function bei function;ber function; C,cacm,392,5,7,July,1962,A. P. Relph; +C,cacm,438,5,8,August,1962,H. C. {Thacher Jr.}; 58 cacm 236 0 4 5 May 1961 f1 A60 D. Cohen; Matrix Inversion obsolete;matrix inversion; C,cacm,347,5,6,June,1962,R. A. Conger; +C,cacm,438,5,8,August,1962,G. Struble; +C,cacm,438--439,5,8,August,1962,R. George; +R,cacm,606,5,12,December,1962,P. G. Behrenz; 59 cacm 236 237 4 5 May 1961 c2 A60 E. H. Bareiss; M. A. Fisherkeller; Zeros of a Real Polynomial by Resultant Procedure polynomial zeros;resultant method; 60 cacm 255 0 4 5 May 1961 d1 A60 F. L. Bauer; {Romberg} Integration extrapolation to the limit;numerical integration;quadrature; +Romberg integration;Romberg quadrature; C,cacm,168,5,3,March,1962,H. C. {Thacher Jr.}; +C,cacm,281,5,5,May,1962,K. H. Buchner; +R,cacm,420--421,7,7,July,1964,G. C. {Thacher Jr.}; 61 cacm 319 320 4 7 July 1961 a1 A60 A. Gibb; Procedures For Range Arithmetic obsolete;interval arithmetic; 62 cacm 320 321 4 7 July 1961 s16 A60 J. R. Herndon; A Set of Associate {Legendre} Polynomials of The Second Kind associated Legendre function of the second kind; R,cacm,544,4,12,December,1961,J. R. Herndon; 63 cacm 321 0 4 7 July 1961 m1 A60 C. A. R. Hoare; Partition obsolete;sorting; C,cacm,439,5,8,August,1962,J. S. Hillmore; +C,cacm,446,6,8,August,1963,B. Randell and L. J. Russel; 64 cacm 321 0 4 7 July 1961 m1 A60 C. A. R. Hoare; Quicksort obsolete;sorting; C,cacm,439,5,8,August,1962,J. S. Hillmore; +C,cacm,446,6,8,August,1963,B. Randell and L. J. Russel; +R,cacm,143--152,17,3,March,1974,R. Loser; 65 cacm 321 322 4 7 July 1961 m1 A60 C. A. R. Hoare; Find obsolete;sorting; C,cacm,439,5,8,August,1962,J. S. Hillmore; +C,cacm,446,6,8,August,1963,B. Randell and L. J. Russel; 66 cacm 322 0 4 7 July 1961 f1 A60 J. Caffrey; {INVRS} matrix inversion;positive definite matrix;square root method; C,cacm,50,5,1,January,1962,B. Randell and C. G. Brayden; +C,cacm,348,5,6,June,1962,J. Caffrey; 67 cacm 322 0 4 7 July 1961 f1 A60 J. Caffrey; {CRAM} symmetric matrix; C,cacm,348,5,6,June,1962,A. P. Relph; 68 cacm 339 0 4 8 August 1961 a1 A60 H. C. Rice; Augmentation obsolete;augment; C,cacm,498,4,11,November,1961,L. M. Breed; 69 cacm 392 0 4 9 September 1961 h A60 B. H. Mayoh; Chain Tracing chain tracing;transitive relation;Turing machine; 70 cacm 497 0 4 11 November 1961 e1 A60 C. D. Mifsud; Interpolation by {Aitken} Aitken's iteration;interpolation;Lagrange interpolating polynomial; C,cacm,392,5,7,July,1962,A. P. Relph; 71 cacm 497 0 4 11 November 1961 g6 A60 R. R. Coveyou; J. G. Sullivan; Permutation obsolete;permutation generation;permutations; C,cacm,209,5,4,April,1962,J. E. L. Peck and G. F. Schrack; +C,cacm,209,5,4,April,1962,P. J. Brown; +C,cacm,439,5,8,August,1962,J. S. Hillmore; 72 cacm 498 0 4 11 November 1961 a1 A60 L. Hellerman; S. Ogden; Composition Generator obsolete;composition generation;compositions; C,cacm,439,5,8,August,1962,D. M. Collinson; 73 cacm 543 0 4 12 December 1961 s21 A60 D. K. Jefferson; Incomplete Elliptic Integrals elliptic integral;incomplete elliptic integral; +incomplete elliptic integral of the first kind; +incomplete elliptic integral of the second kind; C,cacm,544,4,12,December,1961,D. C. Kriebel; +R,cacm,514,5,10,October,1962,D. K. Jefferson; +C,cacm,69,6,2,February,1963,N. A. Meyer; +C,cacm,167,6,4,April,1963,R. P. van de Riet; 74 cacm 47 0 5 1 January 1962 e2 A60 J. E. L. Peck; Curve Fitting with Constraints curve approximation;curve fitting;least squares solution; C,cacm,316,6,6,June,1963,K. Isoda; 75 cacm 48 0 5 1 January 1962 c2 A60 J. E. L. Peck; Factors linear factors;polynomial zeros;rational roots; C,cacm,392,5,7,July,1962,A. P. Relph; +C,cacm,439,5,8,August,1962,J. S. Hillmore; 76 cacm 48 50 5 1 January 1962 m1 A60 I. Flores; Sorting Procedures obsolete;sorting; R,cacm,348,5,6,June,1962,B. Randell; 77 cacm 96 0 5 2 February 1962 e1 A60 P. E. Hennion; Interpolation Differentiation and Integration di-parabolic approximation;interpolation;numerical differentiation; +numerical integration;quadrature; C,cacm,348,5,6,June,1962,V. E. Whittier; +R,cacm,446--447,6,8,August,1963,P. E. Hennion; +R,cacm,663,6,11,November,1963,P. E. Hennion; 78 cacm 97 0 5 2 February 1962 c2 A60 C. Perry; Rational Roots of Polynomials with Integer Coefficients linear factors;polynomial zeros;rational roots; C,cacm,168,5,3,March,1962,M. H. Halstead; +R,cacm,440,5,8,August,1962,D. M. Collinson; 79 cacm 97 0 5 2 February 1962 d4 A60 T. P. Giammo; Difference Expression Coefficients Lagrange interpolation;numerical differentiation; C,cacm,104,6,3,March,1963,E. S. Clark; 80 cacm 166 0 5 3 March 1962 s14 A60 W. Holsten; Reciprocal Gamma Function of Real Argument obsolete;gamma function; R,cacm,685--686,9,9,September,1966,M. C. Pike and I. D. Hill; 81 cacm 166 167 5 3 March 1962 g7 A60 B. H. Mayoh; Economising a Sequence 1 sequence economisation;subset generation; 82 cacm 167 0 5 3 March 1962 g7 A60 B. H. Mayoh; Economising a Sequence 2 sequence economisation;subset generation; 83 cacm 167 168 5 3 March 1962 h A60 B. H. Mayoh; Optimal Classification of Objects classification of objects;operations research;optimization; 84 cacm 208 0 5 4 April 1962 d1 A60 P. E. Hennion; {Simpson}'s Integration obsolete;quadrature;Simpson's rule; C,cacm,392,5,7,July,1962,A. P. Relph; +R,cacm,440,5,8,August,1962,R. George; +C,cacm,557,5,11,November,1962,P. G. Behnrenz; 85 cacm 208 0 5 4 April 1962 f2 A60 T. G. Evans; {Jacobi} eigenvalues;eigenvectors;Jacobi method; C,cacm,440,5,8,August,1962,J. S. Hillmore; +C,cacm,447--448,6,8,August,1963,P. Naur; 86 cacm 208 209 5 4 April 1962 g6 A60 J. E. L. Peck; G. F. Schrack; Permute obsolete;permutations; C,cacm,440,5,8,August,1962,D. M. Collinson; 87 cacm 209 0 5 4 April 1962 g6 A60 J. R. Howell; Permutation Generator obsolete;permutation generation; C,cacm,440,5,8,August,1962,D. M. Collinson; +C,cacm,514,5,10,October,1962,G. F. Schrack and M. Shimrat; +R,cacm,452--453,10,7,July,1967,R. J. Ord-Smith; 88 cacm 280 0 5 5 May 1962 s20 A60 J. L. Cundiff; Evaluation of Asymptotic Expression for the {Fresnel} Sine and Cosine Integrals obsolete;Fresnel integrals; R,cacm,618,6,10,October,1963,M. D. Gray; 89 cacm 280 0 5 5 May 1962 s20 A60 J. L. Cundiff; Evaluation of the {Fresnel} Sine Integral obsolete;Fresnel integrals; R,cacm,618,6,10,October,1963,M. D. Gray; 90 cacm 281 0 5 5 May 1962 s20 A60 J. L. Cundiff; Evaluation of the {Fresnel} Cosine Integral obsolete;Fresnel integrals; R,cacm,618,6,10,October,1963,M. D. Gray; 91 cacm 281 0 5 5 May 1962 e2 A60 A. Newhouse; {Chebyshev} Curve-Fit obsolete;Chebyshev curve fitting; C,cacm,167,6,4,April,1963,R. P. Hale; +R,cacm,296,7,5,May,1964,P. Naur; +C,cacm,803,10,12,December,1967,J. Boothroyd; 92 cacm 286 0 5 5 May 1962 f4 A60 D. J. Roek; Simultaneous System of Equations and Matrix Inversion Routine obsolete;linear system;simultaneous linear equations;matrix inversion; 93 cacm 344 0 5 6 June 1962 a1 A60 M. H. Perstein; General Order Arithmetic obsolete;general order arithmetic; C,cacm,514,5,10,October,1962,R. George; 94 cacm 344 0 5 6 June 1962 g6 A60 J. Kurtzberg; Combination combination generation;combinations; C,cacm,557,5,11,November,1962,R. W. May; +C,cacm,606,5,12,December,1962,R. E. Grench; 95 cacm 344 0 5 6 June 1962 a1 A60 F. Stockmal; Generation of Partitions in Part-Count Form obsolete;partition generation; 96 cacm 344 345 5 6 June 1962 h A60 R. W. Floyd; Ancestor ancestor;boolean matrix;parent; C,cacm,104--105,6,3,March,1963,H. C. {Thacher Jr.}; 97 cacm 345 0 5 6 June 1962 h A60 R. W. Floyd; Shortest Path network;shortest path; 98 cacm 345 0 5 6 June 1962 d1 A60 J. L. Pfaltz; Evaluation of Definite Complex Line Integrals complex integral;line integral;numerical integration;quadrature; 99 cacm 345 346 5 6 June 1962 a1 A60 S. J. Garland; A. W. Knapp; Evaluation of {Jacobi} Symbol obsolete;Jacobi symbol; R,cacm,557,5,11,November,1962,R. W. May; 100 cacm 346 0 5 6 June 1962 o2 A60 P. J. Kiviat; Add Item to Chain-Linked List data structure;linked list;list operation; 101 cacm 346 0 5 6 June 1962 o2 A60 P. J. Kiviat; Remove Item From Chain-Linked List data structure;linked list;list operation; 102 cacm 346 0 5 6 June 1962 g6 A60 G. F. Schrack; M. Shimrat; Permutation in Lexicographical Order obsolete;permutations;lexicographical order; R,cacm,452--453,10,7,July,1967,R. J. Ord-Smith; 103 cacm 347 0 5 6 June 1962 d1 A60 G. F. Kuncir; {Simpson}'s Rule Integrator numerical integration;quadrature;Simpson's rule; 104 cacm 387 0 5 7 July 1962 f2 A60 H. Rutishauser; Reduction to {Jacobi} obsolete;banded matrix;tridiagonal matrix; 105 cacm 387 388 5 7 July 1962 c2 A60 F. L. Bauer; J. Stoer; {Newton} {Maehly} Newton-Maehly method;polynomial zeros; C,cacm,389,6,7,July,1963,J. Kondo; 106 cacm 388 0 5 7 July 1962 b4 A60 M. L. Johnson; W. Sangren; Complex Number to a Real Power complex function;real powers; R,cacm,557,5,11,November,1962,G. W. {Erwin Jr.}; 107 cacm 388 0 5 7 July 1962 f4 A60 J. W. Counts; {Gauss}'s Method obsolete;linear system;simultaneous linear equations; R,cacm,39,6,1,January,1963,P. Naur; +R,cacm,445,6,8,August,1963,P. Naur; 108 cacm 388 0 5 7 July 1962 s13 A60 Y. A. Kruglyak; D. R. Whitman; Definite Exponential Integrals {A} exponential integral;recurrence relation;recursion formula; C,cacm,393,5,7,July,1962,Y. A. Kruglyak and D. R. Whitman; 109 cacm 388 389 5 7 July 1962 s13 A60 Y. A. Kruglyak; D. R. Whitman; Definite Exponential Integrals {B} exponential integral;recurrence relation;recursion formula; C,cacm,393,5,7,July,1962,Y. A. Kruglyak and D. R. Whitman; 110 cacm 389 390 5 7 July 1962 s22 A60 Y. A. Kruglyak; D. R. Whitman; Quantum Mechanical Integrals of {Slater}-Type Orbitals quantum mechanical integral;Slater-type orbitals; C,cacm,393,5,7,July,1962,Y. A. Kruglyak and D. R. Whitman; 111 cacm 390 391 5 7 July 1962 s22 A60 Y. A. Kruglyak; D. R. Whitman; Molecular-Orbital Calculation of Molecular Interactions molecular interactions;molecular-orbital calculation; 112 cacm 434 0 5 8 August 1962 z A60 M. Shimrat; Position of Point Relative to Polygon simple closed polygon; C,cacm,606,5,12,December,1962,R. Hacker; 113 cacm 434 0 5 8 August 1962 m1 A60 R. W. Floyd; Treesort obsolete;sorting; 114 cacm 434 0 5 8 August 1962 a1 A60 F. Stockmal; Generation of Partitions with Constraints obsolete;permutation generation; 115 cacm 434 435 5 8 August 1962 g6 A60 H. F. Trotter; Perm permutation generation;permutations;transposition; C,cacm,514,5,10,October,1962,G. F. Schrack; +C,cacm,606,5,12,December,1962,E. S. Phillips; 116 cacm 435 0 5 8 August 1962 a2 A60 R. L. Smith; Complex Division complex arithmetic;complex division; 117 cacm 435 0 5 8 August 1962 z A60 D. M. Collinson; Magic Square (Even Order) magic square; C,cacm,440,5,8,August,1962,D. M. Collinson; +C,cacm,39--40,6,1,January,1963,P. Naur; +C,cacm,105,6,3,March,1963,K. M. Bosworth; 118 cacm 436 0 5 8 August 1962 z A60 D. M. Collinson; Magic Square (Odd Order) magic square; C,cacm,440,5,8,August,1962,D. M. Collinson; +C,cacm,606,5,12,December,1962,H. C. {Thacher Jr.}; +C,cacm,39--40,6,1,January,1963,P. Naur; +C,cacm,105,6,3,March,1963,K. M. Bosworth; 119 cacm 436 437 5 8 August 1962 h A60 B. Eisenman; M. Shapiro; Evaluation of a {Pert} Network network;network evaluation;Pert network;Pert network evaluation; C,cacm,330,8,5,May,1965,L. S. Coles; 120 cacm 437 0 5 8 August 1962 f1 A60 R. George; Matrix Inversion {II} obsolete;matrix inversion; C,cacm,40,6,1,January,1963,P. Naur; +R,cacm,445,6,8,August,1963,P. Naur; 121 cacm 482 0 5 9 September 1962 g5 A60 D. Shafer; Normdev obsolete;normal random deviate; C,cacm,556,8,9,September,1965,M. C. Pike; 122 cacm 482 483 5 9 September 1962 f2 A60 G. F. Dietzel; Tridiagonal Matrix obsolete;symmetric matrix;tridiagonal matrix; C,cacm,144--145,7,3,March,1964,P. Naur; 123 cacm 483 0 5 9 September 1962 s15 A60 M. Crawford; R. Techo; Real Error Function ${\rm erf}(x)$ obsolete;error function; C,cacm,316,6,6,June,1963,H. C. {Thacher Jr.}; +R,cacm,618,6,10,October,1963,D. Ibbetson; +R,cacm,145,7,3,March,1964,S. P. Barton and J. F. Wagner; +R,cacm,377--378,10,6,June,1967,I. D. Hill and S. A. Joyce; 124 cacm 483 0 5 9 September 1962 s17 A60 L. J. Schaefer; {Hankel} Function Hankel function; C,cacm,790--791,8,12,December,1965,G. A. Reilly; 125 cacm 510 511 5 10 October 1962 d1 A60 H. Rutishauser; Weightcoeff Gaussian coefficients;Gaussian integration;Gaussian quadrature; +numerical integration;qd-algorithm;quadrature; 126 cacm 511 0 5 10 October 1962 f4 A60 J. W. Counts; {Gauss}' Method obsolete;linear system;simultaneous linear equations; 127 cacm 511 513 5 10 October 1962 f5 A60 P. J. Walsh; Ortho approximation;orthogonalization; C,cacm,122,13,2,February,1970,I. Barrodale; 128 cacm 513 0 5 10 October 1962 c6 A60 M. Wells; Summation of {Fourier} Series Fourier series;Fourier series summation;function approximation; +trigonometric series; R,cacm,421,7,7,July,1964,H. C. {Thacher Jr.}; 129 cacm 550 551 5 11 November 1962 e4 A60 V. W. Whitley; Minifun obsolete;function minimization; R,cacm,521,6,9,September,1963,E. J. Wasscher; 130 cacm 551 0 5 11 November 1962 g6 A60 B. C. Eaves; Permute obsolete;permutation generation; R,cacm,452--453,10,7,July,1967,R. J. Ord-Smith; 131 cacm 551 0 5 11 November 1962 c1 A60 V. H. Smith; M. L. Allen; Coefficient Determination coefficient determination;power series;power series quotient; 132 cacm 551 553 5 11 November 1962 s22 A60 J. C. Browne; Quantum Mechanical Integrals Over all {Slater}-Type Integrals quantum mechanical integral;Slater-type integral; 133 cacm 553 0 5 10 October 1962 g5 A60 P. G. Behrenz; Random obsolete;random number generator;uniform distribution; C,cacm,606,5,12,December,1962,P. G. Behrenz; +R,cacm,105,6,3,March,1963,D. L. Laughlin; +C,cacm,167,6,4,April,1963,J. H. {Poole Jr.}; 134 cacm 553 0 5 11 November 1962 c1 A60 H. C. Fettis; Exponential of Series obsolete;power series exponentiation; C,cacm,390,6,7,July,1963,H. C. {Thacher Jr.}; 135 cacm 553 555 5 11 November 1962 f4 A60 W. M. McKeeman; {Crout} with Equilibration and Iteration Crout reduction;equilibration;linear system;simultaneous linear equations; C,cacm,557,5,11,November,1962,W. M. McKeeman; +R,cacm,421,7,7,July,1964,W. H. McKeeman; +R,cacm,104,8,2,February,1965,L. P. Meissner; 136 cacm 555 0 5 11 November 1962 z A60 M. Wells; Enlargement of a Group obsolete;group computations; 137 cacm 555 0 5 11 November 1962 o2 A60 D. M. Dahm; M. Wells; Nesting of For Statement {I} obsolete;programming languages; 138 cacm 555 556 5 11 November 1962 o2 A60 D. M. Dahm; M. Wells; Nesting of For Statement {II} obsolete;programming languages; 139 cacm 556 0 5 11 November 1962 a1 A60 J. E. L. Peck; Solutions of the {Diophantine} Equation obsolete;linear Diophantine equations; C,cacm,170--171,8,3,March,1965,H. J. Bowlden; 140 cacm 556 0 5 11 November 1962 f1 A60 P. Z. Ingerman; Matrix Inversion obsolete;matrix inversion; C,cacm,448,6,8,August,1963,R. George; 141 cacm 556 0 5 11 November 1962 h A60 P. Z. Ingerman; Path Matrix boolean matrix;network; 142 cacm 603 0 5 12 December 1962 g2 A60 W. L. Hafley; J. S. Lewis; Triangular Regression correlation matrix;multiple regression; 143 cacm 604 0 5 12 December 1962 m1 A60 A. F. {Kaupe Jr.}; Treesort 1 sorting;tree sort; 144 cacm 604 0 5 12 December 1962 m1 A60 A. F. {Kaupe Jr.}; Treesort 2 sorting;tree sort; 145 cacm 604 0 5 12 December 1962 d1 A60 W. M. McKeeman; Adaptive Numerical Integration by {Simpson}'s Rule adaptive integration;adaptive quadrature;numerical integration;quadrature; +Simpson's rule; C,cacm,167--168,6,4,April,1963,W. M. McKeeman; +R,cacm,171,8,3,March,1965,M. C. Pike; 146 cacm 604 605 5 12 December 1962 d1 A60 W. M. McKeeman; Multiple Integration multiple integration;numerical integration;quadrature; C,cacm,296,7,5,May,1964,N. Wirth; 147 cacm 605 0 5 12 December 1962 s14 A60 D. Amit; {PSIF} gamma function;logarithmic derivative;psi function;recurrence relation; +recursion formula; C,cacm,168,6,4,April,1963,H. C. {Thacher Jr.}; +C,cacm,691--692,12,12,December,1969,R. G. Parsons; 148 cacm 605 0 5 12 December 1962 z A60 D. M. Collinson; Term of Magic Square magic square; C,cacm,168,6,4,April,1963,D. Thoro; +C,cacm,168,6,4,April,1963,J. N. R. Narnewt; 149 cacm 605 0 5 12 December 1962 s21 A60 J. N. Merner; Complete Elliptic Integral obsolete;complete elliptic integral; C,cacm,166--167,6,4,April,1963,H. C. {Thacher jr.}; +R,toms,95,4,1,March,1978,O. Skovgaard; 150 cacm 67 68 6 2 February 1963 f1 A60 H. Rutishauser; {SYMINV}2 matrix inversion;symmetric matrix; R,cacm,390,6,7,July,1963,A. {Evans Jr.}; +R,cacm,390,6,7,July,1963,H. Rutishauser; +C,cacm,148,7,3,March,1964,P. Naur; 151 cacm 68 0 6 2 February 1963 m1 A60 H. F. Walter; Location of a Vector in a Lexicographically Ordered List lexicographic ordering;searching; 152 cacm 68 0 6 2 February 1963 g6 A60 J. Hopley; {NEXCOM} combination generation;combinations; R,cacm,385,6,7,July,1963,J. Hopley; 153 cacm 68 0 6 2 February 1963 h A60 F. L. Bauer; {GOMORY} obsolete;integer programming;linear programming; C,cacm,449,6,8,August,1963,B. Lefkowitz and D. A. D'Esopo; 154 cacm 103 0 6 3 March 1963 g6 A60 C. J. Mifsud; Combination in Lexicographical Order combination generation;combinations;lexicographic order; C,cacm,449,6,8,August,1963,K. M. Bosworth; 155 cacm 103 0 6 3 March 1963 g6 A60 C. J. Mifsud; Combination in Any Order combination generation;combinations; C,cacm,449,6,8,August,1963,K. M. Bosworth; 156 cacm 103 0 6 3 March 1963 g6 A60 C. J. Mifsud; Algebra of Sets algebra of sets;combinations; C,cacm,450,6,8,August,1963,K. M. Bosworth; 157 cacm 103 0 6 3 March 1963 c6 A60 C. J. Mifsud; {Fourier} Series Approximation Fourier series;Fourier series approximation;function approximation; +trigonometric series; R,cacm,521--522,6,9,September,1963,R. George; +R,cacm,618,6,10,October,1963,G. R. Schubert; 158 cacm 104 0 6 3 March 1963 c1 A60 H. E. Fettis; Exponentiation of Series coefficient determination;power series;power series exponentiation; C,cacm,390,6,7,July,1963,H. C. {Thacher Jr.}; +C,cacm,522,6,9,September,1963,J. D. Lawrence; 159 cacm 104 0 6 3 March 1963 f3 A60 D. W. Digby; Determinant obsolete;determinant; C,cacm,739,6,12,December,1963,A. Lapidus; 160 cacm 161 0 6 4 April 1963 g6 A60 M. L. Wolfson; H. V. Wright; Combinatorial of ${M}$ Things Taken ${N}$ at a Time combinations; C,cacm,450,6,8,August,1963,D. Thoro; +C,cacm,618,6,10,October,1963,R. F. Blakely; 161 cacm 161 0 6 4 April 1963 g6 A60 H. V. Wright; M. L. Wolfson; Combinatorial of ${M}$ Things Taken One at a Time, Two at a Time, Up to ${N}$ + at a Time combinations; C,cacm,450,6,8,August,1963,D. Thoro; +C,cacm,619,6,10,October,1963,D. H. Collins; 162 cacm 161 0 6 4 April 1963 j6 A60 F. G. Stockton; {XYMOVE} Plotting incremental plotter;plot; C,cacm,450,6,8,August,1963,W. E. Fletcher; +R,cacm,482,7,8,August,1964,D. K. Cavin; 163 cacm 161 162 6 4 April 1963 s17 A60 H. E. Fettis; Modified {Hankel} Function modified Hankel function; C,cacm,522,6,9,September,1963,H. C. {Thacher Jr.}; 164 cacm 162 163 6 4 April 1963 e2 A60 R. E. Clark; R. N. Kubik; L. P. Phillips; Orthogonal Polynomial Least Squares Surface Fit least squares solution;orthogonal polynomials;surface approximation; +surface fitting; C,cacm,450,6,8,August,1963,C. U. Bitterli; 165 cacm 163 164 6 4 April 1963 s21 A60 H. C. {Thacher Jr.}; Complete Elliptic Integrals complete elliptic integral;complete elliptic integral of the first kind; +complete elliptic integral of the second kind;elliptic integral; C,cacm,38,12,1,January,1969,I. Farkas; 166 cacm 164 0 6 4 April 1963 f1 A60 R. D. Rodman; {MonteCarlo} matrix inversion;Monte Carlo; R,cacm,523,6,9,September,1963,R. D. Rodman; 167 cacm 164 165 6 4 April 1963 e1 A60 W. Kahan; I. Farkas; Calculation of Confluent Divided Differences confluent divided differences;divided differences; C,cacm,523,6,9,September,1963,H. C. {Thacher Jr.}; 168 cacm 165 0 6 4 April 1963 e1 A60 W. Kahan; I. Farkas; {Newton} Interpolation with Backward Divided Differences backward divided differences;Newton interpolation; C,cacm,523,6,9,September,1963,H. C. {Thacher Jr.}; 169 cacm 165 0 6 4 April 1963 e1 A60 W. Kahan; I. Farkas; {Newton} Interpolation with Forward Divided Differences forward divided differences;Newton interpolation; C,cacm,523,6,9,September,1963,H. C. {Thacher Jr.}; 170 cacm 165 166 6 4 April 1963 f3 A60 P. E. Hennion; Reduction of a Matrix Containing Polynomial Elements determinant;polynomial elements; R,cacm,450,6,8,August,1963,P. E. Hennion; +C,cacm,421,7,7,July,1964,K. B. Priebe; 173 cacm 311 0 6 6 June 1963 k2 A60 O. H\'{a}jek; {ASSIGN} array assignment;relocation; C,cacm,619,6,10,October,1963,R. S. Scowen; +C,cacm,619,6,10,October,1963,Z. Filsak and L. Vrchoveck{\'{a}}; 174 cacm 311 312 6 6 June 1963 c2 A60 A. Gibb; A Posteriori Bounds on a Zero of a Polynomial polynomial zeros;range arithmetic; 175 cacm 312 313 6 6 June 1963 m1 A60 C. J. Shaw; T. N. Trimble; Shuttle Sort shuttle sort;sorting; C,cacm,619,6,10,October,1963,G. R. Schubert; +R,cacm,739,6,12,December,1963,O. C. Juelich; +R,cacm,296,7,5,May,1964,O. C. Juelich; 176 cacm 313 0 6 6 June 1963 e2 A60 T. D. Arthurs; Least Squares Surface Fit least squares solution;surface approximation;surface fitting; R,cacm,1073,15,12,December,1972,E. Schuegraf; 177 cacm 313 0 6 6 June 1963 e2 A60 M. J. Synge; Least Squares Solution with Constraints least squares solution;surface approximation;surface fitting; R,cacm,390,6,7,July,1963,M. J. Synge; 178 cacm 313 314 6 6 June 1963 e4 A60 A. F. {Kaupe Jr.}; Direct Search direct search;function minimization;searching; R,cacm,684--685,9,9,September,1966,M. Bell and M. C. Pike; +R,cacm,498,11,7,July,1968,R. De Vogelaere; +R,cacm,637--638,12,11,November,1969,F. K. Tomlin and L. B. Smith; +R,cacm,638,12,11,November,1969,L. B. Smith; 179 cacm 314 0 6 6 June 1963 s14 A60 O. G. Ludwig; Incomplete Beta Ratio beta function;beta function ratio;incomplete beta function ratio; R,cacm,375--376,10,6,June,1967,M. C. Pike and I. D. Hill; +R,cacm,156--157,17,3,March,1974,N. E. Bosten and E. L. Battiste; +R,toms,207--208,2,2,June,1976, +M. C. Pike and J. SooHoo and N. E. Bosten and T. J. Aird; 180 cacm 314 315 6 6 June 1963 s15 A60 H. C. {Thacher Jr.}; Error Function -- Large $x$ obsolete;error function; R,cacm,377--378,10,6,June,1967,I. D. Hill and S. A. Joyce; 181 cacm 315 0 6 6 June 1963 s15 A60 H. C. {Thacher Jr.}; Complimentary Error Function -- Large $x$ obsolete;complementary error function; C,cacm,702,7,12,December,1964,I. Clausen and L. Hansson; +R,cacm,377--378,10,6,June,1967,I. D. Hill and S. A. Joyce; 182 cacm 315 0 6 6 June 1963 d1 A60 W. M. McKeeman; L. Tesler; Nonrecursive Adaptive Integration adaptive integration;adaptive quadrature;numerical integration;quadrature; +Simpson's rule; C,cacm,244,7,4,April,1964,H. S. Butler; 183 cacm 315 316 6 6 June 1963 f2 A60 H. R. Schwarz; Reduction of a Symmetric Bandmatrix to Triple Diagonal Form band matrix;matrix reduction;symmetric matrix;tridiagonal matrix; 184 cacm 386 0 6 7 July 1963 s22 A60 A. Colker; {Erlang} Probability for Curve Fitting curve fitting;Erlang probability function; 185 cacm 386 0 6 7 July 1963 s15 A60 A. Colker; Normal Probability for Curve Fitting curve fitting;error function;normal distribution; 186 cacm 386 387 6 7 July 1963 a2 A60 R. P. {van de Riet}; Complex Arithmetic complex arithmetic; 187 cacm 387 0 6 7 July 1963 e1 A60 R. P. {van de Riet}; Differences and Derivatives numerical differentiation; 188 cacm 387 0 6 7 July 1963 e3 A60 F. Rodriguez-Gil; Smoothing 1. smoothing; 189 cacm 387 0 6 7 July 1963 e3 A60 F. Rodriguez-Gil; Smoothing 2. smoothing; 190 cacm 388 0 6 7 July 1963 b4 A60 A. P. Relph; Complex Power complex function;complex powers; 191 cacm 388 389 6 7 July 1963 s22 A60 A. P. Relph; Hypergeometric hypergeometric function; C,cacm,244,7,4,April,1964,H. C. {Thacher Jr.}; +R,cacm,589--590,17,10,October,1974,H. Kopperlaar; 192 cacm 388 0 6 7 July 1963 s22 A60 A. P. Relph; Confluent Hypergeometric confluent hypergeometric function; C,cacm,244,7,4,April,1964,H. C. {Thacher Jr.}; 193 cacm 388 0 6 7 July 1963 c1 A60 H. E. Fettis; Reversion of Series coefficient determination;power series;power series reversion; C,cacm,745,6,12,December,1963,H. C. {Thacher Jr.}; 194 cacm 441 0 6 8 August 1963 d2 A60 C. Domingo; {ZERSOL} ordinary differential equations;Runge-Kutta method; 195 cacm 441 0 6 8 August 1963 f4 A60 D. H. Thurnau; {BANDSOLVE} band matrix;linear system;simultaneous linear equations; R,cacm,1074,15,12,December,1972,E. Schuegraf; 196 cacm 442 443 6 8 August 1963 c5 A60 R. D. Rodman; {Muller}'s Method for Finding Roots of an Arbitrary Function function zeros;Muller's method; C,cacm,12--14,11,1,January,1968,V. W. Whitley; 197 cacm 443 0 6 8 August 1963 f1 A60 M. Wells; Matrix Division matrix division;symmetric matrix;positive definite matrix; C,cacm,148,7,3,March,1964,M. Wells; 198 cacm 443 444 6 8 August 1963 d1 A60 W. M. McKeeman; Adaptive Integration and Multiple Integration multiple integration;Newton-Cotes formula;numerical integration;quadrature; 199 cacm 444 0 6 8 August 1963 z A60 R. G. Tantzen; Conversions Between Calendar Date and {Julian} Day Number calendar;Gregorian calendar;Julian day number; C,cacm,661,7,11,November,1964,D. K. Oppenheim; 200 cacm 444 0 6 8 August 1963 g5 A60 R. George; Normal Random obsolete;normal random deviate; C,cacm,556,8,9,September,1965,M. C. Pike; 201 cacm 445 0 6 8 August 1963 m1 A60 J. Boothroyd; Shellsort shell sort;sorting; C,cacm,349,7,6,June,1964,M. A. Batty; +R,cacm,373--374,13,6,June,1970,J. P. Chandler and W. C. Harrison; +R,cacm,143--152,17,3,March,1974,R. Loser; 202 cacm 517 0 6 9 September 1963 g6 A60 M-K. Shen; Generation of Permutations in Lexicographical Order obsolete;permutation generation; C,cacm,556,8,9,September,1965,R. W. Elliot; +R,cacm,452--453,10,7,July,1967,R. J. Ord-Smith; 203 cacm 517 519 6 9 September 1963 e4 A60 E. J. Wasscher; {STEEP}1 function minimization;method of steepest descent; C,cacm,585,7,10,October,1964,P. Wallack; +C,cacm,171,8,3,March,1965,J. M. Varah; 204 cacm 519 0 6 9 September 1963 e4 A60 E. J. Wasscher; {STEEP}2 function minimization;method of steepest descent; 205 cacm 519 0 6 9 September 1963 e4 A60 J. G. A. Haubrich; {ATIVE} function minimization;method of steepest descent; R,cacm,171,8,3,March,1965,E. J. Wasscher; 206 cacm 519 0 6 9 September 1963 b1 A60 M. Konda; Arccossin arccosine;arcsine;inverse cosine;inverse sine;inverse trigonometric function; R,cacm,104--105,8,2,February,1965,H. J. Bowlden; 207 cacm 615 0 6 10 October 1963 m1 A60 J. Boothroyd; Stringsort sorting;string sort; C,cacm,585,7,10,October,1964,C. R. Blair; +R,cacm,143--152,17,3,March,1974,R. Loser; 208 cacm 615 616 6 10 October 1963 g1 A60 W. T. {Foreman Jr.}; Discrete Convolution discrete convolution;probability distribution;sum of random variables; 209 cacm 616 0 6 10 October 1963 s15 A60 D. Ibbetson; {Gauss} obsolete;normal distribution; C,cacm,148,7,3,March,1964,G. W. Gladfelter; +C,cacm,482,7,8,August,1964,M. C. Pike; +R,cacm,377--378,10,6,June,1967,I. D. Hill and S. A. Joyce; 210 cacm 616 0 6 10 October 1963 e1 A60 G. R. Schubert; {Lagrangian} Interpolation obsolete;Lagrange interpolating polynomial; C,cacm,619,6,10,October,1963,T. A. Dwyer; 211 cacm 617 0 6 10 October 1963 e1 A60 G. R. Schubert; {Hermite} Interpolation Hermite interpolation;interpolation; 212 cacm 617 0 6 10 October 1963 g1 A60 M. D. Gray; Frequency Distribution frequency distribution; 213 cacm 617 0 6 10 October 1963 s20 A60 M. D. Gray; {Fresnel} Integrals obsolete;Fresnel integrals; C,cacm,661,7,11,November,1964,M. Gray; 214 cacm 662 0 6 11 November 1963 s18 A60 J. M. S. Sim{\~{o}}es Pereira; $q$-{Bessel} Functions ${I}_n (t)$ q-Bessel function;series expansion; R,cacm,349,7,6,June,1964,J. M. S. Sim{\~{o}}es Pereira; 215 cacm 662 0 6 11 November 1963 c6 A60 H. C. {Thacher Jr.}; {Shanks} e(k) transforms;epsilon algorithm; C,cacm,297,7,5,May,1964,L. Schumaker; 216 cacm 663 0 6 11 November 1963 e3 A60 R. George; Smooth smoothing; 217 cacm 737 0 6 12 December 1963 h A60 W. A. Briggs; Minimum Excess Cost Curve critical path scheduling;network evaluation;network flow;Pert network; +Pert network evaluation; R,cacm,573,11,8,August,1968,J. F. Muth; 218 cacm 737 738 6 12 December 1963 d2 A60 P. M. Lukehard; {Kutta} {Merson} ordinary differential equations;Kutta-Merson method; C,cacm,585--586,7,10,October,1964,K. B. Priebe; +R,cacm,273,9,4,April,1966,G. Bayer; 219 cacm 738 739 6 12 December 1963 h A60 R. H. Kase; Topological Ordering for {Pert} Networks Pert network;topological ordering; R,toms,303,3,3,September,1977,D. Tenney; 220 cacm 739 0 6 12 December 1963 f4 A60 P. W. Shantz; {Gauss}-{Seidel} Gauss-Seidel iteration;linear system;simultaneous linear equations; R,cacm,349,7,6,June,1964,A. P. Batson and N. Wirth; 221 cacm 143 0 7 3 March 1964 s14 A60 W. Gautschi; Gamma Function obsolete;gamma function; C,cacm,586,7,10,October,1964,V-K. McCombs; +R,cacm,685--686,9,9,September,1966,M. C. Pike and I. D. Hill; 222 cacm 143 144 7 3 March 1964 s14 A60 W. Gautschi; Incomplete Beta Function Ratios beta function;beta function ratio;incomplete beta function ratio; C,cacm,244,7,4,April,1964,W. Gautschi; 223 cacm 243 0 7 4 April 1964 a1 A60 M. Shimrat; Prime Twins obsolete;prime number generation;twin primes; 224 cacm 243 244 7 4 April 1964 f3 A60 L. T. Rotenberg; Evaluation of Determinant determinant;triangularization; C,cacm,702,7,12,December,1964,V. Hasselblad and J. Rulifson; 225 cacm 295 0 7 5 May 1964 s14 A60 S. J. Cyvin; B. N. Cyvin; Gamma Function with Controlled Accuracy obsolete;gamma function; C,cacm,586,7,10,October,1964,T. A. Bray; 226 cacm 295 0 7 5 May 1964 s15 A60 S. J. Vyvin; Normal Distribution Function obsolete;normal distribution; R,cacm,377--378,10,6,June,1967,I. D. Hill and S. A. Joyce; 227 cacm 295 0 7 5 May 1964 s22 A60 S. J. Cyvin; {Chebyshev} Polynomial Coefficients Chebyshev polynomial;polynomial coefficients; 228 cacm 295 296 7 5 May 1964 s18 A60 J. M. S. Sim{\~{o}}es Pereira; ${Q}$-{Bessel} Functions $\bar{{I}}_{n} (t)$ q-Bessel function;series expansion; 229 cacm 296 0 7 5 May 1964 b1 A60 J. C. Morelock; Elementary Functions by Continued Fractions continued fraction;Pade table; C,cacm,692,12,12,December,1969,T. A. Bray; 230 cacm 347 0 7 6 June 1964 f1 A60 J. Boothroyd; Matrix Permutation matrix permutation;pivoting; 231 cacm 347 0 7 6 June 1964 f1 A60 J. Boothroyd; Matrix Inversion complete pivoting;Gaussian elimination;matrix inversion;pivoting; R,cacm,220,8,4,April,1965,M. Ferring; 232 cacm 347 348 7 6 June 1964 m1 A60 J. W. J. Williams; Heapsort heap sort;sorting; 233 cacm 348 349 7 6 June 1964 d1 A60 F. Olynyk; {Simpson}'s Rule for Multiple Integration multiple integration;numerical integration;quadrature;Simpson's rule; R,cacm,512,13,8,August,1970,L. G. Proll; 234 cacm 420 0 7 7 July 1964 s23 A60 J. M. S. Sim{\~{o}}es Pereira; {Poisson}-{Charlier} Polynomials function evaluation;Poisson-Charlier polynomials;polynomial evaluation; R,cacm,105,8,2,February,1965,P. A. Samet; 235 cacm 420 0 7 7 July 1964 g6 A60 R. Durstenfeld; Random Permutation permutation generation;permutations;random permutations; R,cacm,445,8,7,July,1965,M. C. Pike; 236 cacm 479 480 7 8 August 1964 s17 A60 W. Grautschi; {Bessel} Functions of the First Kind Bessel function; C,cacm,105--106,8,2,February,1965,W. Gautschi; +R,toms,282--284,1,3,September,1975,O. Skovgaard; 237 cacm 481 0 7 8 August 1964 a1 A60 J. E. L. Peck; Greatest Common Divisor obsolete;greatest common divisor;Euclidian algorithm; C,cacm,702,7,12,December,1964,T. A. Bray; 238 cacm 481 0 7 8 August 1964 f4 A60 C. M. Reeves; Conjugate Gradient Method conjugate gradient method;linear system;simultaneous linear equations; 239 cacm 481 482 7 8 August 1964 i5 A60 W. M. McKeeman; Free Field Read free format input;input;input procedure; 240 cacm 546 0 7 9 September 1964 z A60 E. Dorrer; Coordinates On An Ellipsoid ellipsoid;geodesic; 241 cacm 546 0 7 9 September 1964 b1 A60 K. W. Mills; Arctangent arctangent;complex argument;complex function;inverse tangent; +inverse trigonometric function; 242 cacm 585 0 7 10 October 1964 g6 A60 T. W. Sag; Permutations of a Set With Repetitions permutation generation;permutations; 243 cacm 660 0 7 11 November 1964 b3 A60 D. S. Collens; Logarithm of a Complex Number complex function;complex logarithm; C,cacm,279,8,5,May,1965,J. Boothroyd; 244 cacm 660 661 7 11 November 1964 s20 A60 H. Lotsch; {Fresnel} Integrals Fresnel cosine integral;Fresnel integral;Fresnel sine integral; 245 cacm 701 0 7 12 December 1964 m1 A60 R. W. Floyd; Treesort 3 sorting;tree sort; C,cacm,445,8,7,July,1965,P. S. Abrams; +C,cacm,371--373,13,6,June,1970,R. L. London; +R,cacm,143--152,17,3,March,1974,R. Loser; 246 cacm 701 0 7 12 December 1964 z A60 J. Boothroyd; Graycode Gray code; C,cacm,382,8,6,June,1965,W. D. Allen; +R,toms,285,1,3,September,1975,J. Misra; +R,toms,441--443,11,4,December,1985,M. C. Er; 247 cacm 701 0 7 12 December 1964 g5 A60 J. H. Halton; G. B. Smith; Radical-Inverse Quasi-Random Point Sequence pseudo-random point generator;pseudo-random points; 248 cacm 103 104 8 2 February 1965 h A60 W. A. Briggs; Netflow obsolete;network flow; R,cacm,633,11,9,September,1968, +J. H. Henderson and R. M. Knapp and M. E. Volberding; +R,cacm,633,11,9,September,1968,T. A. Bray and C. Witzgall; 249 cacm 104 0 8 2 February 1965 i5 A60 N. E. Wirth; Outreal ${N}$ free format output;output;output procedure; 250 cacm 104 0 8 2 February 1965 g6 A60 B. N. Boonstra; Inverse Permutation inverse permutation;permutations; R,cacm,670,8,11,November,1965,C. W. Medlock; 251 cacm 169 170 8 3 March 1965 e4 A60 M. Wells; Function Minimisation function minimization; C,cacm,686--687,9,9,September,1966,R. Fletcher; +R,cacm,512--513,12,9,September,1969,P. A. Hamilton and J. Boothroyd; +R,cacm,358,14,5,May,1971,F. R. House; 252 cacm 217 0 8 4 April 1965 z A60 J. H. Gunn; Vector Coupling or {Clebsch}-{Gordan} Coefficients Clebsch-Gordan coefficients;vector coupling; 253 cacm 217 218 8 4 April 1965 f2 A60 P. A. Businger; Eigenvalues of a Real Symmetric Matrix by the {QR} Method obsolete;eigenvalues;symmetric matrix;qr-algorithm; C,cacm,376,10,6,June,1967,J. H. Welsch; 254 cacm 218 219 8 4 April 1965 f2 A60 P. A. Businger; Eigenvalues and Eigenvectors of a Real Symmetric Matrix by the {QR} Method eigenvalues;eigenvectors;qr-algorithm;symmetric matrix; C,cacm,376--377,10,6,June,1967,J. H. Welsch; 255 cacm 279 0 8 5 May 1965 c6 A60 L. Teijelo; Computation of {Fourier} Coefficients Filon's method;Fourier coefficients;function approximation; +trigonometric series; C,cacm,636,12,11,November,1969,G. Hall and V. A. Ray; 256 cacm 379 380 8 6 June 1965 c2 A60 A. A. Grau; Modified {Graeffe} Method Graeffe method;polynomial zeros; R,cacm,687,9,9,September,1966,G. Stern; 257 cacm 381 0 8 6 June 1965 d1 A60 R. N. Kubik; {Havie} Integrator Havie integration;numerical integration;quadrature; C,cacm,795,9,11,November,1966,K. Hillstrom; +C,cacm,871,9,12,December,1966,I. Farkas; 258 cacm 381 382 8 6 June 1965 h A60 G. Bayer; Transport obsolete;network flow; R,cacm,445,8,7,July,1965,G. Bayer; +C,cacm,453,10,7,July,1967,L. S. Sims; 259 cacm 488 492 8 8 August 1965 s16 A60 W. Grautschi; {Legendre} Functions for Arguments Larger than One associated Legendre function of the first kind; R,toms,204--205,3,2,June,1977,J. K. M. Jansen; 260 cacm 492 0 8 8 August 1965 z A60 J. H. Gunn; 6-$j$ Symbols 6-j symbols; 261 cacm 492 493 8 8 August 1965 z A60 J. H. Gunn; 9-$j$ Symbols 9-j symbols; 262 cacm 493 0 8 8 August 1965 a1 A60 J. K. S. McKay; Number of Restricted Partitions of ${N}$ obsolete;partition generation; 263 cacm 493 0 8 8 August 1965 a1 A60 J. K. S. McKay; Partition Generator obsolete;partition generation; 263A cacm 601 602 8 10 October 1965 a1 A60 H. Langmaack; Gomory 1 obsolete;partition generation; C,cacm,326,13,5,May,1970,L. G. Proll; 264 cacm 493 0 8 8 August 1965 h A60 J. K. S. McKay; Map of Partitions into Integers dual method;integer programming;linear programming; 264A cacm 602 604 8 10 October 1965 e1 A60 J. Stafford; Interpolation in a Table interpolation;Neville's algorithm;table interpolation; 265 cacm 604 605 8 10 October 1965 l2 A60 N. Wirth; Find Precedence Functions compiling;precedence function;precedence grammar; 266 cacm 605 606 8 10 October 1965 g5 A60 M. C. Pike; I. D. Hill; Pseudo-Random Numbers pseudo-random number;pseudo-random number generator;random number; +random number generator;uniform distribution; R,cacm,687,9,9,September,1966,L. Hansson; +R,cacm,687,9,9,September,1966,M. C. Pike and I. D. Hill; +C,cacm,1072--1073,15,12,December,1972,W. L. Sullins; 267 cacm 606 0 8 10 October 1965 g5 A60 M. C. Pike; Random Normal Deviate normal distribution;pseudo-random number;pseudo-random number generator; +random normal deviate;random number;random number generator; 268 cacm 667 668 8 11 November 1965 o2 A60 W. M. McKeeman; {Algol} 60 Reference Language Editor symbol manipulation; R,cacm,407,12,7,July,1969,G. Sauer; 269 cacm 668 0 8 11 November 1965 f3 A60 J. Pfann; J. Straka; Determinant Evaluation determinant;Gaussian elimination;triangularization; C,cacm,686,9,9,September,1966,A. Bergson; 270 cacm 668 669 8 11 November 1965 f2 A60 A. Newhouse; Finding Eigenvalues by {Gaussian} Elimination eigenvalues;eigenvectors;Gaussian elimination; 271 cacm 669 670 8 11 November 1965 m1 A60 R. S. Scowen; Quickersort obsolete;sorting; C,cacm,354,9,5,May,1966,C. R. Blair; +R,cacm,143--152,17,3,March,1974,R. Loser; 272 cacm 789 790 8 12 December 1965 s15 A60 M. D. MacLaren; Procedure for the Normal Distribution Functions obsolete;normal distribution; R,cacm,377--378,10,6,June,1967,I. D. Hill and S. A. Joyce; +R,cacm,498,11,7,July,1968,M. D. MacLaren; 273 cacm 11 0 9 1 January 1966 c1 A60 H. C. {Thacher Jr.}; {SERREV} coefficient determination;power series;transcendental equations; 274 cacm 11 12 9 1 January 1966 f1 A60 J. Boothroyd; Generation of {Hilbert} Derived Test Matrix Hilbert matrix;test matrix; R,cacm,407--408,12,7,July,1969,J. Boothroyd; 275 cacm 85 0 9 2 February 1966 e2 A60 G. R. Deily; Exponential Curve Fit curve approximation;curve fitting;exponential curve approximation; +exponential curve fitting;exponential least squares solution; +least squares solution; 276 cacm 85 86 9 2 February 1966 e2 A60 G. R. Deily; Constrained Exponential Curve Fit constrained curve approximation;constrained curve fitting; +constrained least squares solution;curve approximation;curve fitting; +exponential constrained curve approximation; +exponential constrained curve fitting; +exponential constrained least squares solution;exponential curve approximation; +exponential curve fitting;exponential least squares solution; +least squares solution; 277 cacm 86 87 9 2 February 1966 c6 A60 L. B. Smith; Computation of {Chebyshev} Series Coefficients Chebyshev coefficients;function approximation; 278 cacm 88 0 9 2 February 1966 j6 A60 P. Lloyd; Graph Plotter obsolete;printer plotting; 279 cacm 270 0 9 4 April 1966 d1 A60 F. R. A. Hopgood; C. Litherland; {Chebyshev} Quadrature Chebyshev integration;Chebyshev polynomial;Chebyshev quadrature; +numerical integration;quadrature; R,cacm,434,9,6,June,1966,F. R. A. Hopgood and C. Litherland; +C,cacm,294,10,5,May,1967,K. Hillstrom; +R,cacm,666,10,10,October,1967,K. Hillstrom; 280 cacm 271 0 9 4 April 1966 d1 A60 J. H. Welsch; Abscissas and Weights for {Gregory} Quadrature Gregory quadrature;numerical integration;quadrature;quadrature abscissae; +quadrature coefficients; 281 cacm 271 272 9 4 April 1966 d1 A60 J. H. Welsch; Abscissas and Weights for {Romberg} Quadrature numerical integration;quadrature;quadrature abscissae;quadrature coefficients; +Romberg integration;Romberg quadrature; R,cacm,188,10,3,March,1967,J. Boothroyd; 282 cacm 272 0 9 4 April 1966 s22 A60 W. Gautschi; Derivatives of $e^x /x$, $\cos(x)/x$ and $\sin(x)/x$ derivative;differentiation;numerical differentiation; R,cacm,53--54,13,1,January,1970,W. Gautschi and B. J. Klein; 283 cacm 273 0 9 4 April 1966 c2 A60 I. O. Kerner; Simultaneous Displacement of Polynomial Roots if Real and Simple polynomial zeros; 284 cacm 326 0 9 5 May 1966 k2 A60 W. Fletcher; Interchange of Two Blocks of Data data interchange;relocation; R,toms,392--393,2,4,December,1976,M. R. Ito; 285 cacm 326 328 9 5 May 1966 h A60 T. J. Aird; The Mutual Primal-Dual Method dual problem;linear programming;mutual primal-dual simplex method; +primal problem; C,cacm,453,10,7,July,1967,H. Sp{\"{a}}th; 286 cacm 433 434 9 6 June 1966 h A60 J. E. L. Peck; M. R. Williams; Examination Scheduling examination scheduling problem;graph;graph partitioning;map coloring problem; R,cacm,795,9,11,November,1966,R. Williams; 287 cacm 513 0 9 7 July 1966 f1 A60 W. A. Blenkinship; Matrix Triangulation with Integer Arithmetic integer matrix;matrix triangularization; 288 cacm 514 0 9 7 July 1966 f4 A60 W. A. Blenkinship; Solution of Simultaneous Linear {Diophantine} Equations linear system;simultaneous linear Diophantine equations; 289 cacm 514 518 9 7 July 1966 g1 A60 I. D. Hill; M. C. Pike; Confidence Interval For a Ratio confidence interval;confidence interval for a ratio; 290 cacm 683 684 9 9 September 1966 f4 A60 J. Boothroyd; Linear Equations Exact Solutions integer matrix;linear system;simultaneous linear equations; 291 cacm 684 0 9 9 September 1966 s14 A60 M. C. Pike; I. D. Hill; Logarithm of Gamma Function gamma function; R,cacm,685--686,9,9,September,1966,M. C. Pike and I. D. Hill; +R,cacm,14,11,1,January,1968,M. R. Hoare; 292 cacm 793 795 9 11 November 1966 s22 A60 W. Gautschi; Regular {Coulomb} Wave Functions Coulomb wave function;regular Coulomb wave function;wave function; R,cacm,278--279,12,5,May,1969,K. S. K{\"{o}}lbig; +R,cacm,280,12,5,May,1969,W. Gautschi; +R,cacm,573,13,9,September,1970,W. J. Cody and K. Paciorek; 293 cacm 869 871 9 12 December 1966 h A60 G. Bayer; Transportation Problem linear programming;transportation problem; C,cacm,453,10,7,July,1967,L. S. Sims; +R,cacm,271--272,11,4,April,1968,G. Bayer; 294 cacm 40 0 10 1 January 1967 g5 A60 W. M. Strome; Uniform Random multiplicative congruential method;pseudo-random number; +pseudo-random number generator;random number;random number generator; +uniform distribution; 295 cacm 87 0 10 2 February 1967 e2 A60 H. Sp{\"{a}}th; Exponential Curve Fit curve approximation;curve fitting;exponential curve approximation; +exponential curve fitting;exponential least squares solution; +least squares solution; 296 cacm 87 88 10 2 February 1967 e2 A60 G. J. Makinson; Generalized Least Squares Fit by Orthogonal Polynomials curve approximation;curve fitting;least squares solution; +orthogonal polynomials; R,cacm,377,10,6,June,1967,G. J. Makinson; +C,cacm,636--637,12,11,November,1969,W. T. Watson; 297 cacm 181 182 10 3 March 1967 f2 A60 J. Boothroyd; Eigenvalues and Eigenvectors of the Symmetric System $({\bf A}-\lambda + {\bf B}){\bf X} = {\bf 0}$ eigenvalues;eigenvectors;positive definite matrix;symmetric matrix; +symmetric system; 298 cacm 182 0 10 3 March 1967 f1 A60 H. Sp{\"{a}}th; Determination of the Square Root of a Positive Definite Matrix matrix square root;positive definite matrix;symmetric matrix; C,cacm,325--326,12,6,June,1969,B. J. Duke; 299 cacm 243 244 10 4 April 1967 s15 A60 I. D. Hill; M. C. Pike; Chi-Squared Integral chi-squared integral;chi-squared test; C,cacm,271,11,4,April,1968,W. M. O'Brien and J. Wood; +R,toms,393--395,2,4,December,1976,M. el Lozy; +R,toms,185,11,2,June,1985,I. D. Hill and M. C. Pike; 300 cacm 244 245 10 4 April 1967 s22 A60 J. H. Gunn; {Coulomb} Wave Functions Coulomb wave function;wave function; C,cacm,279--280,12,5,May,1969,K. S. K{\"{o}}lbig; +R,cacm,692,12,12,December,1969,K. S. K{\"{o}}lbig; +R,cacm,308--309,16,5,May,1973,H. Vos; 301 cacm 291 292 10 5 May 1967 s20 A60 G. Bond; M. L. V. Pitteway; Airy Function Airy function; R,cacm,453,10,7,July,1967,M. L. V. Pitteway; 302 cacm 292 293 10 5 May 1967 k2 A60 J. Boothroyd; Transpose Vector Stored Array array operation;array transposition; C,cacm,326,12,6,June,1969,I. D. G. MacLeod; 303 cacm 373 374 10 6 June 1967 d1 A60 L. J. Gallaher; An Adaptive Quadrature Procedure with Random Panel Sizes adaptive integration;adaptive quadrature;numerical integration;quadrature; +random number;Simpson's rule; 304 cacm 374 375 10 6 June 1967 s15 A60 I. D. Hill; S. A. Joyce; Normal Curve Integral normal curve integral; R,cacm,377--378,10,6,June,1967,I. D. Hill and S. A. Joyce; +C,cacm,271,11,4,April,1968,A. Bergson; +R,cacm,565--566,12,10,October,1969,A. G. Adams; +R,cacm,624,13,10,October,1970,B. Holmgren; 305 cacm 450 0 10 7 July 1967 c1 A60 P. Bratley; J. K. S. McKay; Symmetric Polynomials schur function;symmetric polynomials;symmetric sum;unitary symmetric function; R,cacm,272,11,4,April,1968,J. K. S. McKay; 306 cacm 450 451 10 7 July 1967 g6 A60 P. Bratley; Permutations with Repetitions permutation generation;permutations; 307 cacm 451 452 10 7 July 1967 a1 A60 J. K. S. McKay; Symmetric Group Characters obsolete;group computations; R,cacm,14,11,1,January,1968,J. K. S. McKay; 308 cacm 452 0 10 7 July 1967 g6 A60 R. J. Ord-Smith; Generation of Permutations in Pseudolexicographic Order lexicographic generation;lexicographic order;permutation generation; +permutations;pseudo-lexicographic order; R,cacm,638,12,11,November,1969,R. J. Ord-Smith; 309 cacm 511 512 10 8 August 1967 s14 A60 A. M. S. Filho; G. Schwachheim; Gamma Function with Arbitrary Precision gamma function;Stirling series; 310 cacm 569 0 10 9 September 1967 a1 A60 B. A. Chartres; Prime Number Generator 1 obsolete;prime number generation; R,cacm,570,10,9,September,1967,B. A. Chartres; +C,cacm,192,13,3,March,1970,D. G. Rapp and L. D. Scott; 311 cacm 570 0 10 9 September 1967 a1 A60 B. A. Chartres; Prime Number Generator 2 obsolete;prime number generation; R,cacm,570,10,9,September,1967,B. A. Chartres; 312 cacm 665 0 10 10 October 1967 a2 A60 P. Friedland; Absolute Value and Square Root of a Complex Number absolute value;complex function;square root; 313 cacm 666 0 10 10 October 1967 a1 A60 P. Bratley; J. K. S. McKay; Multi-Dimensional Partition Generator obsolete;partition generation; 314 cacm 726 0 10 11 November 1967 c5 A60 D. B. Dulley; M. L. V. Pitteway; Finding a Solution of ${N}$ Functional Equations in ${N}$ Unknowns inverse interpolation;nonlinear equations;nonlinear systems; R,cacm,38--39,12,1,January,1969,J. Vandergraft and C. Mesztenyi; 315 cacm 726 728 10 11 November 1967 e4 A60 H. Sp{\"{a}}th; The Damped {Taylor}'s Series Method for Minimizing a Sum of Squares and for + Solving Systems of Nonlinear Equations least squares approximation;Newton's method;nonlinear equations; +nonlinear systems; R,cacm,513,12,9,September,1969,G. Silverman; 316 cacm 728 729 10 11 November 1967 c5 A60 K. M. Brown; Solution of Simultaneous Nonlinear Equations nonlinear equations;nonlinear systems;Taylor series; R,cacm,493,14,7,July,1971,W. J. Raduchel; 317 cacm 729 0 10 11 November 1967 g6 A60 C. L. Robinson; Permutation obsolete;permutations; 318 cacm 801 803 10 12 December 1967 e2 A60 J. Boothroyd; {Chebyschev} Curve-Fit (Revised) Chebyshev curve approximation;Chebyshev curve fitting;Chebyshev polynomial; +curve approximation;curve fitting;polynomial approximation; 319 cacm 12 0 11 1 January 1968 f1 A60 D. R. Green; Triangular Factors of Modified Matrices matrix decomposition;matrix factors;matrix modifier;matrix perturbation; +triangular factorization; 320 cacm 114 115 11 2 February 1968 c6 A60 D. B. Hunter; Harmonic Analysis for Symmetrically Distributed Data cosine series;curve fitting;function approximation;harmonic analysis; +sine series;trigonometric series; 321 cacm 115 116 11 2 February 1968 s14 A60 J. Morris; $t$-Test Probabilities distribution function;Student's t-statistic;t-test; R,cacm,124,13,2,February,1970,G. W. Hill and M. Loughhead; 322 cacm 116 117 11 2 February 1968 s14 A60 E. Dorrer; ${F}$-Distribution Fisher's f-distribution;Student's t-distribution; C,cacm,39,12,1,January,1969,J. B. F. Field; +R,cacm,117,14,2,February,1971,H. Tolman; 323 cacm 117 0 11 2 February 1968 g6 A60 R. J. Ord-Smith; Generation of Permutations in Lexicographic Order lexicographic generation;lexicographic order;permutation generation; +permutations; C,cacm,512,12,9,September,1969,I. M. Leitch; +R,cacm,577--578,16,9,September,1973,M. K. Roy; 324 cacm 117 118 11 2 February 1968 h A60 G. Bayer; Maxflow linear programming;maximum flow;network;network flow; R,cacm,309,16,5,May,1973,G. Bayer; 325 cacm 118 0 11 2 February 1968 f1 A60 G. Zielke; Adjustment of the Inverse of a Symmetric Matrix When Two Symmetric Elements + are Changed matrix inversion;matrix modification;matrix perturbation;symmetric matrix; 326 cacm 269 270 11 4 April 1968 c2 A60 T. R. F. Nonweiler; Roots of Low-Order Polynomial Equations biquadratic equation roots;cubic equation roots;polynomial zeros; +quadratic equation roots; 327 cacm 270 271 11 4 April 1968 s22 A60 K. S. K{\"{o}}lbig; Dilogarithm dilogarithm function; 328 cacm 428 430 11 6 June 1968 f4 A60 R. H. Bartels; G. H. Golub; {Chebyshev} Solution to An Overdetermined Linear System Chebyshev solutions;exchange algorithm;simultaneous linear equations; +over-determined linear system;simultaneous linear equations; C,cacm,326,12,6,June,1969,N. L. Schryer; 329 cacm 430 0 11 6 June 1968 g6 A60 R. R. Fenichel; Distributed of Indistinguishable Objects Into Distinguishable Slots combinations;distribution numbers;object distributions; R,cacm,187,12,3,March,1969,M. Gray; 330 cacm 431 432 11 6 June 1968 g1 A60 I. Oliver; Factorial Analysis of Variance factorial variance analysis;variance; 331 cacm 432 436 11 6 June 1968 d1 A60 W. Gautschi; {Gaussian} Quadrature Formulas Gaussian integration;Gaussian quadrature;numerical integration; +orthogonal polynomials;quadrature;weight function; R,cacm,280--281,12,5,May,1969,I. D. Hill; +R,cacm,512,13,8,August,1970,W. R. {Wise Jr.}; 332 cacm 436 437 11 6 June 1968 s22 F B. F. W. Witte; {Jacobi} Polynomials function evaluation;Jacobi polynomials;orthogonal polynomials; +polynomial evaluation;three-term recurrences; R,cacm,449,13,7,July,1970,A. H. J. Sale; +R,cacm,116--117,18,2,February,1975,O. Skovgaard; 333 cacm 437 440 11 6 June 1968 h A60 R. C. Salazar; S. K. Sen; Minit Algorithm For Linear Programming dual problem;dual simplex method;linear programming;primal problem; R,cacm,408,12,7,July,1969,D. K. Messham; +R,cacm,50,14,1,January,1971,\AA. Kolm and T. Dahlstrand; +R,cacm,310,16,5,May,1973,B. Holmgren and D. Obradovic and A. Kolm; +R,cacm,310,16,5,May,1973,D. Obradovic; 334 cacm 498 0 11 7 July 1968 g5 A60 J. R. Bell; Normal Random Deviates normal distribution;pseudo-random number;pseudo-random number generator; +random normal deviate;random number;random number generator; R,cacm,281,12,5,May,1969,R. Knop; +R,toms,89,8,1,March,1982,A. E. Tracht; 335 cacm 567 573 11 8 August 1968 i5 A60 R. de Vogelaere; A Set of Basic Input-Output Procedures input;input procedure;output;output procedure; 336 cacm 631 632 11 9 September 1968 h A60 T. A. Bray; C. Witzgall; Netflow capacitated network;linear programming;minimum-cost flow;network flow; R,cacm,192,13,3,March,1970,T. A. Bray and C. Witzgall; 337 cacm 633 0 11 9 September 1968 c1 A60 W. Pankiewicz; Calculation of a Polynomial and Its Derivative Values by {Horner} Scheme function evaluation;Horner's scheme;polynomial derivative; +polynomial evaluation; R,cacm,39,12,1,January,1969,O. K. Smith; 338 cacm 773 776 11 11 November 1968 c6 A60 R. C. Singleton; {Algol} Procedures For the Fast {Fourier} Transform complex Fourier transform;fast Fourier transform;Fourier series; +harmonic analysis;multivariate Fourier transform;orthogonal polynomials; +orthogonal transformation;spectral analysis; 339 cacm 776 779 11 11 November 1968 c6 A60 R. C. Singleton; An {Algol} Procedure for the Fast {Fourier} Transform with Arbitrary Factors complex Fourier transform;fast Fourier transform;Fourier series; +harmonic analysis;multivariate Fourier transform;orthogonal polynomials; +orthogonal transformation;spectral analysis; R,cacm,187,12,3,March,1969,R. C. Singleton; 340 cacm 779 782 11 11 November 1968 c2 A60 A. Noltemeier; Roots of Polynomials by a Root-Squaring and Resultant Routine Graeffe method;polynomial zeros;resultant method;root-squaring operations; +subresultant procedure; R,cacm,281,12,5,May,1969,A. Noltemeier; 341 cacm 782 0 11 11 November 1968 h A60 J. L. Byrne; L. G. Proll; Solution of Linear Programs in 0-1 Variables by Implicit Enumeration linear programming;partial enumeration;zero-one variable; R,cacm,692,12,12,December,1969,L. G. Proll; +R,cacm,263,13,4,April,1970,M. M. Guignard; 342 cacm 819 820 11 12 December 1968 g5 A60 R. H. Snow; Generator of Random Numbers Satisfying the {Poisson} Distribution Monte Carlo;Poisson distribution;pseudo-random number; +pseudo-random number generator;random number;random number generator; +random poisson deviate; 343 cacm 820 826 11 12 December 1968 f2 F J. Grad; M. A. Brebner; Eigenvalues and Eigenvectors of a Real Generator Matrix eigenvalues;eigenvectors;Householder's method;inverse iteration;latent roots; +latent vectors;qr-algorithm; C,cacm,122--124,13,2,February,1970,H. D. Knoble; +R,cacm,694--695,13,11,November,1970,W. Knight and W. Mersereau; +R,cacm,466,15,6,June,1972,H. Niessner; 344 cacm 37 38 12 1 January 1969 s14 F D. A. Levine; {Student}'s $t$-Distribution Student's t-distribution;t-test; R,cacm,124,13,2,February,1970,G. W. Hill and M. Loughhead; +R,cacm,449,13,7,July,1970,A. H. J. Sale; 345 cacm 179 184 12 3 March 1969 c6 A60 R. C. Singleton; An {Algol} Convolution Procedure Based on the Fast {Fourier} Transform autocorrelation;autocovariance;complex Fourier transform;convolution; +cross-correlation;digital filtering;fast Fourier transform;Fourier series; +harmonic analysis;multivariate Fourier transform;orthogonal polynomials; +orthogonal transformation;spectral analysis; R,cacm,566,12,10,October,1969,R. C. Singleton; 346 cacm 184 185 12 3 March 1969 s14 A60 J. Morris; ${F}$-Test Probabilities f-test;Fisher test;Snedecor f-statistic; R,toms,288--289,14,3,September,1988,R. S. Cormack and I. D. Hill; 347 cacm 185 187 12 3 March 1969 m1 A60/F R. C. Singleton; An Efficient Algorithm for Sorting with Minimal Storage minimal storage sorting;sorting; R,cacm,54,13,1,January,1970,R. Griffin and K. A. Redish; +R,cacm,624,13,10,October,1970,R. Peto; +R,toms,290--299,2,3,September,1976,R. Loeser; 348 cacm 212 213 12 4 April 1969 f1 A60 R. R. Climpel; Matrix Scaling by Integer Programming integer programming;mathematical programming;matrix condition;matrix scaling; 349 cacm 213 214 12 4 April 1969 s14 A60 A. T. de Medeiros; G. Schwachheim; Polygamma Functions with Arbitrary Precision digamma function;pentagamma function;polygamma function;psi function; +tetragamma function;trigamma function; C,toms,380--381,1,4,December,1975,J-G. Lewis; 350 cacm 275 278 12 5 May 1969 h A60 R. H. Bartels; G. H. Golub; Simplex Method Procedure Employing ${LU}$ Decomposition linear programming;lu decomposition;simplex method; 351 cacm 324 325 12 6 June 1969 d1 F G. Fairweather; Modified {Romberg} Quadrature numerical integration;quadrature;Romberg integration;Romberg quadrature; R,cacm,263,13,4,April,1970,N. D. Cook; +R,cacm,374--375,13,6,June,1970,G. C. Wallick; +R,cacm,449,13,7,July,1970,A. H. J. Sale; 352 cacm 399 407 12 7 July 1969 s22 F D. S. Clemm; Characteristic Values and Associated Solutions of {Mathieu}'s Differential + Equation characteristic value;Mathieu function;Mathieu's differential equation; +periodic solution;radial solution; R,cacm,750,13,12,December,1970,A. H. J. Sale; +R,cacm,1074,15,12,December,1972,M. J. Frisch; 353 cacm 457 458 12 8 August 1969 d1 F S. M. Chase; L. D. Fosdick; {Filon} Quadrature Filon integration;Filon quadrature;Fourier coefficients;Fourier series; +numerical integration;quadrature; R,cacm,263,13,4,April,1970,B. Einarsson; 354 cacm 511 0 12 9 September 1969 h A60 M. D. McIlroy; Generator of Spanning Trees graph;spanning tree;tree; 355 cacm 562 0 12 10 October 1969 z A60 J. M. S. Sim{\~{o}}es Pereira; An Algorithm for Generating {Ising} Configuration Ising problem;zero-one sequences; 356 cacm 563 0 12 10 October 1969 a1 A60 R. C. Singleton; A Prime Number Generator Using the Treesort Principle obsolete;prime number generation; 357 cacm 563 564 12 10 October 1969 a1 A60 R. C. Singleton; An Efficient Prime Number Generator obsolete;prime number generation; R,cacm,489,16,8,August,1973,R. M. DeMorgan; 358 cacm 564 565 12 10 October 1969 f1 F P. A. Businger; G. H. Golub; Singular Value Decomposition of a Complex Matrix least squares solution;matrix decomposition;pseudo inverse;singular values; 359 cacm 631 632 12 11 November 1969 g1 F J. R. Howell; Factorial Analysis of Variance factorial variance analysis;variance; R,cacm,449,13,7,July,1970,A. H. J. Sale; 360 cacm 632 633 12 11 November 1969 h A60 R. B. Dial; Shortest-Path Forest with Topological Ordering directed graph;network;shortest path;topological ordering;tree; 361 cacm 634 0 12 11 November 1969 g6 A60 B. Shriver; P. J. Eberlein; R. D. Dixon; Permanent Function of a Square Matrix {I} and {II} matrix operation;permanent function; R,cacm,376,13,6,June,1970,B. Shriver and P. J. Eberlain and R. D. Dixon; 362 cacm 634 635 12 11 November 1969 g6 A60 J. M. Robson; Generation of Random Permutations permutations;random permutations;transposition; 363 cacm 635 0 12 11 November 1969 s15 A60 W. Gautschi; Complex Error Function error function for complex argument;Voigt function; C,cacm,465--466,15,6,June,1972,K. S. K{\"{o}}lbig; 364 cacm 685 686 12 12 December 1969 z A60 R. G. Herriot; Coloring Polygonal Regions coloring planar surfaces;coloring polygonal regions;drawing pictures; +shading enclosed regions; 365 cacm 686 687 12 12 December 1969 c5 F H. Bach; Complex Root Finding complex function zeros;complex relaxation method;downhill method; 366 cacm 687 688 12 12 December 1969 g2 A60 P. J. Claringbold; Regression Using Certain Direct Product Matrices analysis of covariance;analysis of variance;experimental design; +projection operator;regression analysis; 367 cacm 688 691 12 12 December 1969 g2 A60 P. J. Claringbold; Analysis of Variance for Balanced Experiments analysis of covariance;analysis of variance;balanced experiment; +experimental design;interblock estimate;intrablock estimate;missing data; +regression analysis; 368 cacm 47 49 13 1 January 1970 d5 A60 H. Stenfest; Numerical Inversion of {Laplace} Transforms obsolete;Laplace transform inversion; R,cacm,624,13,10,October,1970,H. Stehfest; 369 cacm 49 0 13 1 January 1970 g5 A60 H. E. Schaffer; Generator of Random Numbers Satisfying the {Poisson} Distribution Poisson distribution;pseudo-random number;pseudo-random number generator; +random number;random number generator;random Poisson deviate; 370 cacm 49 52 13 1 January 1970 g5 F E. L. Butler; General Random Number Generator pseudo-random number;pseudo-random number generator;random number; +random number generator;transformation method; R,cacm,467--468,15,6,June,1972,L. G. Proll; 371 cacm 52 0 13 1 January 1970 a1 A60 J. K. S. McKay; Partitions in Natural Order obsolete;partition generation; 372 cacm 52 0 13 1 January 1970 a1 A60 K. B. Dunham; An Algorithm to Produce Complex Primes {CSIEVE} obsolete;prime number generation; R,cacm,695,13,11,November,1970,P. Bratley; 373 cacm 120 0 13 2 February 1970 a1 A60 J. S. White; Number of Doubly Restricted Partitions obsolete;partition generation; 374 cacm 120 0 13 2 February 1970 a1 A60 J. S. White; Restricted Partition Generator obsolete;partition generation; 375 cacm 120 121 13 2 February 1970 e2 A60 H. Sp{\"{a}}th; Fitting Data to One Exponential curve approximation;curve fitting;exponential curve approximation; +exponential curve fitting;exponential least squares solution; +least squares solution;nonlinear least squares; 376 cacm 121 122 13 2 February 1970 e2 A60 H. Sp{\"{a}}th; Least Squares Fit by $f(x)={A} \cos ({Bx}+{C})$ approximation;cosine curve approximation;cosine curve fitting; +cosine least squares solution;curve approximation;curve fitting; +least squares solution;nonlinear least squares;trigonometric curve; +trigonometric curve fitting;trigonometric least squares solution; 377 cacm 191 192 13 3 March 1970 r2 A60 J. L. Levine; Symbolic Expansion of Algebraic Expressions algebra;algebraic distribution;algebraic multiplication;distribution algorithm; +multiplication algorithm;polynomial distribution;polynomial expansion; +product algorithm;symbolic algebra;symbolic multiplication; 378 cacm 259 260 13 4 April 1970 c5 A60 W. Pankiewicz; Discretized {Newton}-like Method for Solving a System of Simultaneous + Nonlinear Equations Newton's method;nonlinear equations;nonlinear systems; 379 cacm 260 263 13 4 April 1970 d1 F J. N. Lyness; Squank ({Simpson} Quadrature Used Adaptively-Noise Killed) adaptive integration;adaptive quadrature;automatic integration; +automatic quadrature;numerical integration;quadrature;round-off error control; +Simpson's rule; C,cacm,1073,15,12,December,1972,P. Hallet and E. Mund; 380 cacm 324 326 13 5 May 1970 f1 F S. Laflin; M. A. Brebner; In-Situ Transposition of a Rectangular Matrix matrix transposition;rectangular matrix; R,cacm,327,13,5,May,1970,R. Lachenmaier; +C,cacm,49,15,1,January,1972,I. D. G. MacLeod; 381 cacm 326 0 13 5 May 1970 g5 A60 R. E. Knop; Random Vectors Uniform In Solid Angle Monte Carlo;pseudo-random number;pseudo-random number generator;random number; +random number generator;random vector; R,cacm,468,15,6,June,1972,G. F. Schrack; 382 cacm 368 0 13 6 June 1970 g6 A60 P. J. Chase; Combinations of ${M}$ Out of ${N}$ Objects combinations;permutations; R,cacm,376,13,6,June,1970,P. J. Chase; 383 cacm 368 369 13 6 June 1970 g6 A60 P. J. Chase; Permutations of a Set with Repetitions permutations; R,cacm,376,13,6,June,1970,P. J. Chase; 384 cacm 369 371 13 6 June 1970 f2 F G. W. Stewart; Eigenvalues and Eigenvectors of a Real Symmetric Matrix eigenvalues;eigenvectors;qr-algorithm;real symmetric matrix; R,cacm,750,13,12,December,1970,G. W. Stewart; 385 cacm 446 447 13 7 July 1970 s13 F K. A. Paciorek; Exponential Integral ${E}_i (x)$ exponential integral;rational Chebyshev approximation; C,cacm,448--449,13,7,July,1970,E. W. Ng; +R,cacm,750,13,12,December,1970,K. A. Redish; +R,cacm,1074,15,12,December,1972,M. J. Frisch; 386 cacm 447 448 13 7 July 1970 a1 F G. H. Bradley; Greatest Common Divisor of $n$ Integers and Multipliers obsolete;greatest common divisor;Euclidian algorithm; C,cacm,257,16,4,April,1973,L. C. Ragland and D. I. Good; 387 cacm 509 510 13 8 August 1970 e4 A60 K. Fielding; Function Minimization and Linear Search function minimization;relative minimum; 388 cacm 510 511 13 8 August 1970 s22 A60 H. H{\"{u}}bner; H. Kremer; K. O. Linn; W. Schwering; {Rad}{\-}e{\-}macher Function Rademacher function; 389 cacm 511 0 13 8 August 1970 s22 A60 H. H{\"{u}}bner; H. Kremer; K. O. Linn; W. Schwering; Binary Ordered {Walsh} Functions binary ordered Walsh function;Walsh function; 390 cacm 511 512 13 8 August 1970 s22 A60 H. H{\"{u}}bner; H. Kremer; K. O. Linn; W. Schwering; Sequency Ordered {Walsh} Functions sequency ordered Walsh function;Walsh function; 391 cacm 512 0 13 8 August 1970 z A60 J. McKay; Unitary Symmetric Polynomials symmetric polynomials;unitary symmetric polynomials; R,cacm,49,15,1,January,1972,G. F. Schrack; 392 cacm 567 570 13 9 September 1970 d3 F R. R. Smith; D. McCall; Systems of Hyperbolic P.D.E. extrapolation;hyperbolic p.d.e.;partial differential equations; +quasilinear p.d.e.; R,cacm,1074,15,12,December,1972,M. J. Frisch; 393 cacm 570 0 13 9 September 1970 c6 A60 S. K. Abdali; Special Series Summation with Arbitrary Precision approximation;arbitrary precision;function evaluation;series summation; R,cacm,468--469,15,6,June,1972,A. H. J. Sale; 394 cacm 571 572 13 9 September 1970 h A60 R. B. Dial; Decision Table Translation decision table;decision table translation; R,cacm,1074,15,12,December,1972,D. R. T. Marshall; 395 cacm 617 619 13 10 October 1970 s14 A60 G. W. Hill; {Student}'s $f$-Distribution Student's t-distribution;t-test; R,toms,238--239,5,2,June,1979,M. el Lozy; +R,toms,247--249,7,2,June,1981,G. W. Hill; 396 cacm 619 620 13 10 October 1970 s14 A60 G. W. Hill; {Student}'s $f$-Quantiles asymptotic approximation;quantile;Student's t-distribution;t-test; R,toms,238--239,5,2,June,1979,M. el Lozy; +R,toms,250--251,7,2,June,1981,G. W. Hill; 397 cacm 620 621 13 10 October 1970 h A60 S. K. Chang; A. Gill; An Integer Programming Problem change-making problem;integer programming; R,cacm,469,15,6,June,1972,S. C. Johnson and B. W. Kernighan; 398 cacm 621 0 13 10 October 1970 z A60 R. A Stone; Tableless Date Conversion calendar;date; R,cacm,918,15,10,October,1972,J. D. Robertson; 399 cacm 621 622 13 10 October 1970 h A60 J. J. Sepp{\"{a}}nen; Spanning Tree graph;spanning tree;tree; 400 cacm 622 624 13 10 October 1970 d1 F G. C. Wallick; Modified {Havie} Integration Havie integration;numerical integration;quadrature;Romberg integration; +Romberg quadrature; R,cacm,324,17,6,June,1974,R. Piessens; 401 cacm 693 0 13 11 November 1970 a1 A60 P. Bratley; An Improved Algorithm to Produce Complex Primes obsolete;prime number generation;plot; R,cacm,695,13,11,November,1970,P. Bratley; 402 cacm 693 694 13 11 November 1970 m1 A60 M. H. van Emden; Increasing the Efficiency of Quicksort quicksort;sorting; R,cacm,311,16,5,May,1973,R. E. Wheeler; +R,cacm,143--152,17,3,March,1974,R. Lose; 403 cacm 48 0 14 1 January 1971 a1 F M. W. Coleman; M. S. Taylor; Circular Integer Partitioning obsolete;partition generation; 404 cacm 48 49 14 1 January 1971 s14 F C. W. {Lucas Jr.}; C. W. Terrill; Complex Gamma Function complex gamma function;gamma function;poles of gamma function; +recursion formula;reflection formula;Stirling's asymptotic series; R,cacm,489,16,8,August,1973,G. Andrejkov{\'{a}} and J. Vinar; 405 cacm 113 117 14 2 February 1971 f2 A60 A. M. Dell; R. L. Weil; G. L. Thompson; Roots of Matrix Pencils: The Generalized Eigenvalue Problem eigenvalues;matrix roots;pencil roots; R,cacm,1075,15,12,December,1972,R. M. Heiberger; 406 cacm 180 184 14 3 March 1971 f4 F J. A. Howell; Exact Solution of Linear Equations Using Residue Arithmetic adjoint matrix;determinant;Gaussian elimination;linear system;matrix inversion; +modulus;residue arithmetic;simultaneous linear equations; R,cacm,311,16,5,May,1973,J. A. Howell; 407 cacm 185 190 14 3 March 1971 d2 F G. W. Gear; {DIFSUB} for Solution of Ordinary Differential Equations ordinary differential equations;multistep method;predictor-corrector method; +stiff differential equations; C,cacm,448,16,7,July,1973,P. J. Nikdai; 408 cacm 265 273 14 4 April 1971 f4 F J. M. McNamee; A Sparse Matrix Package (Part {I}) sparse matrix; R,cacm,311,16,5,May,1973,A. H. J. Sale; +R,cacm,578,16,9,September,1973,E. E. Lawrence; +R,toms,303,3,3,September,1977,P. Sipala; +R,toms,295,4,3,September,1978,F. Gustavson; +R,toms,456--457,6,3,September,1980, +U. Harms and H. Kollakowski and G. M{\"{o}}ller; 409 cacm 355 356 14 5 May 1971 e2 A60 H. Schmitt; Discrete {Chebychev} Curve Fit approximation;Chebyshev approximation;Chebyshev curve fitting; +Chebyshev polynomial;curve approximation;curve fitting;exchange algorithm; +polynomial approximation;Remez algorithm; 410 cacm 357 358 14 5 May 1971 m1 F J. M. Chambers; Partial Sorting order statistics;partial sorting;sorting; 411 cacm 491 492 14 7 July 1971 h A60 D. G. McVitie; L. B. Wilson; Three Procedures for the Stable Marriage Problem assignment problem;assignment procedure;combinatorics;discrete mathematics; +operations research;stable marriage problem;university entrance; 412 cacm 492 493 14 7 July 1971 j6 A60 J. {\v{C}}erm{\'{a}}k; Graph Plotter lineprinter plot;plot; R,cacm,489--490,16,8,August,1973,R. P. Watkins; 413 cacm 669 675 14 10 October 1971 c5 F J. N. Lyness; G. Sande; {ENTCAF} and {ENTCRE}: Evaluation of Normalized {Taylor} Coefficients of an + Analytic Function Cauchy integral;complex arithmetic;complex function zeros;complex variable; +fast Fourier transform;function zeros;interpolation;numerical differentiation; +numerical integration;Taylor coefficients;Taylor series; 414 cacm 737 746 14 11 November 1971 e2 A60 G. H. Golub; L. B. Smith; {Chebyshev} Approximation of Continuous Functions by a {Chebyshev} System of + Functions approximation;Chebyshev approximation;Chebyshev curve fitting; +Chebyshev polynomial;curve approximation;curve fitting;Remez algorithm; 415 cacm 805 806 14 12 December 1971 h A60 F. Bourgeous; J. C. Lassalle; Algorithm for the Assignment Problem (Rectangular Matrices) assignment problem;operations research;optimization;rectangular matrix; 416 cacm 806 807 14 12 December 1971 e1 A60 S-{\AA}. Gustafson; Rapid Computation of Coefficients of Interpolation Formulas divided differences;Newton interpolation; 417 cacm 807 0 14 12 December 1971 d1 A60 S-A. Gustafson; Rapid Computation of Weights of Interpolatory Quadrature Rules divided differences;numerical integration;numerical integration coefficients; +quadrature;quadrature coefficients; 418 cacm 47 48 15 1 January 1972 d1 F B. Einarsson; Calculation of {Fourier} Integrals extrapolation;Filon integration;Filon quadrature;Fourier coefficients; +Fourier integral;Fourier series;numerical integration;quadrature; +Richardson extrapolation;spline approximation;spline quadrature; R,cacm,469,15,6,June,1972,B. Einarsson; +R,cacm,324,17,6,June,1974,R. Piessens; 419 cacm 97 99 15 2 February 1972 c2 F M. A. Jenkins; J. F. Traub; Zeros of a Complex Polynomial polynomial zeros;roots;roots of a polynomial;zeros of a polynomial; R,cacm,157,17,3,March,1974,D. H. Withers; 420 cacm 100 103 15 2 February 1972 j6 F H. Williamson; Hidden-Line Plotting Program hidden-line plot;plot;surface plot; R,cacm,448,16,7,July,1973,I. D. G. MacLeod and A. M. Collins; +R,cacm,578--579,16,9,September,1973,H. Williamson; +R,cacm,324,17,6,June,1974,B. Graither; +R,cacm,324--325,17,6,June,1974,T. M. R. Ellis; +R,cacm,706,17,12,December,1974,T. M. R. Ellis; 421 cacm 271 272 15 4 April 1972 s14 F H. Kuki; Complex Gamma Function with Error Control complex gamma function;complex loggamma function;gamma function; +loggamma function; 422 cacm 273 274 15 4 April 1972 h F V. K. M. Whitney; Minimal Spanning Tree graph;maximal spanning tree;minimal spanning tree;spanning tree;tree; R,cacm,448,16,7,July,1973,B. W. Kerninghan; 423 cacm 274 0 15 4 April 1972 f4 F C. B. Moler; Linear Equation Solver Gaussian elimination;linear system;simultaneous linear equations; +triangular matrix;triangularization; 424 cacm 353 355 15 5 May 1972 d1 F W. M. Gentleman; {Clenshaw}-{Curtis} Quadrature Chebyshev series;Clenshaw-Curtis integration;Clenshaw-Curtis quadrature; +cosine transform;fast Fourier transform;numerical integration;quadrature; R,cacm,490,16,8,August,1973,A. J. Good; +R,toms,240,5,2,June,1979,K. O. Geddes; 425 cacm 355 357 15 5 May 1972 g5 F R. L. Hurst; R. E. Knop; Generation of Random Correlated Normal Variables Gaussian density;Gaussian distribution;Monte Carlo;normal density; +normal distribution;pseudo-random number;pseudo-random number generator; +random number;random number generator; R,cacm,325,17,6,June,1974,R. L. Page; 426 cacm 357 358 15 5 May 1972 m1 A60 C. Bron; Merge Sort Algorithm merge;sorting; R,cacm,706,17,12,December,1974,C. Bron; +R,toms,290--299,2,3,September,1976,R. Loeser; 427 cacm 358 360 15 5 May 1972 d1 F P. Linz; {Fourier} Cosine Integral adaptive integration;adaptive quadrature;Filon integration;Filon quadrature; +Fourier coefficients;Fourier integral;numerical integration;quadrature; 428 cacm 360 362 15 5 May 1972 z A60 J. M. Yohe; {Hu}-{Tucker} Minimum Redundancy Alphabetic Coding Method coding theory;Hu-Tucker method;information theory;minimum redundancy coding; R,cacm,490,16,8,August,1973,J. G. Byrne; 429 cacm 776 777 15 8 August 1972 c2 F W. Squire; Localization of the Roots of a Polynomial polynomial zeros;Routh-Hurwitz criterion; R,cacm,490,16,8,August,1973,E. J. Williams; +R,cacm,579,16,9,September,1973,H. B. Driessen and E. W. LeM. Hunt; 430 cacm 777 778 15 8 August 1972 h A60 P. W. {Purdom Jr.}; E. F. Moore; Immediate Predominators in a Directed Graph articulation;connectivity;directed graph;graph theory;immediate predominator; +optimizing compiler;predominator;program optimization;shortest path; 431 cacm 818 820 15 9 September 1972 h F A. Ravindran; A Computer Routine for Quadratic and Linear Programming Problems complementary problem;Lemke's algorithm;linear programming; +quadratic programming;simplex method; R,cacm,157,17,3,March,1974,A. Ravindran; +R,cacm,590,17,10,October,1974,L. G. Proll; 432 cacm 820 826 15 9 September 1972 f4 F R. H. Bartels; G. W. Stewart; Solution of the Matrix Equation ${\bf {A}}x + x{\bf {B}} = {\bf {C}}$ linear system;qr-algorithm;schur reduction;simultaneous linear equations; 433 cacm 914 918 15 10 October 1972 e2 F H. Akima; Interpolation and Smooth Curve Fitting Based on Local Procedures curve approximation;curve fitting;interpolation; +piecewise polynomial approximation;polynomial;polynomial approximation; +smooth curve fitting; R,toms,208,2,2,June,1976,M. R. Anderson; 434 cacm 991 992 15 11 November 1972 g2 F D. L. March; Exact Probabilities for ${R \times C}$ Contingency Tables contingency table;test of significance; R,cacm,326,17,6,June,1974,D. M. Boulton; +R,cacm,117--118,18,2,February,1975,T. W. Hancock; +R,toms,108,2,1,March,1976,D. M. Boulton; 435 cacm 993 995 15 11 November 1972 s14 F W. Fullerton; Modified Incomplete Gamma Function chi-square distribution function;incomplete gamma function; +modified incomplete gamma function;Poisson distribution; R,toms,296--304,4,3,September,1978,A. Y. Schoene; 436 cacm 1070 0 15 12 December 1972 d1 F W. R. Boland; Product Type Trapezoidal Integration numerical integration;product type quadrature;trapezoid rule; +trapezoidal integration; 437 cacm 1070 1071 15 12 December 1972 d1 F W. R. Boland; Product Type {Simpson}'s Integration numerical integration;product type quadrature;Simpson's rule; 438 cacm 1071 0 15 6 June 1972 d1 F E. N. Houstis; W. F. Mitchell; J. R. Rice; Product Type Two-point {Gauss}-{Legendre}-{Simpson}'s Integration Gaussian integration;Gaussian quadrature;numerical integration; +product type quadrature;Simpson's rule; 439 cacm 1072 0 15 12 December 1972 d1 F W. R. Boland; Product Type Three-point {Gauss}-{Le}{\-}gendre-{Simp}{\-}son's Integration Gaussian integration;Gaussian quadrature;numerical integration; +product type quadrature;Simpson's rule; 440 cacm 49 50 16 1 January 1973 d1 A60 L. J. Gallaher; A Multidimensional {Monte} {Carlo} Quadrature with Adaptive Stratified Sampling adaptive integration;adaptive quadrature;Monte Carlo quadrature; +multiple integration;numerical integration;sequential stratification; +stratified sampling; 441 cacm 51 0 16 1 January 1973 g5 F R. E. Knop; Random Deviates from the Dipole Distribution Cauchy distribution;dipole distribution;Monte Carlo;probability density; +probability distribution;pseudo-random number;pseudo-random number generator; +random number;random number generator; 442 cacm 51 52 16 1 January 1973 s14 A60 G. W. Hill; A. W. Davis; Normal Deviate normal distribution inverse;probit transform; 443 cacm 123 124 16 2 February 1973 c5 F F. N. Fritsch; R. E. Shafer; W. P. Gowley; Solution of the Transcendental Equation $w e^w = x$ solution of transcendental equation; R,cacm,225,17,4,April,1974,B. Einarsson; 444 cacm 183 185 16 3 March 1973 z PLI R. A. Wagner; An Algorithm for Extracting Phrases in a Space-Optimal Fashion information retrieval;text compression; 445 cacm 185 186 16 3 March 1973 z A60 S-K. Chang; Binary Pattern Reconstruction from Projections data compression;image reconstruction;pattern reconstruction; +picture processing; R,cacm,186,16,3,March,1973,J. Lau; 446 cacm 254 256 16 4 April 1973 c1 F R. Broucke; Ten Subroutines for the Manipulation of {Chebyshev} Series approximation;Chebyshev series;curve fitting;differentiation;integration; R,cacm,276,18,5,May,1975,R. Piessens and I. Mertens; 447 cacm 372 378 16 6 June 1973 h A60 J. Hopcroft; R. Tarjan; Efficient Algorithms for Graph Manipulation graph;graph manipulation; 448 cacm 379 0 16 6 June 1973 a1 F T. Beyer; D. F. Swinehart; Number of Multiply-Restricted Partitions obsolete;partition generation; 449 cacm 445 447 16 7 July 1973 h F F. Fiala; Solution of Linear Programming Problems in 0-1 Variables linear programming;zero-one variable; 450 cacm 482 483 16 8 August 1973 e4 F M. MacHura; A. Mulawa; {Rosenbrock} Function Minimization direct search;function minimization;Rosenbrock's method; R,cacm,470,17,8,August,1974,A. Bulthell; +R,cacm,590--591,17,10,October,1974,J. Klemes and J. Klemsa; +R,toms,300--301,2,3,September,1976,A. M. Davies; 451 cacm 483 485 16 8 August 1973 g1 F R. B. Goldstein; Chi-Square Quantiles asymptotic approximation;chi-square deviate;chi-square statistic; +normal deviate; C,cacm,116,18,2,February,1975,W. Knight; 452 cacm 485 0 16 8 August 1973 g6 F C. N. Liu; D. T. Tang; Enumerating Combinations of $m$ Out of $n$ Objects combinations;permutations; 453 cacm 486 487 16 8 August 1973 d1 F R. Diessens; {Gaussian} Quadrature Formulas for {Bromwich}'s Integral Bromwich's integral;complex integration;Gaussian integration; +Gaussian quadrature;numerical integration; +numerical inversion of the Laplace transform;quadrature; 454 cacm 487 489 16 8 August 1973 e4 F J. A. Richardson; J. L. Kuester; The Complex Method for Constrained Optimization Box's algorithm;constrained optimization;optimization;sequential search; R,cacm,471,17,8,August,1974,K. D. Shere; 455 cacm 571 572 16 9 September 1973 z A60 D. B. Hunter; J. M. Williams; Analysis of Skew Representations of the Symmetric Group binary model;lattice permutation;outer product;partition;skew representation; +symmetric group;Young diagram; 456 cacm 572 574 16 9 September 1973 h F Z. Fence; Routing Problem Hamiltonian circuit;routing problem;shortest path;traveling salesman problem; R,cacm,706,17,12,December,1974,G. Tesch and Z. Fencl; 457 cacm 575 577 16 9 September 1973 h A60 C. Bron; J. Kerbosch; Finding All Cliques of an Undirected Graph backtracking algorithm;branch and bound technique;cliques;clusters; +maximal complete subgraphs; 458 cacm 629 631 16 10 October 1973 e2 F P. D. Robers; S. S. Robers; Discrete Linear $L_1$ Approximation by Interval Linear Programming approximation;discrete approximation;interval linear programming; +linear programming; 459 cacm 632 633 16 10 October 1973 h A60 M. M. Syslo; The Elementary Circuits of a Graph circuit search algorithm;graph;Pato search algorithm;searching; R,cacm,119,18,2,February,1975,M. M. Syslo; 460 cacm 633 635 16 10 October 1973 d3 F P. E. Saylor; . D. Sebastian; Calculation of Optimum Parameters for Alternating Direction Implicit Procedures adi;alternating-direction-implicit;elliptic difference equations; +optimum parameters;partial differential equations; 461 cacm 635 637 16 10 October 1973 d2 F F. J. Burkowski; W. D. Hoskins; Cubic Spline Solutions to a Class of Functional Differential Equations boundary value problem;ordinary differential equations;spline approximation; 462 cacm 638 0 16 10 October 1973 s15 F T. G. Donnelly; Bivariate Normal Distribution bivariate;frequency distribution;normal Gaussian; 463 cacm 639 640 16 10 October 1973 j6 F C. R. Lewart; Algorithms {SCALE}1, {SCALE}2, and {SCALE}3 for Determination of Scales on + Computer Generated Plots plot;scaling for plotting; 464 cacm 689 0 16 11 November 1973 f2 A60 C. H. Reinsch; Eigenvalues of a Real Symmetric Tridiagonal Matrix eigenvalues;qr-algorithm;symmetric matrix;tridiagonal matrix; 465 cacm 690 0 16 11 November 1973 s14 A60 G. W. Hill; {Student}'s $t$ Frequency Student's t-distribution;t-test; 466 cacm 690 691 16 11 November 1973 g6 PLI G. Ehrlich; Four Combinatorial Algorithms combinations;permutations; 467 cacm 692 694 16 11 November 1973 f1 F N. Brenner; Matrix Transposition in Place matrix transposition;permutations;primitive roots;rectangular matrix; R,toms,520,5,4,December,1979,B. L. Leathers; 468 cacm 694 699 16 11 November 1973 d1 F T. N. L. Patterson; Algorithm for Automatic Numerical Integration Over a Finite Interval automatic integration;automatic quadrature;Gaussian integration; +Gaussian quadrature;numerical integration;quadrature; 469 cacm 699 0 16 11 November 1973 a1 A60 C. Lam; J. McKay; Arithmetic Over a Finite Field obsolete;general arithmetic;field computations; 470 cacm 760 761 16 12 December 1973 f4 F M. Kubicek; Linear Systems with Almost Tridiagonal Matrix almost tridiagonal matrix;linear system;simultaneous linear equations; +sparse matrix; 471 cacm 761 763 16 12 December 1973 s13 A60 W. Gautschi; Exponential Integrals continued fraction;exponential integral;recurrence relation; +recursive computation; 472 cacm 763 768 16 12 December 1973 e1 A60 J. G. Herriot; C. H. Reinsch; Procedures for Natural Spline Interpolation approximation;cubic natural spline;interpolation;natural spline; +spline approximation; 473 cacm 25 0 17 1 January 1974 c6 F R. Piessens; Computation of {Legendre} Series Coefficients Chebyshev series;function approximation;Legendre series; 474 cacm 26 31 17 1 January 1974 e2 F H. Akima; Bivariate Interpolation and Smooth Surface Fitting Based on Local Procedures bivariate interpolation;interpolation;smooth surface fitting; +surface approximation;surface fitting; R,toms,241,5,2,June,1979,M. R. Anderson; 475 cacm 152 155 17 3 March 1974 j6 F T. Wright; Visible Surface Plotting Program computer graphics;contour surface;hidden line problem;plot; R,cacm,202,18,4,April,1975,L. W. Frederick; +R,cacm,276--277,18,5,May,1975,R. G. Mashburn; +R,cacm,277,18,5,May,1975,C. J. Doran; +C,toms,381--382,1,4,December,1975,G. E. Bromage; +R,toms,109--110,2,1,March,1976,L. D. Duta; +R,toms,521--523,5,4,December,1979, +A. C. M. van Swieten and J. Th. M. de Hosson; 476 cacm 220 223 17 4 April 1974 e2 F A. K. Cline; Six Subprograms for Curve Fitting Using Splines Under Tension contouring;curve approximation;curve fitting;interpolation; +piecewise polynomial approximation; 477 cacm 224 225 17 4 April 1974 g7 A60 G. Ehrlich; Generator of Set-Partitions to Exactly ${R}$ Subsets partition;permutations;subset generation; 478 cacm 319 320 17 6 June 1974 f4 F I. Barrodale; F. D. K. Roberts; Solution of an Overdetermined System of Equations in the ${L_1}$ Norm linear programming;l1 approximation;l1 norm;over-determined linear system; +simplex method; R,cacm,277,18,5,May,1975,F. N. Fritsch and A. C. Hindmarsh; 479 cacm 321 323 17 6 June 1974 z F R. L. Page; A Minimal Spanning Tree Clustering Method clustering;feature selection;minimal spanning tree;pattern recognition; +spanning tree;tree; R,cacm,119,18,2,February,1975,H. S. Magnuski; +R,toms,110--111,2,1,March,1976,G. M. White and S. Goudreau and J. L. Legros; 480 cacm 463 467 17 8 August 1974 e1 A60 T. Lyche; L. L. Schumaker; Procedures for Computing Smoothing and Interpolating Natural Splines approximation;interpolation;natural spline;spline smoothing; 481 cacm 467 469 17 8 August 1974 h F K. C. Crandall; Arrow to Precedence Network Transformation critical path;network;precedence networks; 482 cacm 470 0 17 8 August 1974 g7 A60 J. McKay; E. Regener; Transitivity Sets orbit;sets;transitivity; 483 cacm 520 523 17 9 September 1974 j6 F S. L. Watkins; Masked Three-Dimensional Plot Program with Rotations plot;surface plot;surface rotation;three-dimensional plot; R,toms,285,1,3,September,1975,R. Feinstein; 484 cacm 524 526 17 9 September 1974 s17 F K. H. Burrell; Evaluation of the Modified {Bessel} Functions $K_0(z)$ and $K_1(z)$ for + Complex Arguments Bessel function;Hankel function;modified Bessel function; 485 cacm 526 530 17 9 September 1974 e2 F H. D. Eidson; L. L. Schumaker; Computation of $g$-Splines via a Factorization Method approximation;curve approximation;curve fitting; +piecewise polynomial approximation;spline approximation; 486 cacm 587 589 17 10 October 1974 d5 A60 F. Veillon; Numerical Inversion of {Laplace} Transform Laplace transform inversion; R,toms,395--396,2,4,December,1976,H. Koppelaar and P. Molenaar; +R,toms,111,3,1,March,1977,F. Veillon; +R,toms,354,10,3,September,1984,R. Piessens; 487 cacm 703 704 17 12 December 1974 s14 F J. Pomeranz; Exact Cumulative Distribution of the {Kolmogorov}-{Smirnov} Statistic for + Small Samples goodness-of-fit testing;k-s statistic;k-s test;Kolmogorov-Smirnov test; R,toms,111,2,1,March,1976,J. Pomeranz; +R,toms,285--294,3,3,September,1977,R. Kallman; 488 cacm 704 706 17 12 December 1974 g5 F R. P. Brent; A {Gaussian} Pseudo-Random Number Generator Gaussian distribution;normal distribution;pseudo-random number; +pseudo-random number generator;random number;random number generator; 489 cacm 173 0 18 3 March 1975 m1 A60 R. W. Floyd; R. L. Rivest; The Algorithm {SELECT} -- for Finding the $i{\rm th}$ Smallest of $n$ Elements medians;quantile;selection; R,toms,301--304,2,3,September,1976,T. Brown; 490 cacm 200 202 18 4 April 1975 s22 F E. S. Grinsberg; D. Zaborowski; The Dilogarithm Function of a Real Argument dilogarithm; R,toms,112,2,1,March,1976,R. Morris; 491 cacm 275 276 18 5 May 1975 h PLI N. E. Gibbs; Basic Cycle Generation basic cycle;fundamental cycle;graph;spanning tree;vertex adjacency matrix; 492 cacm 310 0 18 6 June 1975 h PLI N. E. Gibbs; Generation of All the Cycles of a Graph from a Set of Basic Cycles basic cycle;cycle;graph; 493 toms 178 189 1 2 June 1975 c2 F F1a1 M. A. Jenkins; Zeros of a Real Polynomial polynomial zeros; 494 toms 261 263 1 3 September 1975 d3 F I2a1a R. F. Sincovec; N. K. Madsen; {PDEONE} Solution of Systems of Partial Differential Equations partial differential equations;method of lines;ordinary differential equations; 495 toms 264 270 1 3 September 1975 f4 F D9a2 I. Barrodale; C. Phillips; Solution of an Overdetermined System of Linear Equations in the {Chebyshev} + Norm Chebyshev solution;linear system;linear programming;simplex method; 496 toms 271 281 1 3 September 1975 f2 F D4b4 L. Kaufman; The {LZ} Algorithm to Solve the Generalized Eigenvalue Problem for Complex + Matrices eigenvalues;generalized eigenvalue problem; R,toms,396,2,4,December,1976,L. C. Kaufman; 497 toms 369 371 1 4 December 1975 d2 F I1a1a K. W. Neves; Automatic Integration of Functional Differential Equations functional differential equations;numerical integration; +one-step and multistep methods; 498 toms 372 379 1 4 December 1975 s17 F C10d P. J. Prince; Airy Functions using {Chebyshev} Series Approximations Airy function;Chebyshev series approximation;Chebyshev coefficients; +asymptotic expansion;Taylor expansion; R,toms,404--405,7,3,September,1981,M. Razaz and J. L. Schonfelder; 499 toms 82 86 2 1 March 1976 z F I2b4 W. Kinsner; E. D. Torre; An Efficient Scanning Technique pattern recognition;partial differential equations;finite differences; +Laplace's equation; 500 toms 87 94 2 1 March 1976 e4 F G1b1b D. F. Shanno; K. H. Phua; Minimization of Unconstrained Multivariate Functions minimization;optimization; R,toms,112,3,1,March,1977,C. Dunham; +R,toms,618--622,6,4,December,1980,D. F. Shanno and P. H. Phua; 501 toms 95 97 2 1 March 1976 e2 F K2 J. C. Simpson; {FORTRAN} Translation of Algorithm 409 Discrete {Chebyshev} Curve Fit approximation;polynomial approximation;exchange algorithm; +Chebyshev approximation;polynomial approximation; R,toms,95,4,1,March,1978,F. Futrell; 502 toms 98 107 2 1 March 1976 c5 F F2 M. Kub{\'{\i}}\v{c}ek; Dependence of Solution of Nonlinear Systems on a Parameter nonlinear equations;differentiation with respect to a parameter; +one-parameter embedding;dependence on parameter; 503 toms 196 199 2 2 June 1976 d5 F I3 K. Atkinson; An Automatic Program for {Fredholm} Integral Equations for the Second Kind linear integral equations;Nystrom method; 504 toms 200 203 2 2 June 1976 d2 F I1a1a L. F. Shampine; H. A. Watts; {GERK}: Global Error Estimation for Ordinary Differential Equations ordinary differential equations;initial value problems;global error estimation; +Runge-Kutta-Fehlberg method; 505 toms 204 206 2 2 June 1976 s20 F N6a2a W. Janko; A List Insertion Sort for Keys with Arbitrary Key Distribution sorting;searching;linked lists;data structure;list operation; 506 toms 275 280 2 3 September 1976 f2 F D4c2b G. W. Stewart; {HQR}3 and {EXCHNG}: {FORTRAN} Subroutines for Calculating and Ordering the + Eigenvalues of a Real Upper {Hessenberg} Matrix eigenvalues;qr-algorithm; R,toms,219--220,8,2,June,1982,D. S. Flamm and R. A. Walker; 507 toms 281 289 2 3 September 1976 e1 A60 E1a J. G. Herriot; C. H. Reinsch; Procedures for Quintic Natural Spline Interpolation approximation;interpolation;spline approximation;quintic natural spline; R,toms,334,8,3,September,1982,R. J. Hanson; 508 toms 375 377 2 4 December 1976 f1 F D2e H. L. {Crane Jr.}; N. F. Gibbs; W. G. {Poole Jr.}; P. K. Stockmeyer; Matrix Bandwidth and Profile Reduction bandwidth reduction;profile reduction;sparse matrix; R,toms,221,8,2,June,1982,J. G. Lewis; 509 toms 378 387 2 4 December 1976 f1 F D2e N. E. Gibbs; A Hybrid Profile Reduction Algorithm bandwidth reduction;King algorithm;profile reduction;sparse matrix; +approximation; R,toms,221,8,2,June,1982,J. G. Lewis; 510 toms 388 391 2 4 December 1976 e2 F K4 D. G. Wilson; Piecewise Linear Approximations to Tabulated Data piecewise linear function; 511 toms 93 95 3 1 March 1977 s18 NSF C10a3 D. E. Amos; S. L. Daniel; M. K. Weston; {CDC} 6600 Subroutines {IBESS} and {JBESS} for {Bessel} Functions + ${I}_{\nu}(x)$, ${J}_{\nu}(x)$, $\nu \ge O$ $x \ge O$ Bessel function of the first kind;modified function;airy function; +uniform asymptotic expansion; R,toms,411,4,4,December,1978,D. E. Amos; 512 toms 96 103 3 1 March 1977 f4 F D2b2 A. Benson; D. J. Evans; A Normalized Algorithm for the Solution of Positive Definite Symmetric + Quindiagonal Systems of Linear Equations linear function;normalized solution;periodic quindiagonal; +symmetric positive definite; 513 toms 104 110 3 1 March 1977 f1 F D1b3 E. G. Cate; D. W. Twigg; Analysis of In-Situ Transposition transposition in place;matrix transposition;permutation; R,toms,520,5,4,December,1979,B. L. Leathers; 514 toms 175 178 3 2 June 1977 e2 A60 E1a T. M. R. Ellis; D. H. McLain; A New Method of Cubic Curve Fitting Using Local Data interpolation;cubic splines;spline approximation; 515 toms 180 182 3 2 June 1977 g6 F B B. P. Buckles; M. Lybanon; Generation of a Vector from the Lexicographical Index Combinations; R,toms,15:2,33,2,June,2007,D. F. Crouse; 516 toms 183 185 3 2 June 1977 f2 F L4b1b J. W. McKean; T. A. {Ryan Jr.}; An Algorithm for Obtaining Confidence Intervals and Point Estimates Based on + Ranks in the Two-Sample Location Problem confidence interval;Illinois method;point estimate;regula falsi; +Wilcoxon-Mann-Whitney rank test; 517 toms 186 203 3 2 June 1977 f2 F D4c2b S. P. Chan; R. Feldman; B. N. Parlett; A Program for Computing the Conditions Numbers of Matrix Eigenvalues Without + Computer Eigenvector eigenvalues;condition number; 518 toms 279 284 3 3 September 1977 s14 F C10b1 G. W. Hill; Incomplete {Bessel} Function ${I}_0$: The von {Mises} Distribution incomplete Bessel function;von Mises distribution; 519 toms 285 294 3 3 September 1977 s14 F L5a1u R. Kallman; Three Algorithms for Computing {Kolmogorov}-{Smirnov} Probabilities with + Arbitrary Boundaries and Certification of Algorithm 487 Kolmogorov-Smirnov probabilities; 520 toms 295 300 3 3 September 1977 h F G2c5 J. Weglarz; J. Blazewicz; W. Cellary; R. Slowinski; An Automatic Revised Simplex Method for Constrained Resource Network Scheduling resource allocation;linear programming; 521 toms 301 302 3 3 September 1977 s15 F C8a W. Gautschi; Repeated Integrals of the Coerror Function integral of the coerror function;Miller's recurrence algorithm; 522 toms 404 410 3 4 December 1977 f4 F D2a1 S. Cabay; T. P. L. Lam; {ESOLVE:} Congruence Techniques for the Exact Solution of Integer Systems of + Linear Equations symbolic and algebraic manipulation;linear system;congruence techniques; 523 toms 411 412 3 4 December 1977 z F P W. F. Eddy; {CONVEX:} A New Convex Hull Algorithm for Planar Sets partitioning;sorting; 524 toms 71 81 4 1 March 1978 a1 F A3c R. P. Brent; {MP:} A {FORTRAN} Multiple-Precision Arithmetic Package multiple precision;extended precision;floating arithmetic;elementary function; +Euler's constant;gamma function;Bessel function;exponential integral; +logarithmic integral;Bernoulli numbers;zeta function; R,toms,518--519,5,4,December,1979,R. P. Brent; 525 toms 82 94 4 1 March 1978 e2 F K1a1a1 J. R. Rice; {ADAPT:} Adaptive Smooth Curve Fitting spline approximation;adaptive curve fitting;Hermite interpolation; 526 toms 160 164 4 2 June 1978 e1 F E2b H. Akima; Bivariate Interpolation and Smooth Surface Fitting for Irregularly + Distributed Data Points bivariate interpolation;piecewise polynomial interpolation; R,toms,242--243,5,2,June,1979,H. Akima; +R,toms,186--187,11,2,June,1985, A. Preusser; 527 toms 165 176 4 2 June 1978 d3 F I2b1a2 R. E. Bank; A {FORTRAN} Implementation of the Generalized Marching Algorithm marching algorithms;block tridiagonal matrix; +elliptic partial differential equations; 528 toms 177 188 4 2 June 1978 z F R1 P. A. Fox; A. D. Hall; N. L. Schryer; Framework for a Portable Library portability;mathematical software libraries;error handling; +storage management;memory allocation;machine dependencies; R,toms,524,5,4,December,1979,P. Fox; +R,toms,123--126,25,1,March,1999,D. M. Gay and E. Grosse; 529 toms 189 192 4 2 June 1978 f1 F D2e I. S. Duff; J. K. Reid; Permutations to Block Triangular Form symmetric permutations;block triangular form;depth first search algorithm; +sparse matrix; 530 toms 286 289 4 3 September 1978 f2 F D4a1 R. C. Ward; L. J. Gray; An Algorithm for Computing the Eigensystem of Skew-Symmetric Matrices and a + Class of Symmetric Matrices eigenvalues;eigenvectors;skew-symmetric matrix;symmetric matrix; +matrix with constant diagonal; 531 toms 290 294 4 3 September 1978 j6 F Q W. {Van Snyder}; Contour Plotting contour plotting; 532 toms 388 390 4 4 December 1978 z F A3a W. Miller; D. Spooner; Software for Roundoff Analysis automatic roundoff analysis;numerical stability;numerical linear algebra; 533 toms 391 398 4 4 December 1978 f4 F D2a4 A. H. Sherman; {NSPIV:} A {FORTRAN} Subroutine for Sparse {Gaussian} Elimination with Partial + Pivoting sparse matrix;sparse matrix;simultaneous linear equations; +partial pivoting algorithms; 534 toms 399 403 4 4 December 1978 d2 F I1a2 J. M. Teneller; T. A. Bickart; Z. Picel; {STINT}: {ST}iff (differential equations) {INT}egrator stiff differential equations;stiffly stable methods; +composite multistep methods;cyclic methods;numerical integration; +ordinary differential equations;initial value problems;multistep formulas; +numerical integration program; 535 toms 404 410 4 4 December 1978 f2 F D4b4 B. S. Garbow; The {QZ} Algorithm to Solve the Generalized Eigenvalue Problem for Complex + Matrices eigenvalues;generalized eigenvalue problem; R,toms,402,8,4,December,1982,B. S. Garbow; +R,toms,476,10,4,December,1984,B. S. Garbow; 536 toms 108 111 5 1 March 1979 z F B H. D. Knoble; An Efficient One-Way Enciphering Algorithm one-way security transformation;password;encipher;decipher; +multiprecision integer arithmetic; 537 toms 112 117 5 1 March 1979 s22 F C17 W. R. Leeb; Characteristic Values of {Mathieu}'s Differential Equations Mathieu's differential equation;wave equation;characteristic values; +eigenvalues;separation constants;Mathieu function;ordinary Mathieu function; +modified Mathieu function;elliptic cylinder function; +hyperbolic cylinder function; 538 toms 118 125 5 1 March 1979 f2 F D4b1 P. J. Nikolai; Eigenvectors and Eigenvalues of Real Generalized Symmetric Matrices by + Simultaneous Iteration eigenvalues;eigenvectors;sparse matrix;diagonal matrix;simultaneous iteration; 539 toms 324 325 5 3 September 1979 f1 F D1a C. L. Lawson; R. J. Hanson; D. R. Kincaid; F. T. Krogh; Basic Linear Algebraic Subprograms for {FORTRAN} Usage linear algebra;utilities; R,toms,403--404,8,4,December,1982,D. S. Dodson and R. G. Grimes; +R,toms,140,9,1,March,1983,D. S. Dodson; 540 toms 326 351 5 3 September 1979 d3 F I2a1a N. K. Madsen; R. F. Sincovec; {PDECOL:} General Collocation Software for Partial Differential Equations collocation methods;partial differential equations;numerical software; +method of lines; R,toms,343--344,18,3,September,1992,T. R. Hopkins; 541 toms 352 364 5 3 September 1979 d3 F I2b1a1a P. N. Swarztrauber; R. A. Sweet; Efficient {FORTRAN} Subprograms for the Solution of Separable Elliptic + Partial Differential Equations elliptic partial differential equations;software;linear systems; C,toms,365--371,5,3,September,1979,M. Steuerwalt; 542 toms 482 489 5 4 December 1979 s14 F C7e W. Gautschi; Incomplete Gamma Functions computation of incomplete gamma function;Taylor's series;continued fractions; 543 toms 490 493 5 4 December 1979 d3 F I2b1a1a E. N. Houstis; T. S. Papatheodorou; {FFT}9: Fast Solution of {Helmholtz}-Type Partial Differential Equations fast Fourier transform;fast Helmholtz solver;fast Poisson solver; 544 toms 494 499 5 4 December 1979 f4 F D9b1 R. H. Wampler; {L2A} and {L2B} Weighted Least Squares Solutions by Modified {Gram}-{Schmidt} + with Iterative Refinement covariance matrix;curve fitting;iterative refinement;least squares solution; +linear constraints;overdetermined system of equations;regression; +underdetermined system of equations; 545 toms 500 517 5 4 December 1979 c6 F J1a1 D. Fraser; An Optimized Mass Storage {FFT} multidimensional fft;fast Fourier transform;fft;mass storage fft; +mass store sorting;optimal sorting; 546 toms 88 91 6 1 March 1980 f4 F D2a2 C. de Boor; R. Weiss; {SOLVEBLOK} almost block diagonal systems;Gaussian elimination;spline approximation; +ordinary differential equations; 547 toms 92 103 6 1 March 1980 e3 F E1a C. S. Duris; {FORTRAN} Routines For Discrete Cubic Spline Interpolation and Smoothing discrete splines;discrete cubic splines;discrete natural splines;interpolation; +smoothing; 548 toms 104 111 6 1 March 1980 h F G2b G. Carpaneto; P. Toth; Solution of the Assignment Problem assignment problem;Hungarian algorithm; 549 toms 112 120 6 1 March 1980 s21 F C15 U. Eckhardt; {Weierstrass}' Elliptic Functions Weierstrass' elliptic function; 550 toms 121 130 6 1 March 1980 z F P A. M. Messner; G. Q. Taylor; Solid Polyhedron Measures polyhedron;graphics;numerical integration; 551 toms 228 230 6 2 June 1980 f4 F D9a3 N. N. Abdelmalek; A {FORTRAN} Subroutine for the ${L_1}$ Solution of Overdetermined Systems of + Linear Equations overdetermined system of linear equations; +discrete linear l(sub 1) approximation;linear programming; +duel simplex algorithm;triangular decomposition; 552 toms 231 235 6 2 June 1980 f4 F D9a3 I. Barrodale; F. D. K. Roberts; Solution of the Constrained ${L_1}$ Linear Approximation Problem constrained l(sub 1) approximation;linear programming;simplex method; 553 toms 236 239 6 2 June 1980 d3 F I1a1a J. G. Verwer; {M3RK:} An Explicit Time Integrator for Semidiscrete Parabolic Equations parabolic partial differential equations;semidiscretization; +explicit time integrator; 554 toms 240 251 6 2 June 1980 c5 F F2 J. J. Mor{\'{e}}; M. Y. Cosnard; {BRENTM:} A {FORTRAN} Subroutine for the Numerical Solution of Systems of + Nonlinear Equations nonlinear equations;numerical solution;Brent's method; 555 toms 252 259 6 2 June 1980 c5 F F2 L. T. Watson; D. Fenner; {Chow}-{Yorke} Algorithm for Fixed Points or Zeros of {$C^2$} Maps fixed point;zero;nonlinear systems;homotopy method;continuation method; +parameterized nonlinear systems;zero curve of a homotopy map; +fixed points of nonlinear systems;zeros of nonlinear systems; 556 toms 420 428 6 3 September 1980 s13 F C5 D. E. Amos; Exponential Integrals exponential integral;Miller algorithm;confluent hypergeometric function; R,toms,525,9,4,December,1983,D. E. Amos; 557 toms 429 0 6 3 September 1980 h F G2a1 J. L. Arthur; A. Ravindran; {PAGP} A Partitioning Algorithm for (Linear) Goal Programming Problems goal program;multiple objective optimization;constraint partitioning; +simplex method; 558 toms 430 431 6 3 September 1980 h F G2c5 T-Y. Cheung; A Program for the Multifacility Location Problem with Rectilinear Distance by + the Minimum-cut Approach multifacility;optimal location;rectilinear distance;minimum cut; 559 toms 432 436 6 3 September 1980 e4 F G2e1 J. T. Betts; The Stationary Point of a Quadratic Function Subject to Linear Constraints quadratic programming;orthogonal decomposition; 560 toms 437 443 6 3 September 1980 f2 F D4c5 B. K{\aa}gstr{\"{o}}m; A. Ruhe; {JNF:} An Algorithm for Numerical Computation of the {Jordan} Normal Form of a + Complex Matrix Jordan normal form;canonical form;eigenvalues;eigenvectors;principal vectors; +block diagonal form; 561 toms 444 449 6 3 September 1980 z F N4 D. A. Kahamer; {FORTRAN} Implementation of Heap Programs for Efficient Table Maintenance heap;table maintenance; 562 toms 450 455 6 3 September 1980 h F G2d1 U. Pape; Shortest Path Lengths shortest path;shortest route problem; R,toms,260,9,2,June,1983,U. Pape; 563 toms 609 614 6 4 December 1980 f4 F D9b3 R. H. Bartels; A. R. Conn; A Program for Linearly Constrained Discrete ${L_1}$ Problems numerical analysis;overdetermined linear systems;linear constraints; +discrete l(sub 1) approximation; 564 toms 615 617 6 4 December 1980 z F K3 H. L. Hoffman; D. A. Shier; A Test Problem Generator for Discrete Linear ${L_1}$ Approximation Problems l(sub 1) approximation;least absolute deviation;problem generator;test data; 565 toms 126 135 7 1 March 1981 d3 F I2a1b D. K. Melgaard; R. F. Sincovec; {PDETWO}\slash{PSETM}\slash{GEARB}: Solution for Systems of Two-Dimensional + Nonlinear Partial Differential Equations partial differential equations;method of lines;finite differences; +ordinary differential equations; 566 toms 136 140 7 1 March 1981 c5 F F3 J. J. Mor{\'{e}}; B. S. Garbow; K. E. Hillstrom; {FORTRAN} Subroutines for Testing Unconstrained Optimization Software performance testing;systems of nonlinear equations;nonlinear least squares; +unconstrained minimization;optimization software; R,toms,282--285,20,3,September,1994,V. Z. Averbukh and S. Figueroa and + T. Schlick; 567 toms 141 146 7 1 March 1981 a1 F A3d D. W. Lozier; J. M. Smith; Extended Range Arithmetic and Normalized {Legendre} Polynomials angular momentum;extended-range arithmetic;Legendre polynomials;overflow; +underflow; 568 topl 162 167 3 2 June 1981 z R Z D. R. Hanson; {PDS} -- A Portable Directory System file directory system;Unix;ratfor; 569 toms 223 229 7 2 June 1981 d2 F I1b2 U. Ascher; J. Christiansen; R. D. Russell; {COLSYS}: Collocation Software for Boundary Value {ODE}'s ordinary differential equations;boundary-value problems;collocation; +boundary spline;mesh selection;error estimates;damped Newton's method; +general-purpose code; R,toms,283--284,12,3,September,1986,J. Fr. Hake; 570 toms 230 232 7 2 June 1981 f2 F D4a7 W. J. Stewart; A. Jennings; {LOPSI}: A Simultaneous Iteration Algorithm for Real Matrices eigenvalues;eigenvectors;simultaneous iteration;real nonsymmetric matrix; +sparse matrix; 571 toms 233 238 7 2 June 1981 s14 F C10b G. W. Hill; Statistics for Von {Mises}' and {Fisher}'s Distribution of Directions: ${I_1(x) +/I_0(x)}$ ${I_{1.5}(x)/I_{.5}(x)}$ direction statistics;von Mises distribution;Fisher distribution; +modified Bessel function ratio;continued fraction;function inversion; +Newton-Raphson methods; 572 toms 239 246 7 2 June 1981 d3 F I2b1a1b D. P. O'Leary; O. Widlund; Solution of the {Helmholtz} Equation for the {Dirichlet} Problem on General + Bounded Three Dimensional Regions Helmholtz equation;capacitance matrix;fast Poisson solver;conjugate gradients; 573 toms 369 383 7 3 September 1981 e4 F K1b1a1 J. E. {Dennis Jr.}; D. M. Gay; R. E. Welsch; {NL}2{SOL} -- An Adaptive Nonlinear Least-Squares Algorithm unconstrained optimization;nonlinear least squares;nonlinear regression; +quasi-Newton methods;secant methods; R,toms,139,9,1,March,1983,D. M. Gay; 574 toms 384 386 7 3 September 1981 e1 F E1a D. F. McAllister; J. A. Roulier; Shape-Preserving Osculatory Quadratic Splines polynomial interpolation;osculation;shape preserving;convexity preserving; +monotonicity preserving;bernstein polynomial; 575 toms 387 390 7 3 September 1981 f1 F D2e S. Duff; Permutations for a Zero-Free Diagonal nonsymmetric permutations;maximum transversal;maximum assignment; +block triangular form;sparse matrix; 576 toms 391 397 7 3 September 1981 f4 F D2a1 I. Barrodale; G. F. Stuart; A {FORTRAN} Program for Solving ${\bf A}x=b$ simultaneous linear equations;Gaussian elimination;new pivoting strategy; 577 toms 398 403 7 3 September 1981 s21 F C14 B. C. Carlson; E. M. Notis; Algorithms for Incomplete Elliptic Integrals elliptic integral;logarithms;inverse circular function; +inverse hyperbolic function;r-function; 578 toms 537 541 7 4 December 1981 f4 F D2a1 J. J. Ducroz; S. M. Nugent; J. K. Reid; D. B. Taylor; Solution of Real Linear Equations in a Paged Virtual Store Gaussian elimination;paged virtual store; 579 toms 542 547 7 4 December 1981 d4 F K4 B. Fornberg; {CPSC:} Complex Power Series Coefficients numerical differentiation;Taylor series coefficients;analytic function; 580 toms 548 549 7 4 December 1981 f5 F D7c A. Buckley; {QRUP}: A Set of {FORTRAN} Routines for Updating {QR} Factorizations matrix factorization;orthogonalization; R,toms,405,8,4,December,1982,A. Buckley; 581 toms 84 88 8 1 March 1982 f1 F D6 T. F. Chan; An Improved Algorithm for Computing the Singular Value Decomposition singular value decomposition; 582 toms 190 194 8 2 June 1982 f4 F D2e J. G. Lewis; The {Gibbs}-{Poole}-{Stockmeyer} and {Gibbs}-{King} Algorithms for Reordering + Sparse Matrices matrix bandwidth;matrix profile;matrix wavefront;banded matrix; +Gibbs-Poole-Stockmeyer algorithm;Gibbs-King algorithm; 583 toms 195 209 8 2 June 1982 g2 F D9a1 C. C. Paige; M. A. Saunders; {LSQR}: Sparse Linear Equations and Least-Square Problems analysis of variance;conjugate-gradient method;least squares solution; +simultaneous linear equations;regression;sparse matrix; 584 toms 210 218 8 2 June 1982 d1 F H2b2a1 D. P. Laurie; {CUBTRI} -- Automatic Cubature Over a Triangle quadrature rule; R,toms,71,12,1,March,1986,R. S. Hanson; 585 toms 290 301 8 3 September 1982 e1 F A7 C. Brezinski; A Subroutine for the General Interpolation and Extrapolation Problems convergence acceleration;extrapolation;interpolation; +least squares approximation;Neville-Aitken scheme; 586 toms 302 322 8 3 September 1982 f4 F D2b4 D. R. Kincaid; J. R. Respess; D. M. Young; R. G. Grimes; {ITPACK} 2{C}: A {FORTRAN} Package for Solving Large Sparse Linear Systems by + Adaptive Accelerated Iterative Methods iterative methods;numerical software;sparse matrix; 587 toms 323 333 8 3 September 1982 f4 F D9b1 R. J. Hanson; K. H. Haskell; Two Algorithms for the Linearly Constrained Least Squares Problem linear least squares solution;equality constraints;inequality constraints; +nonnegativity constraints;inconsistent constraints;covariance matrix; R,toms,257--261,15,3,September,1989,V. Dadurkevicius; 588 toms 369 370 8 4 December 1982 z F C10f W. L. Anderson; Fast {Hankel} Transforms Using Related and Lagged Convolutions Hankel transforms of integer order;Bessel function of the first kind; +convolution integral;linear digital filters; 589 toms 371 375 8 4 December 1982 f2 F D2a4 J. J. Dongarra; {SICEDR}: A {FORTRAN} Subroutine for Improving the Accuracy of Computed + Matrix Eigenvalues matrix eigensystems;iterative method;eigensystem improvement; 590 toms 376 382 8 4 December 1982 f2 F D4c1b3 P. Van Dooren; {DSUBSP} AND {EXCHQZ}: {FORTRAN} Subroutines for Computing Deflating + Subspaces With Specified Spectrum generalized eigenvalue;qz algorithm; R,toms,207,10,2,June,1984, +P. Hr. Petkov and N. D. Christov and M. M. Konstantinov; 591 toms 383 401 8 4 December 1982 g2 F L7d W. J. Hemmerle; A Comprehensive Matrix-Free Algorithm for Analysis of Variance linear models;analysis of variance;unbalanced data;missing cells;estimation; +hypothesis testing;storage-efficient algorithm;iterative improvement; +balanced data operators;algebraic-model specification;rank computations; +g-inverse solution; 592 toms 98 116 9 1 March 1983 e2 F E1a P. W. Gaffney; A {FORTRAN} Subroutine for Computing the Optimal Estimate of $f(x)$ optimal estimation;optimal interpolation;perfect splines; 593 toms 117 124 9 1 March 1983 d3 F I2b1a1b W. Proskurowski; A Package for the {Helmholtz} Equation in Nonrectangular Planar Regions Helmholtz equation;capacitance matrix;fast Poisson solvers;conjugate gradients; +software package; 594 toms 125 130 9 1 March 1983 z F A3a J. L. Larson; M. F. Pasternak; J. A. Wisniewski; Software for Relative Error Analysis round-off analysis;relative errors;numerical stability; 595 toms 131 138 9 1 March 1983 h F P S. Martello; An Enumerative Algorithm for Finding {Hamiltonian} Circuits in a Directed Graph Hamiltonian circuit;depth-first search; 596 toms 236 241 9 2 June 1983 d2 F F2 W. C. Rheibolt; J. V. Burkardt; A Program for a Locally Parametrized Continuation Process equilibrium problems;underdetermined systems of equations; +solution manifolds of parameterized equations;continuation methods; +local parameterization;limit point computation; 597 toms 242 245 9 2 June 1983 s17 F C10b3 W. J. Cody; Sequence of Modified {Bessel} Functions of the First Kind Bessel function; 598 toms 246 254 9 2 June 1983 f2 F D8 G. J. Davis; An Algorithm to Compute Solvents of the Matrix Equation ${AX}^2+{BX}+ +{C}=0$ matrix equations;solvent;Newton's method;qz algorithm; 599 toms 255 257 9 2 June 1983 g5 F L6a7 J. H. Ahrens; K. D. Kohrt; U. Dieter; Sampling From Gamma and {Poisson} Distributions gamma distribution;Poisson distribution;random numbers; +acceptance-rejection method;simulation; 600 toms 258 259 9 2 June 1983 e2 F E1a J. G. Herriot; C. H. Reinsch; Translation of Algorithm 507. Procedures for Quintic Natural Spline + Interpolation approximation;interpolation;spline approximation;quintic natural spline; 601 toms 344 345 9 3 September 1983 f1 F D1b5 J. M. McNamee; A Sparse Matrix Package -- Part {II}: Special Cases sparse matrix; 602 toms 355 357 9 3 September 1983 c6 F A7 T. Fessler; W. F. Ford; D. A. Smith; {HURRY}: An Acceleration Algorithm for Scalar Sequences and Series acceleration of convergence;transformation of divergent series; +Levin's 'u' transform; 603 toms 376 380 9 3 September 1983 f4 F D2a2 J. C. Diaz; G. Fairweather; P. Keast; {COLROW} and {ARCECO}: {FORTRAN} Packages for Solving Almost Block Diagonal + Linear Systems by Modified Alternate Row and Column Elimination almost block and diagonal systems;Gaussian elimination; +alternate row and column elimination;two-point boundary-value problems; R,toms,196,14,2,June,1988,J. C. Diaz and G. Fairweather and P. Keast; 604 toms 381 383 9 3 September 1983 c1 F K2 F. W. Sauer; A {FORTRAN} Program for the Calculation of an Extremal Polynomial Remes algorithm;extremal polynomial;Richardson iteration; 605 toms 391 394 9 4 December 1983 z F S2 T. R. Hopkins; {PBASIC} -- A Verifier Program for {ANSI} Minimal Basic verifiers;standard conformance;basic programming language; 606 toms 418 426 9 4 December 1983 z F R4 P. W. Gaffney; J. W. Wooten; K. A. Kessel; W. R. McKinney; {NITPACK} -- An Interactive Tree Package expert systems;menu-driven applications;computer-aided instruction techniques; 607 toms 427 440 9 4 December 1983 z F N4 W. {Van Snyder}; R. J. Hanson; Text Exchange System: A Transportable System for Management and Exchange of + Programs and Other Text text exchange;text management;text organization;text distribution; +text maintenance; 608 toms 461 466 9 4 December 1983 h F G2b D. H. West; Approximate Solution of the Quadratic Assignment Problem assignment problem;quadratic assignment;heuristic algorithms; +operations research; 609 toms 480 493 9 4 December 1983 s13 F C10f D. E. Amos; A Portable {FORTRAN} Subroutine for the {Bickley} Functions ${Ki}_n(x)$ exponential integrals;Bickley functions;integral of Bessel function; +Bessel function; 610 toms 494 502 9 4 December 1983 s14 F C7c D. E. Amos; A Portable {FORTRAN} Subroutine for the Derivation of the Psi Function psi functions;gamma function;derivatives of the gamma function; 611 toms 503 524 9 4 December 1983 e4 F G1b1b D. M. Gay; Subroutines for Unconstrained Minimization Using a Model\slash + Trust-Region Approach trust regions;quasi-Newton;bfgs secant update;finite differences; +reverse communication; 612 toms 17 22 10 1 March 1984 d1 F H2b2a1 E. de Doncker; I. Robinson; {TRIEX}: Integration Over a {TRI}angle Using Nonlinear {EX}trapolation quadrature rule;two dimensional integration;singular integrands; +epsilon algorithm; 613 toms 108 111 10 1 March 1984 h F G2d2 R. E. Haymond; J. P. Jarvis; D. R. Shier; Minimum Spanning Tree for Moderate Integer Weights minimum spanning tree;shortest connection network; 614 toms 140 160 10 2 June 1984 d1 F H2a1a1 K. Sikorski; F. Stenger; J. Schwing; A {FORTRAN} Subroutine for Integration in ${H}_p$ Spaces quadrature rule;optimal quadrature rule;singular integrands; 615 toms 202 206 10 2 June 1984 g2 F L8c3 R. D. Armstrong; P. O. Beck; M. T. Kung; The Best Subset of Parameters in Least Absolute Value Regression regression;least absolute value; 616 toms 265 270 10 3 September 1984 g1 F L4a1b1 J. F. Monahan; Fast Computation of the {Hodges}-{Lehman} Location Estimator Hodges-Lehmann location estimator;statistical computations; 617 toms 317 324 10 3 September 1984 e4 F F2 F. Aluff-Pentini; V. Parisi; F. Zirill.; {DAFNE}: A Differential-Equations Algorithm for Nonlinear Equations nonlinear equations;ordinary differential equations; 618 toms 346 347 10 3 September 1984 f4 F F3 T. F. Coleman; B. S. Garbow; J. J. Mor\'{e}; {FORTRAN} Subroutines for Estimating sparse {Jacobian} Matrices numerical differentiation;Jacobian matrix;sparse matrix; +nonlinear systems;graph theory; 619 toms 348 353 10 3 September 1984 d5 F J3 R. Piessans; R. Huysmans; Automatic Numerical Inversion of the {Laplace} Transform Laplace transform inversion;epsilon algorithm; 620 toms 359 360 10 4 December 1984 z N Z J. R. Rice; R. J. Hanson; References and Keywords for {\it {Collected} {Algorithms} from {ACM}} data;keywords;references;Collected Algorithms from ACM; R,toms,305--307,11,3,September,1985,D. E. Hamilton; +R,toms,401--403,16,4,December,1990,T. R. Hopkins and D. R. Morse; 621 toms 378 396 10 4 December 1984 d3 F I2a1b B. P. Sommeijer; P. J. van der Houven; Software with Low Storage Requirements for Two-Dimensional Nonlinear + Parabolic Differential Equations partial differential equations;parabolic differential equations; 622 toms 410 416 10 4 December 1984 z F Z J. R. Rice; C. Ribbens; W. A. Ward; A Simple Macroprocessor macro processor;portablility; R,toms,336--340,24,3,September,1998,S. A. Levin; 623 toms 437 439 10 4 December 1984 e1 F E2b R. J. Renka; Interpolation on the Surface of a Sphere bivariate interpolation;interpolation;scattered data fitting; +spherical surface; 624 toms 440 442 10 4 December 1984 e1 F E2b R. J. Renka; Triangulation and Interpolation at Arbitrarily Distributed Points in the Plane bivariate interpolation;interpolation;scattered data fitting; 625 toms 453 462 10 4 December 1984 j6 F I2b4 J. R. Rice; A Two-Dimensional Domain processor domain processor;Laplace's equation;rectangular domains; 626 toms 473 475 10 4 December 1984 j6 F Q A. Preusser; {TRICP}: A Contour Plot Program for Triangular Meshes bivariate interpolation;contour plotting;polynomial elements; 627 toms 58 65 11 1 March 1985 d5 F I3 J. M. Bownds; L. Applebaum; A {FORTRAN} Subroutine for Solving {Volterra} Integral Equations Chebyshev approximation;initial value problems;linear integral equations; +stiff differential equations;Volterra integral equations; 628 toms 66 78 11 1 March 1985 r2 F C3b F. Winkler; B. Buchberger; An Algorithm for Constructing Canonical Bases of Polynomial Ideals algebra;Gr{\"{o}}bner bases;symbolic algebra; 629 toms 85 96 11 2 June 1985 d5 F I2b1a1b K. E. Atkinson; An Integral Equation Program for {Laplace}'s Equation in Three Dimensions Laplace's equation;linear integral equations;three dimensions; 630 toms 103 119 11 2 June 1985 e4 F G1b1a A. Buckley; A. Lenir; {BBVSCG} -- A Variable-Storage Algorithm for Function Minimization conjugate gradient method;quasi-Newton methods;optimization; +unconstrained minimization; R,toms,262--274,15,3,September,1989,A. Buckley; 631 toms 120 134 11 2 June 1985 c5 F F1b V. Norton; Finding a Bracketed Zero by {Larkin}'s Method of Rational Interpolation function zeros;Larkin's method;rational interpolation; R,toms,72,12,1,March,1986,V. Norton; 632 toms 135 140 11 2 June 1985 h F G2c3 S. Martello; P. Toth; A Program for the $0-1$ Multiple Knapsack Problem branch and bound technique;multiple objective optimization; +knapsack algorithm;zero-one variable; 633 toms 170 182 11 2 June 1985 f4 F L8f R. C. Ward; G. J. Davis; V. E. Kane; An Algorithm for Linear Dependency Analysis of Multivariate Data correlation matrix;factor analysis;linear dependence; +statistical computations; 634 toms 218 228 11 3 September 1985 e2 F K1a1b R. H. Bartels; J. J. Jezioranski; {CONSTR} and {EVAL}: Routines for Fitting Multinomials in a Least-Squares Sense least squares solution;interpolation;orthogonal polynomials; +surface approximation;surface fitting; 635 toms 242 249 11 3 September 1985 f4 F D9b2 R. L. Streit; An Algorithm for the Solution of Systems of Complex Linear Equations in the + ${L_\infty}$ Norm with Constraints on the Unknowns approximation;Chebyshev solutions;complex variable;linear constraints; +overdetermined linear systems; 636 toms 378 0 11 4 December 1985 f1 F G4f T. F. Coleman; B. S. Garbow; J. J. Mor\'{e}; {FORTRAN} Subroutines for Estimating Sparse {Hessian} Matrices graph theory;numerical differentiation;nonlinear equations;sparse matrix; 637 toms 413 415 11 4 December 1985 d3 F I2b1a3 E. N. Houstis; W. F. Mitchell; J. R. Rice; {GENCOL}: Collocation on General Domains with Bicubic {Hermite} Polynomials collocation methods;elliptic partial differential equations; 638 toms 416 418 11 4 December 1985 d3 F I2b1a3 E. N. Houstis; W. F. Mitchell; J. R. Rice; {INTCOL} and {HERMCOL}: Collocation on Rectangular Domains with Bicubic + {Hermite} Polynomials collocation methods;elliptic partial differential equations; +Hermite bicubic elements;rectangular domains; 639 toms 24 25 12 1 March 1986 d1 F H2a3a1 J. Lyness; G. Hines; To Integrate Some Infinite Oscillating Tails Euler transformation;infinite integration;periodic function; +quadrature rule; R,toms,285--300,28,3,September,2002,T. R. Hopkins; 640 toms 26 33 12 1 March 1986 f2 F G3 A. J. Lamb; Efficient Calculation of Frequency Response Matrices from State Space Models eigenvalues;frequency response;Hessenberg systems; 641 toms 149 0 12 2 June 1986 f4 F D2a1 J. Springer; Exact Solution of General Systems of Linear Equations adjoint matrix;congruence techniques;determinant;least squares equations; +linear system;matrix inversion;modulus;residue arithmetic; +simultaneous linear equations; 642 toms 150 153 12 2 June 1986 g2 F K5 M. F. Hutchinson; A Fast Procedure for Calculating Minimum Cross-Validation Cubic Smoothing + Splines banded matrix;discrete cubic splines;smoothing splines; +generalized cross validation; 643 toms 154 161 12 2 June 1986 g2 F L9b C. R. Menta; N. R. Patel; {FEXACT}: A {FORTRAN} Subroutine for {Fisher}'s Exact Test on Unordered + $r\times c$ Contingency Tables graph theory;network;spanning tree; R,toms,484--488,19,4,December,1993,D. B. Clarkson and Y. Fan and H. Joe; 644 toms 265 273 12 3 September 1986 s19 F C10a4 D. E. Amos; A Portable Package for {Bessel} Functions of a Complex Argument and + Non-Negative Order Bessel function;complex Airy function;complex Bessel function; +log gamma function; R,toms,404,16,4,December,1990,D. E. Amos; +R,toms,388--393,21,4,December,1995,D. E. Amos; +R,toms,28-3,33,4,August,2007,M. Kodama; 645 toms 274 277 12 3 September 1986 f1 F D9c J. C. Nash; R. L. C. Wang; Subroutines for Testing Programs that Compute the Generalized Inverse of a + Matrix generalized inverses;linear least squares solution;test problems; 646 toms 278 282 12 3 September 1986 f2 F D4b1 C. R. Crawford; {PDFIND}: A Routine to Find a Positive Definite Linear Combination of Two + Real Symmetric Matrices banded matrix;eigenvalues;generalized eigenvalue problem;sparse matrix; 647 toms 362 376 12 4 December 1986 d1 F H2c B. L. Fox; Implementation and Relative Efficiency of Quasirandom Sequence Generators global optimization;multiple integration;numerical integration;quadrature; +random numbers;simulation; 648 toms 28 34 13 1 March 1987 d2 F I1c W. H. Enright; J. D. Pryce; {NSDTST} and {STDTST}: Routines for Assessing the Performance of Initial + Value Solvers ordinary differential equations;stiff differential equations;testing; 649 toms 97 107 13 1 March 1987 d1 F J1a3 G. Guinta; A. Murli; A Package for Computing Trigonometric {Fourier} Coefficients Based on + {Lyness}'s Algorithm Fourier coefficients;Fourier series;function approximation; +trigonometric series; 650 toms 138 151 13 2 June 1987 b4 F C2 K. C. Johnson; Efficient Square Root Implementation on the 68000 microprocessor;square root; 651 toms 235 249 13 3 September 1987 d3 F I2b1a1a R. F. Boisvert; Algorithm {HFFT}: High-Order Fast-Direct Solution of {Helmholtz} Equation + in Three Dimensions fast Fourier transform;fast Helmholtz solver;fast Poisson solver; +finite differences;HODIE method; 652 toms 281 310 13 3 September 1987 c5 F F2 L. T. Watson; S. C. Billups; A. P. Morgan; {HOMPACK}: A Suite of Codes for Globally Convergent Homotopy Algorithms Chow-Yorke algorithm;continuation method;fixed point; +fixed points of nonlinear systems; +homotopy method;nonlinear systems;zeros of nonlinear systems; 653 toms 311 317 13 3 September 1987 f1 F D1a R. J. Hanson; F. T. Krogh; Translation of {Algorithm} 539: {PC-BLAS} Basic Linear Algebra Subprograms + for {FORTRAN} Usage with the {INTEL}8087 80287 Numeric Data Processor microprocessor;linear algebra;utilities; 654 toms 318 319 13 3 September 1987 s14 F C7e A. R. DiDonato; A. H. {Morris Jr.}; {FORTRAN} Subroutines for Computing the Incomplete Gamma Function Ratios and + their Inverse chi-square distribution function;incomplete gamma function; +inverse gamma function; 655 toms 399 415 13 4 December 1987 d1 F H2c S. Elhay; J. Kautsky; {IQPACK}: {FORTRAN} Subroutines for the Weights of Interpolatory Quadratures automatic integration;automatic quadrature;interpolatory quadrature; +quadrature;quadrature coefficients;Gaussian quadrature; +Gaussian integration;numerical integration; 656 toms 18 32 14 1 March 1988 f1 F D1 J. J. Dongarra; J. {Du Croz}; S. Hammarling; R. J. Hanson; An Extended Set of Basic Linear Algebra Subprograms: Model Implementation + and Test Programs linear algebra;utilities; 657 toms 42 44 14 1 March 1988 j6 F Q G. Sewell; Software for Plotting Contour Surfaces of a Function of Three Variables contour plotting;contour surface;surface plot;three-dimensional plot; R,toms,109,16,1,March,1990,G. Sewell; 658 toms 61 67 14 1 March 1988 d2 F I1a1b J. R. Leis; M. A. Kramer; {ODESSA}: An Ordinary Differential Equation Solver with Explicit Simultaneous + Sensitivity Analysis ordinary differential equations;initial value problems; +stiff differential equations;sensitivity analysis; 659 toms 88 100 14 1 March 1988 g5 F G2i P. Bratley; B. L. Fox; Implementing {Sobol}'s Quasirandom Sequence Generator random number generator;global optimization;integration; R,toms,49--57,29,1,March,2003,S. Joe and F. Y. Kuo; 660 toms 149 150 14 2 June 1988 e2 F E2b R. J. Renka; {QSHEP2D}: Quadratic {Shepard} Method for Bivariate Interpolation of + Scattered Data bivariate interpolation;scattered data fitting;smooth surface fitting; +searching; 661 toms 151 152 14 2 June 1988 e2 F E2b R. J. Renka; {QSHEP3D}: Quadratic {Shepard} Method for Trivariate Interpolation of + Scattered Data interpolation;scattered data fitting;smooth surface fitting;searching; 662 toms 171 176 14 2 June 1988 d5 F J3 B. S. Garbow; G. Giunta; J. N. Lyness; A. Murli; A {FORTRAN} Software Package for the Numerical Inversion of the {Laplace} + Transform Based on {Weeks}' Method Laplace transform inversion;Laguerre polynomial;Cauchy integral; +numerical differentiation;Taylor series; R,toms,405--406,16,4,December,1990,B. S. Garbow and J. N. Lyness; 663 toms 177 195 14 2 June 1988 f1 NSF D1a M. Louter-Nool; Translation of {Algorithm} 539: Basic Linear Algebra Subprograms for + {FORTRAN} Usage in {FORTRAN} 200 for the {Cyber} 205 linear algebra;utilities; 664 toms 257 260 14 3 September 1988 f4 F D2a2 G. Schrauf; A {Gauss} Algorithm to Solve Systems with Large Banded Matrices Using Random + Access Disk Storage linear systems;Gaussian elimination;banded matrix;sparse matrix; 665 toms 303 311 14 4 December 1988 a1 F R1 W. J. Cody; {MACHAR}: A Subroutine to Dynamically Determine Machine Parameters floating arithmetic;machine dependencies;portability; 666 toms 330 336 14 4 December 1988 c5 F F2 M. N. Vrahatis; {CHABIS}: A Mathematical Software Package for Locating and Evaluating + Roots of Systems of Nonlinear Equations systems of nonlinear equations;roots;bisection method; 667 toms 366 380 14 4 December 1988 e4 F G1b1a F. Aluffi-Pentini; V. Parisi; F. Zirilli; {SIGMA}: A Stochastic-Integration Global Minimization Algorithm global optimization;minimization; 668 toms 397 398 14 4 December 1988 g5 F L6a8 V. Kachitvichyanukul; B. W. Schmeiser; {H2PEC}: Sampling from the Hypergeometric Distribution random number generator;hypergeometric distribution; +acceptance-rejection method;compositions;Monte Carlo;simulation; 669 toms 29 30 15 1 March 1989 d2 F I1a1a J. R. Cash; {BRK45}: A {FORTRAN} Subroutine for Solving First-Order Systems of + Nonstiff Initial Value Problems for Ordinary Differential Equations initial value problems;ordinary differential equations; +Runge-Kutta method; R,toms,424--426,17,3,September,1991,D. J. Higham; 670 toms 31 40 15 1 March 1989 d2 F I1a1a R. W. Brankin; I. Gladwell; J. R. Dormand; P. J. Prince; W. L. Seward; A {Runge}-{Kutta}-{Nystr\"om} Code initial value problems;ordinary differential equations; +Runge-Kutta method;Runge-Kutta-Nystrom method; 671 toms 79 89 15 1 March 1989 j6 F Q A. Preusser; {FARB-E-2D}: Fill Area with Bicubics on Rectangles -- A Contour Plot Program bivariate interpolation;contour plotting;Hermite bicubic elements; +surface plot; 672 toms 137 143 15 2 June 1989 d1 F H2c T. N. L. Patterson; Generation of Interpolatory Quadrature Rules of the Highest Degree of + Precision with Preassigned Nodes for General Weight Functions automatic integration;automatic quadrature;Gaussian integration;integration; +interpolatory quadrature;optimal quadrature rule;quadrature; 673 toms 158 167 15 2 June 1989 m2 PAS N J. S. Vitter; Dynamic {Huffman} Coding Huffman codes;information theory;network; 674 toms 381 396 14 4 December 1988 f1 F D1b2 N. J. Higham; {FORTRAN} Codes for Estimating the One-Norm of a Real or Complex Matrix, + with Applications to Condition Estimation condition number;linear algebra;L1 norm;matrix condition; 675 toms 243 256 15 3 September 1989 g2 F L10a2e M. Vanbegin; P. Van Dooren; M. Verhaegen; {FORTRAN} Subroutines for Computing the Square Root Covariance Filter and + Square Root Information Filter in Dense or {Hessenberg} Forms covariance matrix;Kalman filter;linear digital filters; +statistical computations; 676 toms 348 364 15 4 December 1989 g2 F K1b1a2 P. T. Boggs; J. R. Donaldson; R. H. Byrd; R. B. Schnabel; {ODRPACK}: Software for Weighted Orthogonal Distance Regression estimation;nonlinear regression;orthogonal distance regression; +overdetermined systems of equations;regression; 677 toms 365 374 15 4 December 1989 e2 F E2b G. Casciola; ${C}^1$ Surface Interpolation bivariate interpolation;interpolation;scattered data fitting; +smooth surface fitting;surface fitting; 678 toms 394 397 15 4 December 1989 g5 F L6a2 V. Kachitvichyanukul; B. W. Schmeiser; {BTPEC}: Sampling from the Binomial Distribution acceptance-rejection method;binomial distribution;compositions; +Monte Carlo;random number generator; 679 toms 18 28 16 1 March 1990 f1 F D1b J. J. Dongarra; J. Du Croz; S. Hammarling; I. Duff; A Set of Level 3 Basic Linear Algebra Subprograms linear algebra;utilities; 680 toms 47 0 16 1 March 1990 s15 F C8a G. P. M. Poppe; C. M. J. Wijers; Evaluation of the Complex Error Function error function for complex argument;recursive computation;Voigt function; 681 toms 152 157 16 2 June 1990 c5 F F2 R. B. Kearfott; M. Novoa III; {INTBIS}, a Portable Interval {Newton}/Bisection Package bisection method;constrained optimization;global optimization; +interval arithmetic;nonlinear equations;nonlinear systems; +Newton's method;optimization;roots; 682 toms 158 168 16 2 June 1990 d5 F J3 A. Murli; M. Rizzardi; {Talbot}'s Method for the {Laplace} Inversion Problem Laplace transform inversion;trapezoidal integration;trapezoid rule; 683 toms 178 182 16 2 June 1990 s13 F C5 D. E. Amos; A Portable {FORTRAN} Subroutine for Exponential Integrals of a Complex Argument complex exponential integral;confluent hypergeometric function; +exponential integral;Miller algorithm; 684 toms 253 257 16 3 September 1990 e2 F E2b A. Preusser; ${C}^1$- and ${C}^2$- Interpolation on Triangles with Quintic and Nonic + Bivariate Polynomials bivariate interpolation;Hermite polynomial;interpolation; +scattered data fitting;smooth surface fitting;surface fitting; 685 toms 325 351 16 4 December 1990 d3 F I2b1a1a L. Kaufman; D. D. Warner; A Program for Solving Separable Elliptic Equations elliptic partial differential equations;rectangular domains; +spline approximation; 686 toms 369 377 16 4 December 1990 f5 F D7c L. Reichel; W. B. Gragg; {FORTRAN} Subroutines for Updating the {QR} Decomposition matrix factorization;orthogonalization;QR-algorithm; 687 toms 1 10 17 1 March 1991 d2 F I1c C. A. Addison; W. H. Enright; P. W. Gaffney; I. Gladwell; P. M. Hanson; A Decision Tree for the Numerical Solution of Initial Value Ordinary + Differential Equations expert systems;initial value problems;menu-driven applications; +ordinary differential equations; 688 toms 153 166 17 2 June 1991 d3 F I2a1a P. Keast; P. H. Muir; {EPDCOL}: A More Efficient {PDECOL} Code collocation;method of lines;partial differential equations; 689 toms 167 177 17 2 June 1991 d5 F I3 J. G. Blom; H. Brunner; Discretized Collocation and Iterated Collocation for Nonlinear + {Volterra} Integral Equations of the Second Kind collocation;integral equations;Volterra integral equations; 690 toms 178 206 17 2 June 1991 d3 F I2 M. Berzins; P. M. Dew; {Chebyshev} Polynomial Software for Elliptic-Parabolic Systems of {PDE}s Chebyshev polynomial;elliptic partial differential equations;method of lines; +parabolic differential equations;partial differential equations; 691 toms 218 232 17 2 June 1991 d1 F H2a P. Favati; G. Lotti; F. Romani; Improving {QUADPACK} Automatic Integration Routines integration;interpolatory quadrature;quadrature; 692 toms 264 272 17 2 June 1991 f1 F D1 D. S. Dodson; R. G. Grimes; J. G. Lewis; Model Implementation and Test Package for the Sparse Basic Linear + Algebra Subprograms linear algebra;linear systems;matrix operation;sparse matrix;utilities; 693 toms 273 283 17 2 June 1991 a1 F A3 D. M. Smith; A {FORTRAN} Package for Floating-point Multiple-precision Arithmetic elementary function;extended precision;floating arithmetic; 694 toms 289 305 17 3 September 1991 f1 M D1b1 N. J. Higham; A Collection of Test Matrices in {MATLAB} linear algebra;matrix operation;test matrix;test problems; 695 toms 306 312 17 3 September 1991 f1 F D2b1 E. Eskow; R. B. Schnabel; Software for a New Modified {Cholesky} Factorization linear algebra;matrix decomposition;matrix factorization; +triangular decomposition;triangular factorization; 696 toms 335 340 17 3 September 1991 f2 F D4a G. Schrauf; An Inverse {Rayleigh} Iteration for Complex Band Matrices band matrix;banded matrix;eigenvalues;eigenvectors;inverse iteration; +matrix eigensystems; 697 toms 367 0 17 3 September 1991 e2 F E1a H. Akima; Univariate Interpolation that Has the Accuracy of a Third-Degree + Polynomial cubic splines;curve fitting;interpolation;piecewise polynomial interpolation; 698 toms 452 456 17 4 December 1991 d1 F H2b1a1 J. Berntsen; T. O. Espelid; A. Genz; {DCUHRE}: An Adaptive Multidimensional Integration Routine for a Vector + of Integrals adaptive integration;adaptive quadrature;integration;multiple integration; +quadrature; 699 toms 457 461 17 4 December 1991 d1 F H2a1a1 F. T. Krogh; W. {Van Snyder}; A New Representation of {Patterson}'s Quadrature Formulae gaussian quadrature;integration;multiple quadrature;quadrature; 700 toms 500 501 17 4 December 1991 d2 F I1b3 P. B. Bailey; B. S. Garbow; H. G. Kaper; A. Zettl; A {FORTRAN} Software Package for {Sturm}-{Liouville} Problems boundary value problem;eigenvalues;ordinary differential equations; C,toms,481--490,17,4,December,1991,M. Marletta; 701 toms 519 532 17 4 December 1991 f4 F D9a P. Alfeld; D. J. Eyre; {GOLIATH} -- A Software System for the Exact Analysis of Rectangular + Rank-Deficient Sparse Rational Linear Systems linear algebra;linear dependence;linear systems;rank computations; +residue arithmetic; 702 toms 46 70 18 1 March 1992 e4 F G1b1c T. Schlick; A. Fogelson; {TNPACK} -- A Truncated {Newton} Minimization Package for Large-Scale + Problems: I. Algorithm and Usage nonlinear optimization;preconditioned conjugate gradient;sparse matrices; +truncated Newton methods; R,toms,108--122,25,1,March,1999,D. Xie and T. Schlick; 703 toms 156 158 18 2 June 1992 d2 F I1a2 J. R. Cash; S. Considine; {MEBDF}: A {FORTRAN} Subroutine for Solving First-Order Systems of Stiff + Initial Value Problems for Ordinary Differential Equations A-stability;modified extended backward differentiation formulae; +stiff initial value problems; 704 toms 205 210 18 2 June 1992 f4 F D2a F. Majaess; P. Keast; G. Fairweather; K. R. Bennett; {ABDPACK} and {ABBPACK} -- {FORTRAN} Programs for the Solution of Almost + Block Diagonal Linear Systems Arising in Spline Collocation at {G}aussian + Points with Monomial Basis Functions almost block diagonal systems;alternate column and row pivoting; +implicit Runge-Kutta methods;monomial spline basis;multiple shooting; +spline collocation at Gaussian points; 705 toms 232 238 18 2 June 1992 f1 F D8 J. D. Gardiner; M. R. Wette; A. J. Laub; J. J. Amato; C. B. Moler; A {FORTRAN}-77 Software Package for Solving the {Sylvester} Matrix + Equation ${AXB^T}+{CXD^T}={E}$ conditioning;linear systems;Sylvester equation; R,toms,372--375,28,3,September,2002,T. R. Hopkins; 706 toms 329 342 18 3 September 1992 d1 F H2b2a1 J. Berntsen; T. O. Espelid; {DCUTRI}: An Algorithm for Adaptive Cubature Over a Collection of Triangles automatic integration;cubature rules;error estimation;null rules;symmetry; +triangular regions;adaptive quadrature; R,toms,334--335,24,3,September,1998,T. O. Espelid; 707 toms 345 349 18 3 September 1992 s22 F C11 M. Nardin; W. F. Perger; A. Bhalla; {CONHYP}: A Numerical Evaluator of the Confluent Hypergeometric Function for + Complex Arguments of Large Magnitudes special functions;evaluator; 708 toms 360 373 18 3 September 1992 s14 F C7f A. R. {DiDonato}; A. H. {Morris, Jr.}; Significant Digit Computation of the Incomplete Beta Function Ratios continued fractions;f-distribution;minimax approximations; C,toms,393--397,20,3,September,1994,B. W. Brown and L. B. Levy; 709 toms 375 391 18 4 December 1992 z F G4f A. G. Buckley; Testing Algorithm Implementations algorithm testing;optimization; 710 toms 392 400 18 4 December 1992 f2 F D4a2 J. J. Dongarra; G. A. Geist; C. H. Romine; {FORTRAN} Subroutines for Computing the Eigenvalues and Eigenvectors of a + General Matrix by Reduction to General Tridiagonal Form condensed form;nonsymmetric; 711 toms 414 448 18 4 December 1992 e4 NSF G1b1b S. G. Nash; A. Sofer; {BTN}: Software for Parallel Unconstrained Optimization conjugate gradient method;nonlinear optimization;parallel computing; +truncated newton method; 712 toms 454 455 18 4 December 1992 g5 F L6a14 J. L. Leva; A Normal Random Number Generator gaussian distribution;normal distribution;pseudorandom numbers; +ratio of uniform deviates; 713 toms 456 469 18 4 December 1992 s17 F C10 R. F. Boisvert; B. V. Saunders; Portable Vectorized Software for {Bessel} Function Evaluation hyperbolic bessel function;modified bessel function;order zero and one; 714 toms 1 21 19 1 March 1993 s F C2 W. J. Cody; {CELEFUNT}: A Portable Test Package for Complex Elementary Functions performance evaluation; 715 toms 22 32 19 1 March 1993 s F C W. J. Cody; {SPECFUN}: A Portable {FORTRAN} Package of Special Function Routines and Test + Drivers bessel function;error function;exponential integrals;gamma functions; R,toms,258,22,2,June,1996,D. T. Price; 716 toms 81 94 19 1 March 1993 e2 F E1 R. J. Renka; {TSPACK}: Tension Spline Curve-Fitting Package convexity preserving;cubic spline;exponential spline;interpolation; +monotonicity preserving;parametric curve;piecewise polynomial;shape preserving; +smoothing;spline under tension;tension factor; R,toms,95--96,25,1,March,1999,F. J. Testa and R. J. Renka; 717 toms 109 130 19 1 March 1993 g2 F L8e1b D. S. Bunch; D. M. Gay; R. E. Welsch; Subroutines for Maximum Likelihood and Quasi-Likelihood Estimation of + Parameters in Nonlinear Regression Models exponential family;generalized linear models;glim;quasi-newton; +influential data;multinomial probit;probabilistic choice models; +regression diagnostics;simple bound;trust region; 718 toms 224 232 19 2 June 1993 f2 F D4 G. Miminis; M. Reid; A {FORTRAN} Subroutine to Solve the Eigenvalue Allocation Problem for + Single-Input Systems deflation;numerical efficiency;pole placement; 719 toms 288 319 19 3 September 1993 a1 F A3 D. H. Bailey; Multiprecision Translation and Execution of {FORTRAN} Programs multiprecision computation;multiprecision arithmetic; 720 toms 320 332 19 3 September 1993 d1 F H2b2a1 J. Berntsen; R. Cools; T. O. Espelid; An Algorithm for Adaptive Cubature Over a Collection of 3-Dimensional + Simplices automatic integration;cubature rules;error estimation;null rules;symmetry; +tetrahedrons; 721 toms 391 406 19 3 September 1993 d2 F C17 R. B. Shirts; {MTIEU1} and {MTIEU2}: Two Subroutines to Compute Eigenvalues and Solutions to + Mathieu's Differential Equation for Noninteger and Integer Order floquet solutions;ordinary differential equations; 722 toms 443 451 19 4 December 1993 a1 C A3 W. J. Cody; J. T. Coonen; Functions to Support the {IEEE} Standard for Binary Floating-Point Arithmetic copysign;finite;isnan;logb;manipulative functions;nextafter;scalb; 723 toms 452 456 19 4 December 1993 s20 F C8b W. {Van Snyder}; Fresnel Integrals special functions; R,toms,498--500,22,4,December,1996,W. {Van Snyder}; +R,toms,617,26,4,December,2000,S. Anderson; 724 toms 481 483 19 4 December 1993 s14 F L5a2f R. W. Abernathy; R. P. Smith; Program to Calculate ${F}$-Percentiles distribution function;f-distribution;cumulative distribution function;cdf; +newtons method;root finding method;taylor series; 725 toms 470 480 18 4 December 1992 s15 F L5b1n Z. Drezner; Computation of the Multivariate Normal Integral multivariate normal probability; 726 toms 21 62 20 1 March 1994 d1 F C3a,H2c W. Gautschi; {ORTHPOL} -- {A} Package of Routines for Generating Orthogonal Polynomials + and Gauss-Type Quadrature Rules Gauss-type quadrature rules;orthogonal polynomials; R,toms,355,24,3,September,1998,W. Gautschi; 727 toms 100 102 20 1 March 1994 g1 C L4a1b1 S. Hashem; B. Schmeiser; Quantile Estimation Using Overlapping Batch Statistics aggregation;autocorrelation;monte carlo;stochastic simulation;time series; 728 toms 120 123 20 1 March 1994 e4 F G2e1,G4f P. H. Calamai; L. N. Vicente; {FORTRAN} Subroutines for Generating Quadratic Bilevel Programming Test + Problems bilevel programming;quadratic separable programs;test problems; 729 toms 256 273 18 3 September 1992 f4 F D2a,D2b P. C. Hansen; T. F. Chan; {FORTRAN} Subroutines for General {Toeplitz} Systems condition estimation;levinson's algorithm;toeplitz systems; 730 toms 292 307 18 3 September 1992 f2 F D4c2b G. S. Ammar; L. Reichel; D. C. Sorensen; An Implementaion of a Divide and Conquer Algorithm for the Unitary + Eigenproblem divide and conquer;unitary eigenvalue problem; 731 toms 194 214 20 2 June 1994 d3 F I2a1a J. G. Blom; P. A. Zegeling; A Moving-Grid Interface for Systems of One-Dimensional Time-Dependent + Partial Differential Equations Lagrangian methods;method of lines;moving grids; +partial differential equations;time-dependent problems 732 toms 247 261 20 3 September 1994 d3 F I2b1a1b,I2b1a3 P. F. Cummins; G. K. Vallis; Solvers for Self-Adjoint Elliptic Problems in Irregular Two-Dimensional + Domains capacitance iteration;capacitance matrix;elliptic equations; +fast poisson solvers;greens function; 733 toms 262 281 20 3 September 1994 d2 F G3 D. Kraft; {TOMP}: {FORTRAN} Modules for Optimal Control Calculations boundary value problems;manipulators;optimal control;robotics;shooting method; 734 toms 354 372 20 3 September 1994 e4 F90 G1b1a,G1b1b A. G. Buckley; A {Fortran} 90 Code for Unconstrained Nonlinear Minimization conversion;limited memory;new features;nonlinear optimization;quasi-newton; C,toms,351--354,24,3,September,1998,T. R. Hopkins; 735 toms 398 412 20 3 September 1994 z M J,L10a3 C. Taswell; K. C. {McGill}; Wavelet Transform Algorithms for Finite-Duration Discrete-Time Signals multiresolution analysis;signal processing;waveform analysis; 736 toms 427 435 20 4 December 1994 s21 F C14,P C. F. Dunkl; D. E. Ramirez; Hyperelliptic Integrals and the Surface Measure of Ellipsoids elliptic integral;expected radius;lauricellas hypergeometric function; +surface measure; 737 toms 447 459 20 4 December 1994 a1 F A5 R. B. Kearfott; M. Dawande; K. Du; C. Hu; {INTLIB}: {A} Portable {FORTRAN} 77 Interval Standard-Function Library blas;interval arithmetic;operator overloading;fortran 90; 738 toms 494 495 20 4 December 1994 g5 F H2c,G2i,G4f P. Bratley; B. L. Fox; H. Niederreiter; Programs to Generate {Niederreiter}'s Low-Discrepancy Sequences quasi-monte carlo;quasirandom sequences; 739 toms 518 530 20 4 December 1994 e4 F G1b1a,G1b1b,G1b1c T. Chow; E. Eskow; R. Schnabel; A Software Package for Unconstrained Optimization Using Tensor Methods higher-order method; 740 toms 18 19 21 1 March 1995 f4 F D2b1b,D2b4 M. T. Jones; P. E. Plassmann; {FORTRAN} Subroutines to Compute Improved Incomplete {Cholesky} +Factorizations incomplete factorization;preconditioners;sparse matrices; 741 toms 20 25 21 1 March 1995 f4 F D9a1 R. D. Ray; Least-Squares Solution of a Linear, Bordered, Block-Diagonal System of + Equations sparse systems; 742 toms 98 110 21 1 March 1995 e4 F K1a2a,K5,L8g,L8h I. C. Demetriou; {L2CXFT}: {A} {FORTRAN} Subroutine for Least-Squares Data Fitting with + Nonnegative Second Divided Differences b-splines;convex approximation; 743 toms 172 181 21 2 June 1995 c5 F C19 D. A. Barry; S. J. Barry; P. J. {Cullingan-Hensley}; {WAPR}: A {FORTRAN} Routine for Calculating Real Values of the {$W$}-Function iterative improvement scheme 744 toms 194 213 21 2 June 1995 e4 L G2h3b2,G2i F. M. Rabinowitz; A Stochastic Algorithm for Global Optimization with Constraints constrained optimization;stochastic optimization;test functions; 745 toms 221 232 21 3 September 1995 s15 F C19 M. Goano; Computation of the Complete and Incomplete {Fermi}-{Dirac} Integral asymptotic expansions;confluent hypergeometric functions; +convergence acceleration;e[k] transforms;epsilon algorithm; +euler transformation;incomplete gamma function;levins u transform; +riemanns zeta function; 746 toms 233 266 21 3 September 1995 r2 F H1,S1,O M. Dobmann; M. Liepelt; K. Schittkowski; {PCOMP}: {A} {FORTRAN} Code for Automatic Differentiation forward accumulation;reverse accumulation; R,toms,352--362,26,3,September,2000,M. Liepelt and K. Schittkowski; 747 toms 299 326 21 3 September 1995 f2 F D4,G3 G. Miminis; H. Roth; A {FORTRAN} Subroutine to Solve the Eigenvalue Assignment Problem for Multiiput + Systems Using State Feedback deflation;double steps;numerical efficiency;pole assignment; 748 toms 327 344 21 3 September 1995 c5 F F1b G. E. Alefeld; F. A. Porta; Y. Shi; Enclosing Zeros of Continuous Functions asymptotic efficiency index;enclosing method;inverse cubic interpolation; +quadratic interpolation;simple root; 749 toms 372 378 21 4 December 1995 c6 F J1a3 B. G. Sherlock; D. M. Munro; Fast Discrete Cosine Transform data compression;fast transform; 750 toms 410 415 21 4 December 1995 h F G2c5 G. Carpento; M. {Dell}'{Amico}; P. Toth; {CDT}: {A} Subroutine for the Exact Solution of Large-Scale, Asymmetric + Traveling Salesman Problems assignment problem;branch and bound;reduction procedure;subtour elimination; 751 toms 1 8 22 1 March 1996 e2 F P R. J. Renka; {TRIPACK}: Constrained Two-Dimensional {Delauney} Triangulation Package constrained Delauney triangulation;interpolation; R,toms,97--98,25,1,March,1999,R. J. Renka; 752 toms 9 17 22 1 March 1996 e2 F E2b,K1a1b,K1a2a,K5 R. J. Renka; {SRFPACK}: Software for Scattered Data Fitting with a Constrained Surface + under Tension interpolation;scattered data fitting;smoothing;surface under tension; R,toms,99--100,25,1,March,1999,R. J. Renka; 753 toms 24 29 22 1 March 1996 f1 F D1b4,D2a,D2b P. E. Buis; W. R. Dyksen; {TENPACK}: A {LAPACK}-Based Library for the Computer Manipulation of + Tensor Products LAPACK;parallel;tensor product;vector; 754 toms 104 118 22 1 March 1996 h F G2c4,G2c5 M. G. C. Resende; P. M. Pardalos; Y. Li; {FORTRAN} Subroutines for Approximate Solution of Dense Quadratic Assignment + Problems Using {GRASP} combinatorial optimization;GRASP;local search;quadratic assignment problem; 755 toms 131 167 22 2 June 1996 r2 C H1,O,S1 Griewank, A.; Juedes, D.; Utke, J.; {ADOL-C}: A Package for the Automatic Differentiation of Algorithms Written in + {C/C++} automatic differentiation; chain rule;forward mode; gradients;Hessians; +overloading;reverse mode;Taylor coefficients; 756 toms 168 186 22 2 June 1996 d2 M I2b4,P Driscoll, T. A.; A {Matlab} Toolbox for {Schwarz-Christoffel} Mapping numerical conformal mapping;Schwarz-Christoffel transformation; 757 toms 288 301 22 3 September 1996 s22 F C10d,C10e,C10f,C19 Macleod, A. J.; {MISCFUN}, A Software Package to Compute Uncommon Special Functions Chebyshev polynomials;special functions; 758 toms 302 328 22 3 September 1996 d3 F I2a1b Blom, J. G.; Trompert, R. A.; Verwer, J. G.; {VLUGR2}: A Vectorizable Adaptive-Grid Solver for {PDEs} in {2D} adaptive-grid methods;iterative solvers;method of lines; +nonsymmetric sparse linear systems;partial differential equations;vectorization; 759 toms 329 347 22 3 September 1996 d3 F I2a1b Blom, J. G.; Verwer, J. G.; {VLUGR3}: A Vectorizable Adaptive-Grid Solver for {PDEs} in {3D} --- Part + {II}. Code Description adaptive-grid methods;iterative solvers;method of lines; +nonsymmetric sparse linear systems;partial differential equations;vectorization; 760 toms 357 361 22 3 September 1996 e2 F E2a Akima, H.; Rectangular-Grid-Data Surface Fitting that Has the Accuracy of a Bicubic + Polynomial bivariate interpolation;cubic polynomial;interpolation;local interpolation; 761 toms 362 371 22 3 September 1996 e2 F E2b Akima, H.; Scattered-Data Surface Fitting that Has the Accuracy of a Cubic Polynomial bivariate interpolation;interpolation;local interpolation; R,toms,383--385,24,4,December,1998,R. J. Renka and R. Brown; +R,toms,46--48,26,1,March,2000,F. {De Tisi} and A. Valtulina; 762 toms 372 382 22 3 September 1996 g1 F L5a1e,L5a1l,L5a1w Brown, B. W.; Levy, L. B.; Lovato, J.; Russell, K.; Spears, F. M.; {LLDRLF}, Log-Likelihood and Some Derivatives for {Log-F} Models accelerated failure;log-F distribution;log-likelihood; 763 toms 385 392 22 4 December 1996 a1 F90 A5 R. B. Kearfott; INTERVAL\_ARITHMETIC: A Fortran 90 Module for an Interval Data Type interval arithmetic;operator overloading;portability; 764 toms 1 15 23 1 March 1997 d1 CPP H2b2a1 R. Cools; D. Laurie; L. Pluym; Cubpack++: A {C++} Package for Automatic Two-Dimensional Cubature automatic integration;planar regions; 765 toms 81 90 23 1 March 1997 e4 F G1b1a,G1b1b,G1b1c A. Bouaricha; {STENMIN:} A Software Package for Large, Sparse Unconstrained Optimization + Using Tensor Methods large-scale optimization;rank-deficient matrices; 766 toms 91 110 23 1 March 1997 c1 F90 K4 S. Cabay; A. R. Jones; G. Labahn; Experiments with a Weakly Stable Algorithm for Computing {Pad\'{e}}-{Hermite} + and Simultaneous {Pad\'{e}} Approximants hankel matrix;numerical stability;sylvester matrix;toeplitz matrix; 767 toms 111 129 23 1 March 1997 f1 F D1b7,C3b A. J. Geurts; C. Praagman; A {Fortran} 77 Package for Column Reduction of Polynomial Matrices unimodular; 768 toms 174 195 23 2 June 1997 e4 F F2,K1b1a1 Bouaricha, A.; Schnabel, R. B.; {TENSOLVE}: A Software Package for Solving Systems of Nonlinear Equations and + Nonlinear Least-squares Problems Using Tensor Methods rank-deficient matrices; 769 toms 196 208 23 2 June 1997 h F G2b Pardalos, P. M.; Pitsoulis, L. S.; Resende, M. G. C.; {Fortran} Subroutines for Approximate Solution of Sparse Quadratic Assignment + Problems Using {GRASP} combinatorial optimization;local search; R,toms,349--351,29,3,September,2003,T. Hopkins; 770 toms 252 254 23 2 June 1997 e1 F E1a Costantini, P.; {BVSPIS}---A Package for Computing Boundary-Valued Shape-Preserving + Interpolating Splines Berstein-Bezier polynomials;dynamic programming;spline interpolation; 771 toms 402 415 23 3 September 1997 d2 F90 I1a1a R. W. Brankin; I. Gladwell; rksuite\_90: {Fortran} 90 Software for Ordinary Differential Equation + Initial-Value Problems complex;recursion; 772 toms 416 434 23 3 September 1997 e2 F P R. J. Renka; {STRIPACK}: {Delaunay} Triangulation and {Voronoi} Diagram on the Surface of a + Sphere Dirichlet tessellation;Thiessen regions; 773 toms 435 442 23 3 September 1997 e2 F E2b,K5 R. J. Renka; {SSRFPACK}: Interpolation of Scattered Data on the Surface of a Sphere with a + Surface under Tension scattered data fitting;smoothing;triangle-based interpolation; 774 toms 448 450 23 3 September 1997 e4 F G4f,G2h1a F. Facchinei; J. Judice; J. Soares; {Fortran} Subroutines for Generating Box-Constrained Optimization Problems nonlinear programming test problems;test problem generation; 775 toms 453 493 23 4 December 1997 d2 F I1b3 L. Greenberg; M. Marletta; The Code {SLEUTH} for Solving Fourth-Order {Sturm} {Liouville} Problems eigenvalues; 776 toms 494 513 23 4 December 1997 f2 F D4a2,D4a7 Z. Bai; G. W. Stewart; {SRRIT}: A {Fortran} Subroutine to Calculate the Dominant Invariant Subspace + of a Nonsymmetric Matrix nonsymmetric eigenvalue problem;project method; 777 toms 514 549 23 4 December 1997 c5 F90 F2 L. T. Watson; M. Sosonkina; R. C. Melville; A. P. Morgan; H. F. Walker; {HOMPACK90}: A Suite of {Fortran} 90 Codes for Globally Convergent Homotopy + Algorithms Chow-Yorke algorithm;curve tracking;fixed point; 778 toms 550 560 23 4 December 1997 e4 F G1b1b,G2h1a2 C. Zhu; R. H. Byrd; P. Lu; J. Nocedal; {L-BFGS-B}: {Fortran} Subroutines for Large-Scale Bound-Constrained + Optimization limited-memory method;nonlinear optimization;variable metric method; +R,toms,7:1--7:4,38,1,November,2011,Jos\'e Luis Morales and Jorge Nocedal; 779 toms 1 12 24 1 March 1998 s13 F C19 Macleod, A. J.; {Fermi-Dirac} Functions of Order -1/2, 1/2, 3/2, 5/2 Chebyshev polynomials;collocation;floating-point arithmetic; 780 toms 102 106 24 1 March 1998 g5 F90 L6a5 Hamilton, K. G.; Exponential Pseudorandom Distribution exponential distribution;random numbers;pseudorandom numbers; 781 toms 184 189 24 2 June 1998 j6 C P,Q Breinholt, G.; Schierz, C.; Krueger, H.; Generating {Hilbert's} Space-Filling Curve by Recursion fass curves; 782 toms 254 257 24 2 June 1998 f5 F D5 Bischof, C. H.; Quintana-Ort\'{\i}, G.; Codes for Rank-Revealing {QR} Factorizations of Dense Matrices block algorithm;numerical rank; 783 toms 261 267 24 3 September 1998 e2 C P Peters, J.; {Pcp2Nurb} -- Smooth Free-Form Surfacing with Linearly Trimmed + Bicubic {B}-Splines arbitrary patch layout;arbitrary surface topology; +biquadratic tensor-product B-splines;matlab;NURBS;planar-cut polyhedron; 784 toms 303 316 24 3 September 1998 f1 F D1b K\aagstr\"{o}m, B.; Ling, P.; {Van Loan}, C.; {GEMM}-Based Level 3 {BLAS}: Portability and Optimization Issues blocked algorithms;matrix-matrix kernels;memory hierarchy;parallelization; +vectorization; 785 toms 317 333 24 3 September 1998 d2 F P Hu, C.; A Software Package for Computing {Schwarz}-{Christoffel} Conformal + Transformation for Doubly Connected Polygonal Regions accessory parameters;numerical conformal mapping;system of nonlinear equations; 786 toms 359 367 24 4 December 1998 a2 F90 A4c Smith, D. M.; Multiple Precision Complex Arithmetic and Functions accuracy;floating point;function evaluation;mathematical library; +portable software; 787 toms 386 394 24 4 December 1998 h F G2d,P Resende, M. C. G.; Feo, T. A.; Smith, S. H.; {Fortran} Subroutines for Approximate Solution of Maximum Independent Set + Problems Using {GRASP} combinatorial optimization;local search;maximum clique; 788 toms 395 417 24 4 December 1998 d5 F I2b1a1b Atkinson, K.; Jeon, Y.; Automatic Boundary Integral Equation Programs for the Planar + {Laplace} Equation numerical integral equation; 789 toms 58 69 25 1 March 1999 d2 F90 I1b3 J. D. Pryce; {SLTSTPAK}: A Test Package for {Sturm}-{Liouville} Solvers Sturm-Liouville problems;test-problem collection;testing software; 790 toms 70 73 25 1 March 1999 e1 F E2b R. J. Renka; {CSHEP2D}: Cubic {Shepard} Method for Bivariate Interpolation of + Scattered Data surface fitting; 791 toms 74 77 25 1 March 1999 e1 F E2b R. J. Renka; R. Brown; {TSHEP2D}: Cosine Series {Shepard} Method for Bivariate Interpolation of + Scattered Data surface fitting; 792 toms 78 94 25 1 March 1999 e1 F E2b R. J. Renka; R. Brown; Accuracy Tests of {ACM} Algorithms for Interpolation of Scattered Data in + the Plane Delaunay triangulation;Shepard method;surface fitting; 793 toms 213 239 25 2 June 1999 d1 F H2c W. Gautschi; {GQRAT} --- {Gauss} Quadrature for Rational Functions construction of quadrature rules;generalized Fermi-Dirac integrals; +generalized Bose Einstein integrals; 794 toms 240 250 25 2 June 1999 s17 F J,C10f T. Wieder; Numerical {Hankel} Transform by the {Fortran} Program {HANKEL} bessel function; 795 toms 251 276 25 2 June 1999 c2 Ada F2 J. Verschelde; {PHC}pack: A General-Purpose Solver for Polynomial Systems by Homotopy + Continuation Bernsteins theorem;Bezout number;enumerative geometry; +mixed volume;polyhedral homotopy;root count;Schubert calculus;start system; 796 toms 306 315 25 3 September 1999 d5 F J3 L. D'Amore; G. Laccetti; A. Murli; A {Fortran} Software Package for the Numerical Inversion of the {Laplace} + Transform Based on a {Fourier} Series Method automatic stopping criterion; 797 toms 341 352 25 3 September 1999 h F G2b C. C. Ribeiro; M. G. C. Resende; {Fortran} Subroutines for Approximate Solution of Graph Planarization Problems + Using {GRASP} automatic graph drawing;combinatorial optimization;local search; 798 toms 353 366 25 3 September 1999 e1 CPP E2b M. W. Berry; K. S. Minser; High-Dimensional Interpolation Using the Modified {Shepard} Method multivariate interpolation;netCDF file format; 799 toms 19 45 26 1 March 2000 r2 F H1 A. Griewank; A. Walther; Revolve: An Implementation of Checkpointing for the Reverse or Adjoint Mode of + Computational Differentiation reverse mode; 800 toms 49 77 26 1 March 2000 f2 F D4a2 P. Benner; R. Byers; E. Barth; {Fortran 77} Subroutines for Computing the Eigenvalues of Hamiltonian Matrices + {I}: The Square-Reduced Method 801 toms 176 200 26 1 March 2000 c5 F90 F2 S. M. Wise; A. J. Sommese; L. T. Watson; {POLSYS_PLP}: A Partitioned Linear Product Homotopy Code for Solving + Polynomial Systems of Equations Chow-Yorke algorithm;curve tracking;fixed point;globally convergent; +m-homogeneous;probability-one; 802 toms 201 219 26 1 March 2000 g5 C L6b W. H\"{o}rmann; An Automatic Generator for Bivariate Log-Concave Distributions rejection method;universal generator; 803 toms 310 319 26 2 June 2000 z AWK S1 W. A. {Ward, Jr.}; A Simpler Macro Processor awk;portable;simple; 804 toms 408 414 26 3 September 2000 s22 CPP C17 Alhargan, F. A.; Subroutines for the computation of Mathieu functions of integer orders mathieu differential equation;mathieu characteristic numbers; +mathieu characteristic determinant;mathieu coefficients;hill's determinant; +wave equation;elliptic coordinates; 805 toms 415 435 26 3 September 2000 f1 C D Kolda, T. G.; O'Leary, D. P.; Computation and Uses of the Semidiscrete Matrix Decomposition singular value decomposition;semidiscrete decomposition; +latent semantic indexing;compression; 806 toms 436 461 26 3 September 2000 g5 C L6a21 Mascagni, M.; Srinivasan, A.; SPRNG: A Scalable Library for Pseudorandom Number Generation parallel random-number generators;random-number software; +linear congruential generator;lagged-fibonacci generator;random-number tests; 807 toms 602 616 26 4 December 2000 f1 F D4c1b3 C. H. Bischof; B. Lang; X. Sun; The {SBR} Toolbox -- Software for Successive Band Reduction symmetric matrices;tridiagonalization;blocked householder transformations; 808 toms 58 65 27 1 March 2001 g2 M L10c T. Schneider; A. Neumaier; {ARFIT} --- A {Matlab} Package for the Estimation of Parameters and Eigenmodes + of Multivariate Autoregressive Models confidence intervals;least squares;model identification;order selection; +parameter estimation;principal oscillation pattern; 809 toms 83 91 27 1 March 2001 f4 F D2b4,D2e J. L. Morales; J. Nocedal; {PREQN}: Fortran 77 Subroutines for Preconditioning the Conjugate Gradient + Method quasi-newton method;hessian-free newton method;limited memory method; 810 toms 143 192 27 2 June 2001 d2 F I1b3 P. B. Bailey; W. N. Everitt; A. Zettl; The {SLEIGN2} {Sturm}-{Liouville} Code eigenvalue computation;coupled boundary conditions; 811 toms 193 213 27 2 June 2001 e4 F G2h2b,K2 L. Luksan; J. Vlcek; {NDA}: Algorithms for Nondifferentiable Optimization minimax optimization;discrete Chebyshev approximation; +sequential quadratic programming methods;variable metric methods; +general linear constraints; 812 toms 267 296 27 2 June 2001 c2 CPP C3b Y-F. Tsai; R. T. Farouki; {BPOLY}: An Object-Oriented Library of Numerical Algorithms for Polynomials in + {Bernstein} Form Bernstein basis;polynomial algorithms;numerical stability; 813 toms 340 349 27 3 September 2001 e4 F G2h3 E. G. Birgin; J. M. Martinez; M. Raydan; {SPG}--Software for Convex-Constrained Optimization bound constrained problems;large-scale problems;nonmonotone line search; +projected gradients;spectral gradient methods; 814 toms 377 387 27 4 December 2001 a1 F90 A3c/C7a/C7b/C7e/C7f D. M. Smith; {Fortran} 90 Software for Floating-Point Multiple Arithmetic, {Gamma} and + Related Functions accuracy;function evaluation; 815 toms 456 464 27 4 December 2001 h F G2c2 P. Festa; P. M. Pardalos; M. G. C. Resende; {Fortran} Subroutines for Computing Approximate Solutions of Feedback Set + Problems Using {GRASP} combinatorical optimization;graph bipartization;local search; +R,toms,166--168,32,1,March,2006,B. Hasselman; 816 toms 75 100 28 1 March 2002 d1 CPP H2b2a1 I. Robinson; M. Hill; r2d2lri: an Algorithm for Automatic Two-Dimensional Cubature automatic integration;sidi transformation;lattice rules;non-adaptive; +two-dimensional integration; 817 toms 101 132 28 1 March 2002 d3 CPP I2b4 E. Bertolazzi; G. Manzini; {P2MESH}: Generic Object-Oriented Interface Between {2-D} Unstructured Meshes + and {FEM/FVM-Based PDE} Solvers finite element; finite volume; object-oriented programming; 818 toms 268 283 28 2 June 2002 f1 F90 D1 I. S. Duff; C. V\"{o}mel; A Reference Model Implementation of the Sparse {BLAS} in {Fortran} 95 iterative linear solvers;programming standard;sparse data structure; +unstructured sparse matrices; 819 toms 325 336 28 3 September 2002 s20 F C10d A. Gil; J. Segura; N. M. Temme; {AIZ, BIZ}: Two {Fortran} 77 Routines for the Computation of Complex {Airy} + Functions complex values;gauss quadrature; 820 toms 337 353 28 3 September 2002 z CPP K4/Z S. E. Ferrando; L. A. Kolasa; N. Kova\v{c}evi\'{c}; A Flexible Implementation of Matching Pursuit for {Gabor} Functions on the + Interval adaptive signal processing;gabor analysis; 821 toms 354 371 28 3 September 2002 z F90 S/Z R. J. Hanson; C. P. Breshears; H. A. Gabb; A {Fortran} Interface to {POSIX} Threads scientific computing;symmetric multi-processor;mathematical software;Pthreads; 822 toms 436 447 28 4 December 2002 s20 F C10d A. Gil; J. Segura; N. M. Temme; GIZ, HIZ: Two {Fortran} 77 routines for the computation of complex {Scorer} + functions airy function;numerical quadrature; 823 toms 95 109 29 2 June 2003 g5 F H2c/L6b21/N8 H. S. Hong; F. J. Hickernell; Implementing Scrambled Digital Sequences digital net;scrambling; 824 toms 287 296 29 3 September 2003 d1 F90 H2a1a1/H2b1a1/H2b2a1 R. Cools; A. Haegemans; CUBPACK: A Package for Automatic Cubature; Framework Description automatic integration;quadrature; 825 toms 309 325 29 3 September 2003 c5 C F1b S. Shellman; K. Sikorski; A Deep-Cut Bisection Envelope Algorithm for Fixed Points economics;game theory;nonlinear partial differential equations; 826 toms 326 336 29 3 September 2003 f2 F D4c2b M. R. Fahey; Parallel Eigenvalue Routine for Complex {Hessenberg} Matrices parallel programming;parallel QR algorithm;schur decomposition;scalapack; 827 toms 337 348 29 3 September 2003 f2 M D4a3/D4a7/D4b3/D6 J. Baglama; D. Calvetti; L. Reichel; irbleigs: A {MATLAB} Program for Computing a Few Eigenpairs of a Large Sparse + {Hermitian} Matrix block lanczos method;eigenvalue computation;generalized eigenproblem; +singular values;polynomial acceleration; 828 toms 458 468 29 4 December 2003 e1 F E1c R. J. Renka; {DNSPLIN1}: Discrete Nonlinear Spline Interpolation sobolev gradient;minimum energy curve;nonlinear spline; 829 toms 469 480 29 4 December 2003 e4 C G4f M. Gaviano; D. E. Kvasov; D. Lera; Y. D. Sergeyev; Software for Generation of Classes of Test Functions with Known Local and + Global Minima for Global Optimization test problems generation; 830 toms 86 94 30 1 March 2004 f1 F90 D1b10 R. J. Hanson; T. R. Hopkins; Another Visit With Standard and Modified Givens Transformations and A Remark + On Algorithm 539 BLAS;Givens rotation;linear algebra; 831 toms 159 164 30 2 June 2004 s18 f C10b A. Gil; J. Segura; N. M. Temme; Modified {Bessel} Functions of Imaginary Order and Positive Argument numerical quadrature;asymptotic expansions; 832 toms 196 199 30 2 June 2004 f4 c/m D1b3/D1b9/D2a4 T. A. Davis; {UMFPACK} --- an Unsymmetric-Pattern Multifrontal Method sparse nonsymmetric matrices;linear equations;ordering method; 833 toms 200 211 30 2 June 2004 e1 f E2b R. J. Renka; {CSRFPACK} --- Interpolation of Scattered Data with a $C^1$ + Convexity-preserving Surface convexity-preserving interpolation;data-dependent triangulation; +scattered data fitting; 834 toms 212 217 30 2 June 2004 j6 c Q R. J. Renka; glsurf --- An Interactive Surface Plotting Program using {OpenGL} contour plot; 835 toms 218 236 30 2 June 2004 c2 m F1a1 Z. Zeng; {MultRoot} --- A {Matlab} Package for Computing Polynomial Roots and + Multiplicities multiple root;multiple zero;multiplicity identification;root-finding; 836 toms 377 380 30 3 September 2004 f4 M D2e T. A. Davis; J. R. Gilbert; S. I. Larimore; E. G. Ng; {COLAMD}, a Column Approximate Minimum Degree Ordering Algorithm linear equations;ordering methods;sparse nonsymmetric matrices; 837 toms 381 388 30 3 September 2004 f4 f D2e P. Amestoy; T. A. Davis; I. Duff; {AMD}, an Approximate Minimum Degree Ordering Algorithm linear equations;ordering methods;sparse matrices; 838 toms 491 501 30 4 December 2004 s20 F90 C10d B. R. Fabijonas; {Airy} Functions asymptotic functions;differential equations;error analysis;real airy functions; +complex airy functions;zeros; 839 toms 502 516 30 4 December 2004 d3 Py I2b4/K6c R. C. Kirby; {FIAT}, A New Paradigm for Computing Finite Element Basis Functions finite elements;high order methods;linear algebra; 840 toms 149 165 31 1 March 2005 d1 M I2b4/K6c/C18 J. P. Boyd; Computation of Grid Points, Quadrature Weights and Derivatives for Spectral + Element Methods Using Prolate Spheroidal Wave Functions --- Prolate Elements prolate element method;prolate spheroidal wave functions;p-finite elements; 841 toms 166 185 31 1 March 2005 f2 F D4c1b2 G. W. Howell; N. Diaa; {BHESS}: {Gaussian} Reduction to a Similar Banded {Hessenberg} Form Gaussian similarity transformations;matrix eigenvalues;spectra;cache efficient; +Sylvester equation; 842 toms 228 238 31 2 June 2005 f4 F D3a4/D3c4 V. Frayss\'{e}; L. Giraud; S. Gratton; J. Langou; A Set of {GMRES} Routines for Real and Complex Arithmetics on High Performance + Computers Linear systems;Krylov methods;Reverse communication;Distributed memory; 843 toms 239 251 31 2 June 2005 d2 m I2b4/P T. A. Driscoll; Improvements to the {Schwarz-Christoffel Toolbox} for {MATLAB} conformal mapping;Laplace equation;polygons; 844 toms 252 269 31 2 June 2005 f1 m D M. W. Berry; S. A. Pulatova; G. W. Stewart; Computing Sparse Reduced-Rank Approximations to Sparse Matrices sparse approximations;gram-schmidt algorithm; 845 toms 270 279 31 2 June 2005 f2 m D4b1 J. H. Money; Q. Ye; {EIGIFP}: A {MATLAB} Program for Solving Large Symmetric Generalized + Eigenvalue Problems krylov subspace method;preconditioning; 846 toms 555 560 31 4 December 2005 c2 CPP P/F2 T. Gao; T. Y. Li; M. Wu; {MixedVol}: A Software Package for Mixed Volume Computation semimixed structure;support;polynomial system; 847 toms 561 579 31 4 December 2005 e1 m E2b A. Klimke; B. Wohlmuth; {spinterp}: Piecewise Multilinear Hierarchical Sparse Grid Interpolation in + {MATLAB} multivariate interpolation;smolyak algorithm; 848 toms 580 586 31 4 December 2005 c5 C F2 S. Shellman; K. Sikorski; A Recursive Fixed Point Algorithm for the Infinity-Norm Case economics;game theory;non-linear partial differential equations; 849 toms 587 591 31 4 December 2005 f4 C D2b1b T. A. Davis; A Concise Sparse {Cholesky} Factorization Package linear equations;sparse matrices; 850 toms 102 112 32 1 March 2006 s17 F90 C16 A. Gil; J. Segura; N. M. Temme; Real parabolic cylinder functions {$U(a,x)$, $V(a,x)$} numerical quadrature;asymptotic expansions; 851 toms 113 137 32 1 March 2006 e4 F G1b1a W. W. Hager; H. Zhang; {CG\_DESCENT}, a conjugate gradient method with guaranteed descent convergence;line search;unconstrained optimization;wolfe condition; 852 toms 138 156 32 1 March 2006 e4 C F2/G4d L. Granvilliers; F. Benhamou; {RealPaver}: an interval solver using constraint satisfaction techniques interval arithmetic;nonlinear system;local consistency;interval newton; 853 toms 157 165 32 1 March 2006 e4 F D9a1/D9b1 L. Foster; R. Kommu; An efficient algorithm for solving rank-deficient least squares problems QR factorization; 854 toms 352 373 32 2 June 2006 f2 F D4a2 P. Benner; D. Kressner; Fortran 77 Subroutines for Computing the Eigenvalues of {Hamiltonian} Matrices + {II} algebraic Riccati equation;invariant subspaces;skew-Hamiltonian matrix; +symplectic QR decomposition; 855 toms 472 484 32 3 September 2006 s22 CPP C17 F. A. Alhargan; Subroutines for the Computation of {Mathieu} Characteristic Numbers and their + General Orders Mathieu functions;Mathieu differential equations; +Mathieu characteristic determinant;Hill's determinant;wave equation; +elliptic coordinates; 856 toms 485 507 32 3 September 2006 e4 CPP G1b2/G2h1b G. A. Gray; T. G. Kolda; {APPSPACK 4.0}: Asynchronous Parallel Pattern Search for Derivative-Free + Optimization unconstrained optimization;bound-constrained optimization; 857 toms 561 579 32 4 December 2006 c5 F90 F2 H.-J. Su; J. M. McCarthy; M. Sosonkina; L. T. Watson; {POLSYS GLP}: A Parallel General Linear Product Homotopy Code for Solving + Polynomial Systems of Equations chow-york algorithm;curve tracking;fixed point;globally convergent; +probability-one; 858 toms 580 596 32 4 December 2006 d1 M C10a3/H2a3 J. {Van Deun}; R. Cools; Computing Infinite Range Integrals of an Arbitrary Product of {Bessel} + Functions quadrature; 859 toms 597 608 32 4 December 2006 f4 F90 D2a4 P. Amodio; G. Romanazzi; {BABDCR}: a {Fortran} 90 package for the Solution of Bordered {ABD} Linear + Systems cyclic reduction;bordered almost block diagonal matrices; 860 toms 609 621 32 4 December 2006 j6 M P E. N. Gon\c{c}alves; R. Palhares; R. H. C. Takahashi; R. C. Mesquita; {SimpleS}: An Extension of {Freudenthal's} Simplex Subdivision mesh generation; 861 toms 622 634 32 4 December 2006 s22 F90 C17 D. Erricolo; {Fortran} 90 Subroutines for Computing the Expansion Coefficients of {Mathieu} + Functions using {Blanch's} Algorithm special function;validation; 862 toms 635 653 32 4 December 2006 f1 M D1b/N4 B. W. Bader; T. G. Kolda; {MATLAB} Tensor Classes for Fast Algorithm Prototyping higher-order tensors;multilinear algebra;N-way arrays; 863 toms 6 19 33 1 March 2007 e3 F I. C. Demetrio; {L2WPMA}, a {Fortran} 77 Package for Weighted Least Squares Piecewise + Monotonic Data Approximation data smoothing; divided difference; dynamic programming;fitting;histogram; +image processing;isotonic regression;Lagrange multipliers;peak finding; +pound/dollar exchange rate;signal processing;spline;turning point; 864 toms 7 12 33 1 March 2007 h C S. Martello; D. Pisingery; D. Vigo; E. {den Boef}; J. Korst; Algorithms for General and Robot-Packable Variants of the Three-Dimensional + Bin Packing Problem exact algorithm;constraint programming;branch-and-bound; 865 toms 8 5 33 1 March 2007 f4 F90 F. G. Gustavson; J. K. Reid; J. Wasniewski; {Fortran} 95 Subroutines for {Cholesky} Factorization in Blocked Hybrid Format real symmetric matrices;positive definite matrices; +Cholesky factorization and solution;recursive algorithm; +novel packed matrix data structures;linear systems of equations;BLAS; 866 toms 14 18 33 2 June 2007 d3 M H. C. Elman; A. Ramage; D. J. Silvester; {IFISS}, a {Matlab} Toolbox for Modelling Incompressible Flow finite elements;iterative solvers;stabilization; 867 toms 20 30 33 3 August 2007 d1 F N. H. F. Beebe; J. S. Ball; {QUADLOG} --- A Package of Routines for Generating Gauss-Related Quadrature + for Two Classes of Logarithmic Weight Functions EISPACK pythag() function;gama-function testing;Gauss-Chebyshev quadrature; +Gauss-Jacobi quadrature;Gauss-Laguerre quadrature;Gauss-Legendre quadrature; +Gauss-type quadrature;logarithmic integrals;machine-epsilon testing; +Maple symbolic algebra system;Mehler quadrature;orthogonal polynomials; +psi-function testing;software portability;software testing; 868 toms 21 21 33 3 August 2007 d1 M T. O. Espelid; Globally Doubly Adaptive Quadrature - Reliable {Matlab} Codes error estimation;Newton-Cotes rules;software testing; 869 toms 27 12 33 4 August 2007 g2 F90 J. W. Zwolak; P. T. Boggs; L. T. Watson; {ODRPACK95}: A Weighted Orthogonal Distance Regression Code with Bound + Constraints measurement error models;nonlinear least squares; simple bounds; 870 toms 4 28 34 1 August 2008 z CPP L. Linardakis; N. Chrisochoides; A Static Geometric Medial Axis Domain Decomposition in {2D} Euclidean} Space parallel mesh generation;delaunay triangulation; 871 toms 5 20 34 1 January 2008 a1 CPP W. Schreppers; A. Cuyt; A {C/C++} Precompiler for the Auto Generation of Multiprecision Programs conversion;floating-point; 872 toms 6 20 34 1 January 2008 z CPP A. N. Chernikov; N. P. Chrisochoides; Parallel 2D Constrained {Delaunay} Mesh Generation delaunay triangulation;parallel refinement; 873 toms 11 28 34 2 March 2008 e4 M M. Rojas; S. A. Santos; D. C. Sorensen; {MATLAB} Software for Large-Scale Trust-Region Subproblems and Regularization ARPACK;constrained quadratic optimization;Lanczos method; 874 toms 15 28 34 3 May 2008 d3 F R. Wang; P. Keast; P. H. Muir; {BACOLR}---Spatial and Temporal Error Control Software for {PDEs} based on + High rder Adaptive Collocation adaptive method of lines;1-d PDEs;Runge-Kutta methods; +differential-algebraic equations;spatial error control; 875 toms 16 20 34 3 May 2008 e4 M S. J. Benson; Y. Ye; {DSDP5}---Software for Semidefinite Programming linear matrix inequalities;conic programming;interior-point methods; +dual scaling algorithm; 876 toms 21 20 34 4 July 2008 d5 M K. E. Atkinson; L. F. Shampine; {Solving Fredholm Integral Equations of the Second Kind in Matlab} numerical solution; 877 toms 22 21 34 4 July 2008 s20 F90 M. Kodama; {A Subroutine Package for Cylindrical Functions of Complex Order and + Nonnegative Argument} numerical calculation; 878 toms 6 11 35 1 July 2008 g1 M K. Jonasson; {Exact VARMA likelihood and its gradient for complete and incomplete data with + Matlab} Exact likelihood function;missing values;ARMA; +vector autoregressive moving average model; 879 toms 7 11 35 1 July 2008 f2 F C-R. Lee; G. W. Stewart; {EIGENTEST---a test matrix generator for large-scale eigenproblems} Eigensystem;test matrix generation; 880 toms 8 13 35 1 July 2008 f2 F90 O. A. Marques; C. Voemel; J. W. Demmel; B. N. Parlett; {A testing infrastructure for symmetric tridiagonal eigensolvers} eigenvalues; 881 toms 13 12 35 2 July 2008 f4 F V. Frayss\'{e}; L. Giraud; S. Gratton; {A Set of Flexible GMRES Routines for Real and Complex Arithmetics on + High-Performance Computers} linear systems;flexible Krylov methods;PGMRES;reverse communication; +high-performance computing;distributed memory; 882 toms 14 21 35 2 July 2008 d1 M J. {van Deun}; K. Deckers; A. Bultheel; J. A. C. Weideman ; {Near-Best Fixed Pole Rational Interpolation with Applications in Spectral + Methods} quadrature; 883 toms 15 13 35 2 July 2008 e4 M H. Waki; S. Kim; M. Kojima; M. Muramatsu; H. Sugimoto; {SparsePOP---A Sparse Semidefinite Programming Relaxation of Polynomial + Optimization Problems} global optimization;sparsity;sum-of-squares optimization; 884 toms 16 11 35 2 July 2008 d3 M V. Dom\'{\i}nguez; F-J. Sayas; {A Simple Matlab Implementation of the Argyris Element} finite elements; 885 toms 20 10 35 3 October 2008 s15 C J. M. Linhart; Computing the Logarithm of the Normal Distribution logarithm of the standard normal distribution;error function;normal integral; 886 toms 21 11 35 3 October 2008 e1 F M. Caliari; S. Marchi; M. Vianello; {Padua2D}---{Lagrange} Interpolation at {Padua} Points on Bivariate Domains Bivariate Lagrange interpolation;bivariate Chebychev orthogonal basis; 887 toms 22 14 35 3 October 2008 f1 M Y. Chen; T. A. Davis; W. W. Hager; S. Rajamanickam; {CHOLMOD}, Supernodal Sparse {Cholesky} Factorization and Update/Downdate linear equations;sparse matrices; 888 toms 23 23 35 3 October 2008 c6 M J. B. Drake; P. Worley; E. {D'Azevedo}; Spherical Harmonic Transform Algorithms spectral transform methods;fluid dynamics;geophysical flow; +high performance computing; 889 toms 24 20 35 3 October 2008 e3 CPP F. Cazals; M. Pouget; Jet_fitting_3:---A Generic {C++} Package for Estimating the Differential + Properties on Sampled Surfaces via Polynomial Fitting computational geometry;C++ design;differential geometry;interpolation; +numerical linear algebra; 890 toms 29 16 35 4 February 2009 e4 M E. {van den Berg}; M. P. Friedlander; G. Hennenfent; F. J. Herrmann; R. Saab; + \"{O}. Yilmaz; {Sparco}: A Testing Framework for Sparse Reconstruction compressed sensing;sparse recovery;linear operators; 891 toms 5 12 36 1 March 2009 z F90 J. K. Reid; J. A. Scott; A {Fortran} Virtual Memory System out-of-core;direct access files; 892 toms 6 7 36 1 March 2009 m2 F90 K. Jonasson; {DISPMODULE}, a {Fortran} 95 Module for Pretty-printing Matrices matrix printing;output utilities;array programming language; 893 toms 7 8 36 1 March 2009 e2 M R. J. Renka; {TSPACK}: Tension Spline Package for Curve Design and Data Fitting Convexity preserving;cubic spline;exponential spline;interpolation; +monotonicity preserving;parametric curve;piecewise polynomial; +shape preserving;smoothing;spline under tension;tension factor; 894 toms 12 20 36 2 March 2009 f1 F90 S. Koikari; On a Block {Schur--Parlett} Algorithm for $\varphi$-functions Based on the + sep-inverse Estimate exponential integrators;matrix functions; 895 toms 15 20 36 3 July 2009 s MPL F. Backeljauw; A. Cuyt; A continued fractions package for special functions CAS software;maple; 896 toms 16 29 36 3 July 2009 e4 F L. Luk{\v s}an; C. Matonoha; J. Vl{\v c}ek; {LSA}: {Algorithms} for large-scale optimization large-scale nonsmooth optimization;large-scale nonlinear least squares; +large-scale nonlinear minimax;large-scale systems of nonlinear equations; +sparse problems;partially separable problems;limited-memory methods; +discrete newton methods;quasi-newton methods;primal interior-point methods; 897 toms 17 24 36 3 July 2009 e4 F90 Jian He; L. T. Watson; M. Sosonkina; {VTDIRECT95}: {Serial} and parallel codes for the global optimization algorithm + direct DIRECT;data structures;parallel schemes;checkpointing; 898 toms 9 14 37 1 January 2010 F1 C Martin Albrecht; Gregory Bard; William Hart; Efficient Multiplication of Dense Matrices over $GF(2)$ GF(2);matrix;linear algebra;Strassen;greasing; 899 toms 10 15 37 1 January 2010 E1 M Scott A. Sarra; The Matlab Postprocessing Toolkit Pseudospectral methods;Gibbs phenomenon; 900 toms 11 16 37 1 January 2010 G2 F90 German A. Torres; A Discrete Time Kalman Filter Package for Large Scale Problems data assimilation; 901 toms 12 11 37 1 January 2010 D2 M Dimitrios S. Vlachos; T. Simos; {LMEF}: A Program for the Construction of Linear Multistep Methods with + Exponential Fitting for the Numerical Solution of Ordinary Differential + Equations backward differentiation formulas; 902 toms 22 39 37 2 April 2010 E4 M Anil V. Rao; David A. Benson; Christopher Darby; Michael A. Patterson; + Camila Francolin; Ilyssa Sanders; Geoffrey T. Huntington; {GPOPS}, {A} {MATLAB} Software for Solving Multiple-Phase Optimal Control + Problems Using the {Gauss} Pseudospectral Method dynamic optimization;nonlinear optimization;otimal control; +nonlinear programming;phases; 903 toms 23 24 37 2 April 2010 D2 F Elena Celledoni; Antonella Zanna; {FRB}--{Fortran} routines for the exact computation of free rigid body motions rigid body;jacobi elliptic integrals;splitting methods;sttitude rotation; 904 toms 33 4 37 3 September 2010 F2 F Robert Granat; Bo K{\aa}gstr\"{o}m; The SCASY Library -- Parallel Solvers for Sylvester-Type Matrix Equations with + Applications in Condition Estimation, Part II. parallel computing;parallel algorithms;eigenvalue problems; +Sylvester matrix equations; 905 toms 34 20 37 3 September 2010 E1 F95 Thacker, William I.; Zhang, Jingwei; Watson, Layne T.; Birch, Jeffrey B.; + Iyer, Manjula A.; Berry, Michael W.; {SHEPPACK}: Modified {Shepard} Algorithm for Interpolation of Scattered + Multivariate Data M-estimation;RIPPLE;Shepard's algorithm; 906 toms 35 17 37 3 September 2010 D1 CPP Tiancheng Li ; Ian Robinson; {elrint3d} : A Three-Dimensional Nonadaptive Automatic Cubature Routine Using + a Sequence of Embedded Lattice Rules automatic cubature routine;2^s-copy lattice augmentation sequence;seed lattice; +index of merit;trigonometric degree of precision; 907 toms 36 17 37 3 September 2010 F4 M Timothy A. Davis; Ekanathan {Palamadai Natarajan}; {KLU}, A Direct Sparse Solver for Circuit Simulation Problems LU factorization;sparse matrices;circuit simulation; 908 toms 37 13 37 3 September 2010 A1 CPP Yong-Kang Zhu; Wayne B. Hayes; Online Exact Summation of Floating-Point Streams floating-point summation;rounding error; 909 toms 44 15 37 4 December 2010 E04 CPP S\'ebastien {Le Digabel}; {NOMAD}: Nonlinear Optimization with the {MADS} Algorithm mesh adaptive direct search;constrained optimization;nonlinear optimization; +blackbox optimization; 910 toms 45 27 37 4 December 2010 S CPP Christopher Kormanyos; A Portable {C++} Multiple Precision System for Special Function Calculations airy;bessel;elliptic integrals;gamma;generic programming;hermite; +hypergeometric;laguerre;legendre;object oriented;orthogonal polynomials; +parabolic cylinder;polylogarithm;polymorphism;zeta; 911 toms 46 16 37 4 December 2010 S13 F95 David M. Smith; Multiple-Precision Exponential Integral and Related Functions accuracy;function evaluation;floating point;mathematical library; +exponential integral; 912 toms 47 25 37 4 December 2010 S19 F95 Masao Kodama; A Module for Calculating Cylindrical Functions of Complex Order and Complex + Argument cylindrical function;complex order;complex argument; 913 toms 5 19 38 1 November 2011 F4 M Martin {van Gijzen}; Peter Sonneveld; An Elegant {IDR(s)} Variant that Efficiently Exploits Bi-orthogonality + Properties Iterative methods;Krylov-subspace methods;sparse nonsymmetric linear systems; 914 toms 6 5 38 1 November 2011 S17 F90 Amparo Gil; Javier Segura; Nico M. Temme; Parabolic Cylinder Function $W(a,x)$ and its Derivative ODE integration;asymptotic expansions; 915 toms 8 22 38 1 November 2011 F5 M Timothy A. Davis; {SuiteSparseQR}: Multifrontal multithreaded rank-revealing sparse {QR} + factorization least-square problems;sparse matrices; 916 toms 15 22 38 2 December 2011 S15 M Mofreh R. Zaghloul; Ahmed N. Ali; Computing the Faddeyeva and Voigt Functions Faddeyeva function;Function evaluation;accuracy; 918 toms 21 13 38 3 April 2012 F2 M Miloud Sadkane; Ahmed Touhami; A {MATLAB} program for the spectral dichotomy of regular matrix pencils Invariant subspace;spectral projector; 919 toms 22 19 38 3 April 2012 D2 M Jitse Niesen; Will M. Wright; A {Krylov} Subspace Algorithm for Evaluating the $\varphi$-Functions Appearing + in Exponential Integrators Krylov subspace methods;exponential integrators;matrix exponential; 920 toms 27 19 38 4 August 2012 H M Sunyoung Kim; Masakazu Kojima; Hayato Waki; Makato Yamashita; SFSDP: A Sparse Version of Full Semidefinite Programming Relaxation for Sensor + Network Localization Problems Matlab software package;Sensor network localization problems; +semidefinite programming relaxation;sparsity exploitation; 921 toms 28 20 38 4 August 2102 E4Maple Jonathan D. Hauenstein; Frank Sottile; alphaCertified: Certifying Solutions to Polynomial Systems Certified solutions;alpha theory;numerical algebraic geometry; +polynomial system; 922 toms 29 8 38 4 August 2012 D3 M Xia Ji; Jiguang Sun; Tiara Turner; A Mixed Finite Element Method for Helmholtz Transmission Eigenvalues Arnoldi method;Transmission eigenvalues;mixed finite element; 923 toms 30 17 38 4 August 2012 F3 F Michael Wimmer; Efficient Numerical Computation of the Pfaffian for Dense and Banded + Skew-Symmetric Matrices Pfaffian;canonical form;skew-symmetric matrix;topological charge; +unitary congruence; 924 toms 5 28 39 1 November 2012 D2 M/C Alberto Abad; Roberto Barrio; Fernando Blesa; Marcos Rodriguez; TIDES, a Taylor Series Integrator for Differential EquationS Taylor series method;automatic differentiation;high precision; +numerical integration; 925 toms 6 22 39 1 November 2012 H CPP Makoto Yamashita; Katsuki Fujisawa; Mituhiro Fukuda; Kazuhide Nakata; + Maho Nakata; Parallel solver for semidefinite programming problem having sparse Schur + complement matrix Semidefinite programming; 926 toms 14 9 39 2 February 2013 S14 F Ian Thompson; Incomplete gamma functions with negative arguments Incomplete gamma function; 927 toms 15 12 39 2 February 2013 D2 M Jeff Cash; Davy Hollevoet; Francesca Mazzia; Abdelhameed Nagy; The MATLAB Code bvptwp.m for the Numerical Solution of Two Point +Boundary Value Problems Boundary Value Problems;Deferred Correction;Automatic Continua-;tion; +Mesh selection;Conditioning; 928 toms 21 10 39 3 May 2013 h C Joseph Rios; A General, Parallel Implementation of {Dantzig--Wolfe} Decomposition linear programming;optimization;parallel implementations; 929 toms 27 28 39 4 July 2013 z M Mani Mehra; Kavita Goyal; A suite on wavelet differentiation algorithms differentiation matrices;wavelet methods (Galerkin and collocation);wavelets; 930 toms 28 18 39 4 July 2013 f4 M Timothy A. Davis; FACTORIZE: An object-oriented linear system solver for MATLAB linear systems;least-squares problems;matrix factorization; +object-oriented methods; 931 toms 5 16 40 1 October 2013 c5 M Wenrui Hao; Andrew J. Sommese; Zhonggang Zeng; An algorithm and software for computing multiplicity structures at zeros of + nonlinear systems polynomial;multiple roots;multiplicity; 932 toms 6 25 40 1 October 2013 z M Martin J. Gander; Caroline Japhet; {PANG}: Software for Non-Matching Grid Projections in 2d and 3d with Linear + Complexity advancing front algorithm;linear complexity;non-matching grid projections; 933 toms 7 23 40 1 October 2013 f1 M Leslie V. Foster; Timothy A. Davis; Reliable Calculation of Numerical Rank, Null Space Bases, Pseudoinverse + Solutions, and Basic Solutions using {SuiteSparseQR} numerical rank;QR factorization;null space;pseudoinverse;rank revealing; +sparse matrices; 934 toms 8 19 40 1 October 2013 s22 F90 Danilo Erricolo; Giuseppe Carluccio; Fortran 90 subroutines to compute Mathieu functions for complex values of the + parameter Mathieu function;computation;special function;validation; 935 toms 14 12 40 2 February 2014 S20 M J. Tilak Ratnanather; Jung H. Kim; Sirong Zhang; Anthony M. J. Davis; + Stephen K. Lucas; {IIPBF}, a {MATLAB} toolbox for infinite integral of products of two {Bessel} + functions Bessel Function;Quadrature;Extrapolation;Adaptive Quadrature;Summation; 936 toms 15 4 40 2 February 2014 Z F90 Fred T. Krogh; A {Fortran} Message Processor Messages;Error Processing;Exception Handling; 937 toms 16 12 40 2 February 2014F4/E4 F90 Sou-Cheng T. Choi; Michael A. Saunders; {MINRES-QLP} for symmetric and {Hermitian} linear equations and least-squares + problems Krylov subspace method;Lanczos process;conjugate-gradient method; +singular least-squares;linear equations;minimum-residual method; +pseudoinverse solution;ill-posed problem;regression;sparse matrix; +data encapsulation; 938 toms 17 12 40 2 February 2014 g1 J John C. Gunther; Compressing Circular Buffers Average;data aggregation;complete residue system;Compressing Circular Buffer; +data sequence;doubling;dynamically sized arrays;lossy compression;maximum,; +minimum;modular arithmetic;number theory;random sample;relatively prime;sum; 939 toms 20 21 40 3 April 2014 s22 F90 Amparo Gil; Javier Segura; Nico M. Temme; Computation of the {Marcum} {Q}-function Marcum Q-function;noncentral chi-square distribution; 940 toms 21 21 40 3 April 2014 Z CPP Blake Nelson; Robert M Kirby; Steven Parker; Optimal Accumulator-Based Expression Evaluation Through the Use of Expression + Templates C++;dense linear algebra operations;expression templates; +template metaprogramming;temporary storage minimization; 941 toms 22 22 40 3 April 2014 f1 M Daniel Kressner; Christine Tobler; \texttt{htucker}---A MATLAB toolbox for tensors in hierarchical {Tucker} format Higher-order tensors;multilinear algebra;tensor networks;matlab; 942 toms 23 39 40 3 April 2014 d3 C Ra\'{u}l {de la Cruz}; Mauricio Araya-Polo; Semi-stencil Stencil computation;Semi-stencil;Blocking;Time Skewing;Cache +Oblivious;HPC;Code Optimization;Performance Model ============================================================================== Instructions The library routines are in the file lib.f. These routines take a compressed reference and place its components in the pair of COMMON blocks CREFNO and CREFST. There are two example programs Example 1 -- Building a bibtex database --------------------------------------- Edit the routines SETUP in shared.f and OUTSET in bibeg.f to ensure the OPEN statements are valid. Compile and link lib.f shared.f bibeg.f using your favourite Fortran 77 compiler. Running the resultant object code should produce the bibtex database in the file specified in OUTSET. Example 2 -- Cumulative index sorted on SHARE index --------------------------------------------------- Edit the routines SETUP in shared.f and OUTCUM in cumeg.f to ensure the OPEN statements are valid. Compile and link lib.f shared.f cumeg.f using your favourite Fortran 77 compiler. NOTE: If you are running on a UNIX system you may need to use the file cumeg.unix.f because of the use of backslashes in write statements. Running the resultant object code should produce the LaTeX input necessary to generate a cumulative index. ============================================================================== bibeg.f PROGRAM BIBTEX * * program to generate a bibtex data base from the data * reference file * * .. Parameters .. INTEGER MAXBUF PARAMETER (MAXBUF=80) INTEGER AUTLEN,TITLEN,KEYLEN,OTHLEN PARAMETER (AUTLEN=80,TITLEN=160,KEYLEN=400,OTHLEN=300) INTEGER NCLASS PARAMETER (NCLASS=57) INTEGER MAXALG PARAMETER (MAXALG=750) * .. * .. Scalars in Common .. INTEGER MAXSHR,NERR,NIN,NOALGS,NOUT,NUMBER,PAGEND,PAGEST,TYPE, + VOLUME,YEAR LOGICAL EOF CHARACTER BUFFER* (MAXBUF),ALABEL* (6),JOURNL* (4),MONTH* (9), + LANG* (3),SHARE* (3) * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG), + SHARPT(NCLASS+1),SHSORT(MAXALG),VOL(MAXALG) CHARACTER AUTHOR(AUTLEN),JOUR(MAXALG),KEYWDS(KEYLEN), + OTHERS(OTHLEN),REFS(OTHLEN,MAXALG),TITLE(TITLEN), + TITLES(TITLEN,MAXALG),SHAR(MAXALG)*3,LABEL(MAXALG)*6, + SHARMN(NCLASS)* (3),SHARST(NCLASS)* (45) * .. * .. Common blocks .. * * common block for storing information required to * build an accumulative index based on the shar * classification * * For each of the noalgs algorithms * titles (character array) stores full titles, * refs (character array) stores the comments and remarks * in compressed form * jour (character array) holds the journal code * (c=cacm, t=toms, x=others) * shar (character array) holds the shar index * vol (integer array) holds the volume number * page (integer array) holds the start page of the article * label (character array) stores the algorithm number * * lentit (integer array) stores the number of significant * characters in the title * lenoth (integer array) stores the number of significant * characters in the other entries * shsort (integer array) contains a sorted list of indexes * by shar classification * COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL * * nout is used to define the output channel for * the bibtex database -- see subroutine outcum * COMMON /CBIB/NOUT * * eof (logical) - true if no more references to process * false otherwise * type (integer) - type of current input line * newfld (1) - a new field * cont (2) - a continuation line * newalg (3) - a new reference entry * newfld, cont and newalg are parameter values * nin (integer) - unit number for data reference file * nerr (integer) - unit number for error messages * COMMON /CIO/EOF,TYPE,NIN,NERR * * buffer (character*(maxbuf)) - used to buffer each line of data * prior to processing. For the * distributed version of the data * file maxbuf may be set to 80. * COMMON /CIOSTR/BUFFER * * common block holds reference items which may usefully be * represented by integers. * * volume - volume number * number - issue number (1-12 for cacm, 1-4 for toms) * year - year of publication * pagest - start page of article * pagend - end page of article (set zero if whole article confined * to a single page * COMMON /CREFNO/VOLUME,NUMBER,YEAR,PAGEST,PAGEND * * stores reference fields in string form * * alabel*(6) - label used to identify an algorithm. In all cases * but two this is an integer. In the odd two cases * it is an integer followed by the letter 'a'. * journl*(4) - either 'cacm' or 'toms' * month *(9) - month of publication e.g., January, December etc. * lang *(3) - language in which algorithm is coded * 'F' = Fortran (66 or 77); 'A60' = Algol 60; * 'R' = Ratfor' ; 'PL1' = PL1; * share *(3) - Share classification index * author(autlen) - possibly multiple author names. All author fields * end with a semi colon, multiple authors are * separated by semi colons. * title (titlen) - possibly multiline title concatenated into a single * string. Multiple blanks are compressed to a single * blank. * keywds(keylen) - list of keywords separated by semi colons and * terminated by a semi colon. * others(othlen) - list of remarks and certificates pertaining to the * current reference separated by and terminated by a * semi colon. Each entry has the following form * * R or C,journal,start page,end page,volume,number,month,year,authors; * * The first field states whether the article was a * Remark or Certificate. * Multiple authors are separated by ' and '. * All other field are as described in the main * reference. * * autlen, titlen, keylen, othlen are parameter values. COMMON /CREFST/ALABEL,JOURNL,MONTH,LANG,SHARE,AUTHOR,TITLE,KEYWDS, + OTHERS * * common block containing information on shar classification index * * sharmn (character array) containing the shar mnemonics * sharst (character array) containing explanatory strings * sharpt (integer array) used to store pointers into the * array containing sorted list of * algorithms * * maxshr (integer) maximum number of shar classifications * COMMON /CSHAR/SHARMN,SHARST COMMON /CSHARN/MAXSHR,SHARPT * .. * .. Save statement .. SAVE /CBIB/,/CIO/,/CIOSTR/,/CREFNO/,/CREFST/,/CSHAR/,/CSHARN/, + /CALLST/,/CALLIN/ * .. External Functions .. LOGICAL GETREF EXTERNAL GETREF * .. * .. External Subroutines .. EXTERNAL INITRF,OUTREF,OUTSET,PRMBLE,SETUP * .. * .. Executable Statements .. * set up machine dependent values CALL SETUP * initialize data file system CALL INITRF * open output file CALL OUTSET CALL PRMBLE * keep processing until the end of file 10 IF (GETREF()) THEN CALL OUTREF GO TO 10 END IF END INTEGER FUNCTION INDARR(ARRAY,LENARR,ABEG,SPTSTR) * *.. return the element of the start of the string sptstr in *.. character array array; zero if not present * * .. Scalar Arguments .. INTEGER ABEG,LENARR CHARACTER SPTSTR* (*) * .. * .. Array Arguments .. CHARACTER ARRAY(LENARR) * .. * .. Local Scalars .. INTEGER I,J,SPTLEN * .. * .. Intrinsic Functions .. INTRINSIC LEN * .. * .. Executable Statements .. SPTLEN = LEN(SPTSTR) DO 20 I = ABEG - 1,LENARR - SPTLEN DO 10 J = 1,SPTLEN IF (ARRAY(I+J).NE.SPTSTR(J:J)) GO TO 20 10 CONTINUE *.. match INDARR = I + 1 RETURN 20 CONTINUE *.. no match INDARR = 0 END SUBROUTINE OUTAUT(AUTHOR,AUTLEN) * * output the author field with quotes in the form * author = string * author is a string containing possibly multiple * authors separated by semi colons. * The output field will be restricted to lines of * width maxlin split after either an authors name * or an " and ' separator. * land is the length of the string andstr * * .. Parameters .. INTEGER MAXLIN,MAXAUT,LAND PARAMETER (MAXLIN=80,MAXAUT=10,LAND=5) CHARACTER*(*) QUOTE,COMMA,SEMIC,ANDSTR PARAMETER (QUOTE='"',COMMA=',',SEMIC=';',ANDSTR=' and ') * .. * .. Scalar Arguments .. INTEGER AUTLEN * .. * .. Array Arguments .. CHARACTER AUTHOR(AUTLEN) * .. * .. Local Scalars .. INTEGER ALEN,IARR,IST,NARRAY CHARACTER LINE* (MAXLIN) * .. * .. Local Arrays .. CHARACTER AUTARR(MAXAUT)* (MAXLIN) * .. * .. External Functions .. INTEGER LENARR,LENGTH EXTERNAL LENARR,LENGTH * .. * .. External Subroutines .. EXTERNAL ERROR,OUTLIN,SPLIT * .. * .. Executable Statements .. * * split the line into its narray authors ALEN = LENARR(AUTHOR,AUTLEN) CALL SPLIT(AUTHOR,ALEN,AUTARR,NARRAY,SEMIC) * initialize LINE(1:12) = ' author='//QUOTE IST = 12 IARR = 1 * loop through the authors 10 ALEN = LENGTH(AUTARR(IARR)) * don't split an authors name IF (ALEN.GT.MAXLIN-1) THEN CALL ERROR('Increase maxlin in outaut') END IF * see if there is room for this author IF (IST+ALEN.LT.MAXLIN) THEN LINE(IST+1:IST+ALEN) = AUTARR(IARR) (1:ALEN) IST = IST + ALEN ELSE * if not flush current line CALL OUTLIN(LINE,IST) LINE(1:ALEN) = AUTARR(IARR) (1:ALEN) IST = ALEN END IF IF (IARR.NE.NARRAY) THEN * more authors to come -- put the and in IF (IST+LAND.LT.MAXLIN) THEN LINE(IST+1:IST+LAND) = ANDSTR IST = IST + LAND ELSE * not enough room CALL OUTLIN(LINE,IST) LINE(1:LAND) = ANDSTR IST = LAND END IF IARR = IARR + 1 GO TO 10 END IF * finished - there is always room for the final quote and comma LINE(IST+1:IST+2) = QUOTE//COMMA CALL OUTLIN(LINE,IST+2) END SUBROUTINE OUTCLS * * output the final closing brace * * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Executable Statements .. CALL OUTLIN('}',1) END SUBROUTINE OUTJRL(JOURNL) * * outputs the final field in the reference in the form * journal = cacm * or journal = toms * here we are using string substitution (see prmble for * the string definitions). * * Because it is the last field there is no trailing comma. * * .. Parameters .. INTEGER MAXLIN PARAMETER (MAXLIN=80) * .. * .. Scalar Arguments .. CHARACTER JOURNL* (*) * .. * .. Local Scalars .. CHARACTER LINE* (MAXLIN) * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Executable Statements .. LINE(1:16) = ' journal='//JOURNL CALL OUTLIN(LINE,16) END SUBROUTINE OUTKEY(ALABEL) * * output the initial line for a bibtex reference * @article{keyword * The keyword is made up of the parameter string prefix and * the label given to the algorithm on publication -- in * all cases bar two this was an integer, in the two odd cases * an integer with an 'a' appended. * * .. Parameters .. INTEGER MAXLIN CHARACTER*(*) PREFIX,COMMA PARAMETER (MAXLIN=80,PREFIX='acmalg',COMMA=',') * .. * .. Scalar Arguments .. CHARACTER ALABEL* (*) * .. * .. Local Scalars .. INTEGER ALEN,LENG CHARACTER LINE* (MAXLIN) * .. * .. External Functions .. INTEGER LENGTH EXTERNAL LENGTH * .. * .. External Subroutines .. EXTERNAL ERROR,OUTLIN * .. * .. Intrinsic Functions .. INTRINSIC LEN * .. * .. Executable Statements .. * * want to strip trailing blanks ALEN = LENGTH(ALABEL) * error if label field is blank IF (ALEN.EQ.0) THEN CALL ERROR('Blank label field in outkey') END IF LINE = '@article{'//PREFIX//ALABEL(1:ALEN)//COMMA LENG = 9 + LEN(PREFIX) + ALEN + 1 CALL OUTLIN(LINE,LENG) END SUBROUTINE OUTMON(MONTH) * * output the month field in the format * month = string * This routine outputs an explicit string. Lamport * suggests using string definitions for this. The required * changes are straightforward but the string definitions * need to be included within the resulting .bib file *(see comments in prmble) * * .. Parameters .. INTEGER MAXLIN CHARACTER QUOTE,SPACE,COMMA PARAMETER (MAXLIN=80,QUOTE='"',SPACE=' ',COMMA=',') * .. * .. Scalar Arguments .. CHARACTER MONTH* (*) * .. * .. Local Scalars .. INTEGER ALEN,I,IST CHARACTER LINE* (MAXLIN) * .. * .. External Functions .. INTEGER LENGTH EXTERNAL LENGTH * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Executable Statements .. * * initialize LINE(1:11) = ' month='//QUOTE IST = 11 *strip leading blanks from month ALEN = LENGTH(MONTH) DO 10 I = 1,ALEN IF (MONTH(I:I).NE.SPACE) GO TO 15 10 CONTINUE 15 LINE(IST+1:IST-I+ALEN+3) = MONTH(I:ALEN)//QUOTE//COMMA CALL OUTLIN(LINE,IST-I+ALEN+3) END SUBROUTINE OUTNUM(NUMBER,FIELD) * * output a numerical value with a field name field * 1.e. field = number * This is used to output the volume, number and year fields. * * .. Parameters .. INTEGER MAXLIN CHARACTER COMMA INTEGER NUMLEN PARAMETER (MAXLIN=80,COMMA=',',NUMLEN=6) * .. * .. Scalar Arguments .. INTEGER NUMBER CHARACTER FIELD* (*) * .. * .. Local Scalars .. INTEGER IST,NLEN CHARACTER LINE* (MAXLIN),NUMSTR* (NUMLEN) * .. * .. External Functions .. INTEGER ITOA,LENGTH EXTERNAL ITOA,LENGTH * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Executable Statements .. * * initialize * IST = LENGTH(FIELD) LINE(1:IST) = FIELD(1:IST) NLEN = ITOA(NUMBER,NUMSTR) LINE(IST+1:IST+NLEN+1) = NUMSTR(1:NLEN)//COMMA CALL OUTLIN(LINE,IST+NLEN+1) END SUBROUTINE OUTPGS(PAGEST,PAGEND) * * output the pages field in the format * pages = "pagest--pagend" * or pages = "pagest" * if there is no range * * .. Parameters .. INTEGER MAXLIN CHARACTER QUOTE,COMMA PARAMETER (MAXLIN=80,QUOTE='"',COMMA=',') * .. * .. Scalar Arguments .. INTEGER PAGEND,PAGEST * .. * .. Local Scalars .. INTEGER IST,NLEN CHARACTER LINE* (MAXLIN),NUMSTR* (6) * .. * .. External Functions .. INTEGER ITOA EXTERNAL ITOA * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Executable Statements .. * initialize LINE(1:11) = ' pages='//QUOTE IST = 11 * turn pagest into a string NLEN = ITOA(PAGEST,NUMSTR) LINE(IST+1:IST+NLEN) = NUMSTR(1:NLEN) IST = IST + NLEN * deal with possible range * pagend=0 if just a single page reference IF (PAGEND.NE.0) THEN LINE(IST+1:IST+2) = '--' IST = IST + 2 NLEN = ITOA(PAGEND,NUMSTR) LINE(IST+1:IST+NLEN) = NUMSTR(1:NLEN) IST = IST + NLEN END IF *add the final comma LINE(IST+1:IST+2) = QUOTE//COMMA CALL OUTLIN(LINE,IST+2) END SUBROUTINE OUTREF * * output a single bibliographic entry * * .. Parameters .. INTEGER AUTLEN,TITLEN,KEYLEN,OTHLEN PARAMETER (AUTLEN=80,TITLEN=160,KEYLEN=400,OTHLEN=300) * .. * .. Scalars in Common .. INTEGER NUMBER,PAGEND,PAGEST,VOLUME,YEAR CHARACTER ALABEL* (6),JOURNL* (4),MONTH* (9),LANG* (3),SHARE* (3) * .. * .. Arrays in Common .. CHARACTER AUTHOR(AUTLEN),KEYWDS(KEYLEN),OTHERS(OTHLEN), + TITLE(TITLEN) * .. * .. External Subroutines .. EXTERNAL OUTAUT,OUTCLS,OUTJRL,OUTKEY,OUTMON,OUTNUM,OUTPGS,OUTTIT * .. * .. Common blocks .. COMMON /CREFNO/VOLUME,NUMBER,YEAR,PAGEST,PAGEND COMMON /CREFST/ALABEL,JOURNL,MONTH,LANG,SHARE,AUTHOR,TITLE,KEYWDS, + OTHERS * .. * .. Save statement .. SAVE /CREFNO/,/CREFST/ * .. * .. Executable Statements .. * * @article{keyword CALL OUTKEY(ALABEL) * author field CALL OUTAUT(AUTHOR,AUTLEN) * title field CALL OUTTIT(TITLE,TITLEN) * volume field CALL OUTNUM(VOLUME,' volume=') * number field CALL OUTNUM(NUMBER,' number=') * pages field CALL OUTPGS(PAGEST,PAGEND) * year field CALL OUTNUM(YEAR,' year=') * month field CALL OUTMON(MONTH) * journal field CALL OUTJRL(JOURNL) * closing brace CALL OUTCLS END SUBROUTINE OUTSET * * open file for output of bibtex references * unit number nout must not clash with nin and nerr * which are initialized in routine setup * * .. Scalars in Common .. INTEGER NOUT * .. * .. External Subroutines .. EXTERNAL ERROR * .. * .. Common blocks .. COMMON /CBIB/NOUT * .. * .. Save statement .. SAVE /CBIB/ * .. * .. Executable Statements .. NOUT = 7 OPEN (UNIT=NOUT,FILE='acm.bib',STATUS='unknown',FORM='formatted', + ACCESS='sequential',ERR=10) RETURN * deal with possible error opening output file 10 CALL ERROR('Failed to open file for bibtex database') END SUBROUTINE OUTTIT(TITLE,TITLEN) * * output the title field in quotes * title = string * The output field will be restricted to lines of * width maxlin split on a space * * .. Parameters .. INTEGER MAXLIN CHARACTER QUOTE,COMMA,SPACE PARAMETER (MAXLIN=80,QUOTE='"',COMMA=',',SPACE=' ') * .. * .. Scalar Arguments .. INTEGER TITLEN * .. * .. Array Arguments .. CHARACTER TITLE(TITLEN) * .. * .. Local Scalars .. INTEGER ALEN,I,IEND,IPTR,IST,TLEN CHARACTER LINE* (MAXLIN) * .. * .. External Functions .. INTEGER LENARR EXTERNAL LENARR * .. * .. External Subroutines .. EXTERNAL ERROR,OUTLIN,STRARR * .. * .. Executable Statements .. * * initialize LINE(1:11) = ' title='//QUOTE IST = 11 TLEN = LENARR(TITLE,TITLEN) ALEN = TLEN IEND = 1 * can we output the rest of the title on one line 10 IF (IST+ALEN.GT.MAXLIN-2) THEN * break on a space IPTR = MAXLIN - IST - 3 DO 20 I = IPTR + IEND,IEND,-1 IF (TITLE(I).EQ.SPACE) THEN GO TO 30 END IF 20 CONTINUE CALL ERROR('Increase maxlin in outtit') * cut here 30 CALL STRARR(LINE,IST+1,TITLE,IEND,I-IEND-1) CALL OUTLIN(LINE,IST+I-IEND) IEND = I + 1 ALEN = TLEN - IEND + 1 IST = 0 GO TO 10 ELSE CALL STRARR(LINE,IST+1,TITLE,IEND,ALEN-1) IST = IST + ALEN END IF * it fits output with closing quote and comma LINE(IST+1:IST+2) = QUOTE//COMMA CALL OUTLIN(LINE,IST+2) END SUBROUTINE PRMBLE * * output any preamble to the .bib file * Here we output string definitions for cacm or toms. * If string substitution were to be used for months * the definitions could also be placed here. * * .. Parameters .. INTEGER MAXLIN PARAMETER (MAXLIN=80) * .. * .. Local Scalars .. CHARACTER LINE* (MAXLIN) * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Executable Statements .. LINE(1:39) = '@string{toms="ACM Trans. Math. Softw."}' CALL OUTLIN(LINE,39) LINE(1:27) = '@string{cacm="Commun. ACM"}' CALL OUTLIN(LINE,27) LINE(1:26) = '@string{topl="ACM TOPLAS"}' CALL OUTLIN(LINE,26) END SUBROUTINE SPLIT(STRING,LENSTR,ARRAY,NARRAY,SPTSTR) * * routine split splits the string string into narray pieces * using the separator string sptstr. Substrings are stored * in the array array. * * .. Parameters .. CHARACTER SPACE PARAMETER (SPACE=' ') * .. * .. Scalar Arguments .. INTEGER LENSTR,NARRAY CHARACTER SPTSTR* (*) * .. * .. Array Arguments .. CHARACTER STRING(LENSTR),ARRAY(*)* (*) * .. * .. Local Scalars .. INTEGER I,IEND,IST,SPTLEN * .. * .. External Functions .. INTEGER INDARR EXTERNAL INDARR * .. * .. External Subroutines .. EXTERNAL STRARR * .. * .. Intrinsic Functions .. INTRINSIC LEN * .. * .. Executable Statements .. SPTLEN = LEN(SPTSTR) NARRAY = 0 IST = 1 10 IEND = INDARR(STRING,LENSTR,IST,SPTSTR) IF (IEND.NE.0) THEN NARRAY = NARRAY + 1 * * lose leading spaces DO 20 I = IST,IEND - 1 IF (STRING(I).NE.SPACE) THEN GO TO 30 END IF 20 CONTINUE 30 CONTINUE ARRAY(NARRAY) = SPACE CALL STRARR(ARRAY(NARRAY),1,STRING,I,IEND-1-I) IST = IEND + SPTLEN GO TO 10 END IF END SUBROUTINE STRARR(STRING,SBEG,ARRAY,ABEG,LENG) * *.. copy array(abeg) .. array(abeg+leng) to string(sbeg:sbeg+leng) * * .. Scalar Arguments .. INTEGER ABEG,LENG,SBEG CHARACTER STRING* (*) * .. * .. Array Arguments .. CHARACTER ARRAY(ABEG+LENG) * .. * .. Local Scalars .. INTEGER I * .. * .. Executable Statements .. DO 10 I = 0,LENG STRING(SBEG+I:SBEG+I) = ARRAY(ABEG+I) 10 CONTINUE END ============================================================================== cumeg.f SUBROUTINE ADDSHR(SHARVL,NOALG) * * Add the current algorithm into the sorted shar array. * This is pretty crude but given the program will be run * only infrequently we think it's good enough. * * sharvl -- shar index associated with current algorithm * noalg -- index into volume, pages etc arrays for current * algorithm information. * * * .. Parameters .. CHARACTER*(*) MESS PARAMETER (MESS='Unrecognized share value ') INTEGER MAXALG,TITLEN,OTHLEN PARAMETER (MAXALG=750,TITLEN=160,OTHLEN=300) INTEGER NCLASS PARAMETER (NCLASS=57) * .. * .. Scalar Arguments .. INTEGER NOALG CHARACTER SHARVL* (3) * .. * .. Scalars in Common .. INTEGER MAXSHR,NOALGS,SVAL * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG), + SHARPT(NCLASS+1),SHSORT(MAXALG),VOL(MAXALG) CHARACTER JOUR(MAXALG),REFS(OTHLEN,MAXALG),TITLES(TITLEN,MAXALG), + SHAR(MAXALG)*3,LABEL(MAXALG)*6,SHARMN(NCLASS)* (3), + SHARST(NCLASS)* (45) * .. * .. Local Scalars .. INTEGER I,J,POS,SHPOS CHARACTER SHTEMP* (3) * .. * .. External Functions .. INTEGER BINCHP EXTERNAL BINCHP * .. * .. External Subroutines .. EXTERNAL ERROR,SHARFX * .. * .. Common blocks .. COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL COMMON /CSHAR/SHARMN,SHARST COMMON /CSHARN/MAXSHR,SHARPT,SVAL * .. * .. Save statement .. SAVE /CALLST/,/CALLIN/,/CSHAR/,/CSHARN/ * .. * .. Executable Statements .. * * find pointer position for current shar value * converting sharvl to upper case if necessary SHTEMP = SHARVL CALL SHARFX(SHTEMP) POS = BINCHP(SHTEMP,SHARMN,MAXSHR) IF (POS.EQ.0) THEN * stop if not found CALL ERROR(MESS//SHTEMP) END IF * * locate where new entry should go -- want it at * the end of the current list to ensure that the entries * associated with each shar classification remain sorted. * SHPOS = POS DO 30 I = POS + 1,MAXSHR * * find first non-zero pointer IF (SHARPT(I).NE.0) THEN SHPOS = SHARPT(I) * * update this and other pointers DO 10 J = I,MAXSHR IF (SHARPT(J).NE.0) THEN SHARPT(J) = SHARPT(J) + 1 END IF 10 CONTINUE * * insert the new entry DO 20 J = NOALG - 1,SHPOS,-1 SHSORT(J+1) = SHSORT(J) 20 CONTINUE SHSORT(SHPOS) = NOALG IF (SHARPT(POS).EQ.0) THEN SHARPT(POS) = SHPOS END IF RETURN END IF 30 CONTINUE * * add to end of list and update pointer if necessary SHSORT(NOALG) = NOALG IF (SHARPT(SHPOS).EQ.0) THEN SHARPT(SHPOS) = NOALG END IF END BLOCK DATA BDSHAR * * Initialize share mnemonic and descriptive string arrays * * .. Parameters .. INTEGER NCLASS, NCLAS1 PARAMETER (NCLASS=57,NCLAS1=NCLASS+1) * .. * .. Scalars in Common .. INTEGER MAXSHR,SVAL * .. * .. Arrays in Common .. INTEGER SHARPT(NCLASS+1) CHARACTER SHARMN(NCLASS)* (3),SHARST(NCLASS)* (45) * .. * .. Common blocks .. COMMON /CSHAR/SHARMN,SHARST COMMON /CSHARN/MAXSHR,SHARPT,SVAL * .. * .. Save statement .. SAVE /CSHAR/,/CSHARN/ * .. * .. Data statements .. DATA SHARMN(1)/'A1 '/ DATA SHARST(1)/'Real Arithmetic, Number Theory'/ DATA SHARMN(2)/'A2 '/ DATA SHARST(2)/'Complex Arithmetic'/ DATA SHARMN(3)/'B1 '/ DATA SHARST(3)/'Trig and Inverse Trig Functions'/ DATA SHARMN(4)/'B2 '/ DATA SHARST(4)/'Hyperbolic Functions'/ DATA SHARMN(5)/'B3 '/ DATA SHARST(5)/'Exponential and Logarithmic Functions'/ DATA SHARMN(6)/'B4 '/ DATA SHARST(6)/'Roots and Powers'/ DATA SHARMN(7)/'C1 '/ DATA SHARST(7)/'Operations on Polynomials and Power Series'/ DATA SHARMN(8)/'C2 '/ DATA SHARST(8)/'Zeros of Polynomials'/ DATA SHARMN(9)/'C5 '/ DATA SHARST(9)/'Zeros of one or more Nonlinear Equations'/ DATA SHARMN(10)/'C6 '/ DATA SHARST(10)/'Summation of Series, Convergence Acceleration'/ DATA SHARMN(11)/'D1 '/ DATA SHARST(11)/'Quadrature'/ DATA SHARMN(12)/'D2 '/ DATA SHARST(12)/'Ordinary Differential Equations'/ DATA SHARMN(13)/'D3 '/ DATA SHARST(13)/'Partial Differential Equations'/ DATA SHARMN(14)/'D4 '/ DATA SHARST(14)/'Differentiation'/ DATA SHARMN(15)/'D5 '/ DATA SHARST(15)/'Integral Equations'/ DATA SHARMN(16)/'E1 '/ DATA SHARST(16)/'Interpolation'/ DATA SHARMN(17)/'E2 '/ DATA SHARST(17)/'Curve and Surface Fitting'/ DATA SHARMN(18)/'E3 '/ DATA SHARST(18)/'Smoothing'/ DATA SHARMN(19)/'E4 '/ DATA SHARST(19)/'Minimizing or Maximizing a Function'/ DATA SHARMN(20)/'F1 '/ DATA SHARST(20)/'Matrix Operations, including Inversion'/ DATA SHARMN(21)/'F2 '/ DATA SHARST(21)/'Eigenvalues and Eigenvectors of a Matrix'/ DATA SHARMN(22)/'F3 '/ DATA SHARST(22)/'Determinants'/ DATA SHARMN(23)/'F4 '/ DATA SHARST(23)/'Simultaneous Linear Equations'/ DATA SHARMN(24)/'F5 '/ DATA SHARST(24)/'Orthogonalization'/ DATA SHARMN(25)/'G1 '/ DATA SHARST(25)/'Simple Calculations on Statistical Data'/ DATA SHARMN(26)/'G2 '/ DATA SHARST(26)/'Correlation and Regression Analysis'/ DATA SHARMN(27)/'G5 '/ DATA SHARST(27)/'Random Number Generators'/ DATA SHARMN(28)/'G6 '/ DATA SHARST(28)/'Permutations and Combinations'/ DATA SHARMN(29)/'G7 '/ DATA SHARST(29)/'Subset Generators'/ DATA SHARMN(30)/'H '/ DATA SHARST(30)/'Operations Research, Graph Structure'/ DATA SHARMN(31)/'I5 '/ DATA SHARST(31)/'Input -- Composite'/ DATA SHARMN(32)/'J6 '/ DATA SHARST(32)/'Plotting'/ DATA SHARMN(33)/'K2 '/ DATA SHARST(33)/'Relocation'/ DATA SHARMN(34)/'L2 '/ DATA SHARST(34)/'Compiling'/ DATA SHARMN(35)/'M1 '/ DATA SHARST(35)/'Sorting'/ DATA SHARMN(36)/'M2 '/ DATA SHARST(36)/'Data Conversion and Scaling'/ DATA SHARMN(37)/'O2 '/ DATA SHARST(37)/'Simulation of Computing Structure'/ DATA SHARMN(38)/'R2 '/ DATA SHARST(38)/'Symbol Manipulation'/ DATA SHARMN(39)/'S '/ DATA SHARST(39)/'Approximation of Special Functions'/ DATA SVAL/39/ DATA SHARMN(40)/'S03'/ DATA SHARST(40)/' '/ DATA SHARMN(41)/'S04'/ DATA SHARST(41)/' '/ DATA SHARMN(42)/'S07'/ DATA SHARST(42)/' '/ DATA SHARMN(43)/'S09'/ DATA SHARST(43)/' '/ DATA SHARMN(44)/'S13'/ DATA SHARST(44)/' '/ DATA SHARMN(45)/'S14'/ DATA SHARST(45)/' '/ DATA SHARMN(46)/'S15'/ DATA SHARST(46)/' '/ DATA SHARMN(47)/'S16'/ DATA SHARST(47)/' '/ DATA SHARMN(48)/'S17'/ DATA SHARST(48)/' '/ DATA SHARMN(49)/'S18'/ DATA SHARST(49)/' '/ DATA SHARMN(50)/'S19'/ DATA SHARST(50)/' '/ DATA SHARMN(51)/'S20'/ DATA SHARST(51)/' '/ DATA SHARMN(52)/'S21'/ DATA SHARST(52)/' '/ DATA SHARMN(53)/'S22'/ DATA SHARST(53)/' '/ DATA SHARMN(54)/'S23'/ DATA SHARST(54)/' '/ DATA SHARMN(55)/'XX '/ DATA SHARST(55)/'Unclassified'/ DATA SHARMN(56)/'Y1 '/ DATA SHARST(56)/'Physics Applications'/ DATA SHARMN(57)/'Z '/ DATA SHARST(57)/'All Others'/ DATA MAXSHR/NCLASS/ DATA SHARPT/NCLAS1*0/ * .. * .. Executable Statements .. END INTEGER FUNCTION BINCHP(TARGET,GIVEN,LENGTH) * * Find target in sorted array given(1..length) * using the binary chop algorithm * * returns 0 if target not in given(1..length) * returns p if given(p)=target for p=1..length * * .. Scalar Arguments .. INTEGER LENGTH CHARACTER TARGET* (3) * .. * .. Array Arguments .. CHARACTER GIVEN(LENGTH)* (3) * .. * .. Local Scalars .. INTEGER L,M,U * .. * .. Intrinsic Functions .. INTRINSIC LGT,LLT * .. * .. Executable Statements .. L = 1 U = LENGTH 10 IF (L.GT.U) THEN BINCHP = 0 RETURN END IF * halve the interval M = (L+U)/2 IF (LLT(GIVEN(M),TARGET)) THEN L = M + 1 GO TO 10 ELSE IF (LGT(GIVEN(M),TARGET)) THEN U = M - 1 GO TO 10 END IF BINCHP = M END PROGRAM CUMIND * * produces latex file to generate a cumulative index of * acm algorithms sorted by shar classification * * .. Parameters .. INTEGER MAXBUF PARAMETER (MAXBUF=80) INTEGER AUTLEN,TITLEN,KEYLEN,OTHLEN PARAMETER (AUTLEN=80,TITLEN=160,KEYLEN=400,OTHLEN=300) INTEGER NCLASS PARAMETER (NCLASS=57) INTEGER MAXALG PARAMETER (MAXALG=750) * .. * .. Scalars in Common .. INTEGER MAXSHR,NERR,NIN,NOALGS,NOUT,NUMBER,PAGEND,PAGEST,SVAL, + TYPE,VOLUME,YEAR LOGICAL EOF CHARACTER BUFFER* (MAXBUF),ALABEL* (6),JOURNL* (4),MONTH* (9), + LANG* (3),SHARE* (3) * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG), + SHARPT(NCLASS+1),SHSORT(MAXALG),VOL(MAXALG) CHARACTER AUTHOR(AUTLEN),JOUR(MAXALG),KEYWDS(KEYLEN), + OTHERS(OTHLEN),REFS(OTHLEN,MAXALG),TITLE(TITLEN), + TITLES(TITLEN,MAXALG),SHAR(MAXALG)*3,LABEL(MAXALG)*6, + SHARMN(NCLASS)* (3),SHARST(NCLASS)* (45) * .. * .. Local Scalars .. INTEGER CURPT,I,IPOS,LASTPT * .. * .. External Functions .. INTEGER GETPT LOGICAL GETREF EXTERNAL GETPT,GETREF * .. * .. External Subroutines .. EXTERNAL ADDSHR,INITRF,OUTALG,OUTCUM,OUTEND,OUTHED,OUTSH,SAVALG, + SETUP * .. * .. Common blocks .. * * common block for storing information required to * build an accumulative index based on the shar * classification * * For each of the noalgs algorithms * titles (character array) stores full titles, * refs (character array) stores the comments and remarks * in compressed form * jour (character array) holds the journal code * (c=cacm, t=toms, x=others) * shar (character array) holds the shar index * vol (integer array) holds the volume number * page (integer array) holds the start page of the article * label (character array) stores the algorithm number * * lentit (integer array) stores the number of significant * characters in the title * lenoth (integer array) stores the number of significant * characters in the other entries * shsort (integer array) contains a sorted list of indexes * by shar classification * COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL * * nout is used to define the output channel for * the bibtex database -- see subroutine outcum * COMMON /CBIB/NOUT * * eof (logical) - true if no more references to process * false otherwise * type (integer) - type of current input line * newfld (1) - a new field * cont (2) - a continuation line * newalg (3) - a new reference entry * newfld, cont and newalg are parameter values * nin (integer) - unit number for data reference file * nerr (integer) - unit number for error messages * COMMON /CIO/EOF,TYPE,NIN,NERR * * buffer (character*(maxbuf)) - used to buffer each line of data * prior to processing. For the * distributed version of the data * file maxbuf may be set to 80. * COMMON /CIOSTR/BUFFER * * common block holds reference items which may usefully be * represented by integers. * * volume - volume number * number - issue number (1-12 for cacm, 1-4 for toms) * year - year of publication * pagest - start page of article * pagend - end page of article (set zero if whole article confined * to a single page * COMMON /CREFNO/VOLUME,NUMBER,YEAR,PAGEST,PAGEND * * stores reference fields in string form * * alabel*(6) - label used to identify an algorithm. In all cases * but two this is an integer. In the odd two cases * it is an integer followed by the letter 'a'. * journl*(4) - either 'cacm' or 'toms' * month *(9) - month of publication e.g., January, December etc. * lang *(3) - language in which algorithm is coded * 'F' = Fortran (66 or 77); 'A60' = Algol 60; * 'R' = Ratfor' ; 'PL1' = PL1; * share *(3) - Share classification index * author(autlen) - possibly multiple author names. All author fields * end with a semi colon, multiple authors are * separated by semi colons. * title (titlen) - possibly multiline title concatenated into a single * string. Multiple blanks are compressed to a single * blank. * keywds(keylen) - list of keywords separated by semi colons and * terminated by a semi colon. * others(othlen) - list of remarks and certificates pertaining to the * current reference separated by and terminated by a * semi colon. Each entry has the following form * * R or C,journal,start page,end page,volume,number,month,year,authors; * * The first field states whether the article was a * Remark or Certificate. * Multiple authors are separated by ' and '. * All other field are as described in the main * reference. * * autlen, titlen, keylen, othlen are parameter values. COMMON /CREFST/ALABEL,JOURNL,MONTH,LANG,SHARE,AUTHOR,TITLE,KEYWDS, + OTHERS * * common block containing information on shar classification index * * sharmn (character array) containing the shar mnemonics * sharst (character array) containing explanatory strings * sharpt (integer array) used to store pointers into the * array containing sorted list of * algorithms * * maxshr (integer) maximum number of shar classifications * sval (integer) position of S section heading in the sharmn * and sharst arrays * COMMON /CSHAR/SHARMN,SHARST COMMON /CSHARN/MAXSHR,SHARPT,SVAL * .. * .. Save statement .. SAVE /CBIB/,/CIO/,/CIOSTR/,/CREFNO/,/CREFST/,/CSHAR/,/CSHARN/, + /CALLST/,/CALLIN/ * .. * .. Executable Statements .. * * set up i/o channels and open data file CALL SETUP * * set up output file for latex output CALL OUTCUM * * initialize input buffer for references CALL INITRF CALL OUTHED * * process all references 10 IF (GETREF()) THEN CALL SAVALG GO TO 10 END IF * * sort on shar index DO 20 I = 1,NOALGS J = I * * don't pass active do-loop variable as arg CALL ADDSHR(SHAR(J),J) 20 CONTINUE SHARPT(MAXSHR+1) = NOALGS + 1 * * loop through the classifications, outputting headings * where necessary and generating entries IPOS = 1 CURPT = GETPT(IPOS,MAXSHR+1,SHARPT) 30 LASTPT = GETPT(CURPT+1,MAXSHR+1,SHARPT) IF (LASTPT.NE.-1) THEN CALL OUTSH(CURPT) DO 40 I = SHARPT(CURPT),SHARPT(LASTPT) - 1 CALL OUTALG(SHSORT(I)) 40 CONTINUE CURPT = LASTPT GO TO 30 END IF * * windup complete latex file CALL OUTEND END SUBROUTINE GETOTC(FIELD,FLEN,OTHERS,OLEN) * * Routine to extract a list of the citation references * in the form e.g., C4:273 (cacm volume 4 p273). * * Multiple entries are separated by sepchr -- we use a * space for the LaTeX output. No sepchr is appended to the * end of the string. * * No explicit bound checks are performed on field * * * field -- character array on exit holds the list of * references * flen -- number of significant characters in field * on exit * others-- character array containing citation reference * olen -- number of significant characters in others * * .. Parameters .. CHARACTER SEPCHR PARAMETER (SEPCHR=' ') * .. * .. Scalar Arguments .. INTEGER FLEN,OLEN * .. * .. Array Arguments .. CHARACTER FIELD(*),OTHERS(*) * .. * .. Local Scalars .. INTEGER IFLEN,IPOS * .. * .. External Functions .. INTEGER NXTOTH,SEMPOS EXTERNAL NXTOTH,SEMPOS * .. * .. Executable Statements .. * no references FLEN = 0 IF (OLEN.EQ.0) THEN RETURN END IF * one or more IPOS = 1 FLEN = 1 10 IPOS = NXTOTH(IPOS,FIELD(FLEN),IFLEN,OTHERS) IPOS = SEMPOS(IPOS,OTHERS) FLEN = FLEN + IFLEN - 1 IF (IPOS.NE.OLEN) THEN IPOS = IPOS + 1 FIELD(FLEN+1) = SEPCHR FLEN = FLEN + 2 GO TO 10 END IF END INTEGER FUNCTION GETPT(IPOS,MAXPOS,ARRAY) * * Returns the first non-zero entry in the elements * array(ipos,...,maxpos). If ipos.gt.maxpos on entry * or all elements are zero returns -1. * * * .. Scalar Arguments .. INTEGER IPOS,MAXPOS * .. * .. Array Arguments .. INTEGER ARRAY(MAXPOS) * .. * .. Local Scalars .. INTEGER I,ITEMP * .. * .. Executable Statements .. * ITEMP = IPOS IF (ITEMP.GT.MAXPOS) THEN GETPT = -1 ELSE DO 10 I = ITEMP,MAXPOS IF (ARRAY(I).NE.0) THEN GETPT = I GO TO 20 END IF 10 CONTINUE * fallen off the end GETPT = -1 END IF 20 RETURN END INTEGER FUNCTION GOTHFD(IPOS,FIELD,FLEN,OTHERS) * * Get next field (separated by commas) from list of remarks * and certificates for a particular algorithm. * * ipos -- on entry points to the first character or first * following a comma or first following a semicolon * in the others array * field -- character variable to hold field on exit * flen -- number of characters written into field on exit * others-- character array holding the full other citation * references for a particular algorithm. * * This routine does not explicitly bound check field. * * Function returns the current position of the pointer in * the array others (could be a comma or a semi-colon) * * .. Parameters .. CHARACTER COMMA,SEMIC PARAMETER (COMMA=',',SEMIC=';') * .. * .. Scalar Arguments .. INTEGER FLEN,IPOS CHARACTER FIELD* (*) * .. * .. Array Arguments .. CHARACTER OTHERS(*) * .. * .. Local Scalars .. INTEGER ITEMP * .. * .. Executable Statements .. FIELD(1:1) = OTHERS(IPOS) ITEMP = IPOS FLEN = 1 10 ITEMP = ITEMP + 1 IF (OTHERS(ITEMP).NE.COMMA .AND. OTHERS(ITEMP).NE.SEMIC) THEN FLEN = FLEN + 1 FIELD(FLEN:FLEN) = OTHERS(ITEMP) GO TO 10 END IF GOTHFD = ITEMP END SUBROUTINE MAINRF(BUFFER,BUFLEN,NALG) * * construct the reference to the algorithm whose reference * is stored in array position nalg. This will be output * in italic in the resulting cumulative index. * Example format: C3:49 for cacm volume 3 page 49. * * .. Parameters .. CHARACTER SEPCHR PARAMETER (SEPCHR=':') INTEGER MAXALG,TITLEN,OTHLEN PARAMETER (MAXALG=750,TITLEN=160,OTHLEN=300) * .. * .. Scalar Arguments .. INTEGER BUFLEN,NALG CHARACTER BUFFER* (*) * .. * .. Scalars in Common .. INTEGER NOALGS * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG),SHSORT(MAXALG), + VOL(MAXALG) CHARACTER JOUR(MAXALG),REFS(OTHLEN,MAXALG),TITLES(TITLEN,MAXALG), + SHAR(MAXALG)*3,LABEL(MAXALG)*6 * .. * .. Local Scalars .. INTEGER LENGTH * .. * .. External Functions .. INTEGER ITOA EXTERNAL ITOA * .. * .. Common blocks .. COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL * .. * .. Save statement .. SAVE /CALLST/,/CALLIN/ * .. * .. Executable Statements .. BUFFER(1:1) = JOUR(NALG) LENGTH = ITOA(VOL(NALG),BUFFER(2:)) BUFLEN = LENGTH + 2 BUFFER(BUFLEN:BUFLEN) = SEPCHR BUFLEN = BUFLEN + 1 LENGTH = ITOA(PAGE(NALG),BUFFER(BUFLEN:)) BUFLEN = BUFLEN + LENGTH - 1 END INTEGER FUNCTION NXTOTH(IPOS,FIELD,FLEN,OTHERS) * * Generate next remark or certificate reference. This involves * extracting fields 2 (journal), 4 (volume), 3 (pages) and * forming a string of the form C17:128. (The colon may be changed * by altering sepchr in the parameter statement.) * * ipos -- on entry points to the first character or first * following a semicolon in the others array * field -- character array to hold reference on exit * flen -- number of characters written into field on exit * others-- character array holding the full other citation * references for a particular algorithm. * * This routine does not explicitly bound check field. * * Function returns the current position of the pointer in * the array others (could be a comma or a semi-colon) * * .. Parameters .. CHARACTER SEPCHR,PAGSEP PARAMETER (SEPCHR=':',PAGSEP='-') * .. * .. Scalar Arguments .. INTEGER FLEN,IPOS * .. * .. Array Arguments .. CHARACTER FIELD(*),OTHERS(*) * .. * .. Local Scalars .. INTEGER I,JLEN,JPOS,PLEN,VLEN CHARACTER JUNK,PAGES* (10),VOL* (3),JOURN* (4) * .. * .. External Functions .. INTEGER GOTHFD EXTERNAL GOTHFD * .. * .. Executable Statements .. * * eat the first field (either C or R) JPOS = GOTHFD(IPOS,JUNK,JLEN,OTHERS) * * get the second -- this is the journal title JPOS = GOTHFD(JPOS+1,JOURN,JLEN,OTHERS) * * work out the first letter for the citation IF (JOURN.EQ.'cacm') THEN FIELD(1) = 'C' ELSE IF (JOURN.EQ.'toms') THEN FIELD(1) = 'T' ELSE FIELD(1) = 'X' END IF * * third field is pages; fourth is volume field JPOS = GOTHFD(JPOS+1,PAGES,PLEN,OTHERS) NXTOTH = GOTHFD(JPOS+1,VOL,VLEN,OTHERS) * * build the reference DO 10 I = 1,VLEN FIELD(I+1) = VOL(I:I) 10 CONTINUE FIELD(VLEN+2) = SEPCHR DO 20 I = 1,PLEN IF (PAGES(I:I).NE.PAGSEP) THEN FIELD(VLEN+2+I) = PAGES(I:I) ELSE FLEN = VLEN + I + 1 RETURN END IF 20 CONTINUE FLEN = VLEN + PLEN + 2 END SUBROUTINE OUTALG(NALG) * * output the complete entry for an algorithm. * nalg gives the position within the arrays. * * The following latex template is used * * \noindent * {\small \begin{tabular}{p{0.5in}p{2.75in}p{1.1in}} * * &{\raggedright * * \\}&{\raggedright {\bf * <main reference> } * <other references> * \\} \end{tabular}} * * set up the strings and their respective lengths. * Note: the backslash character is used extensively in these * strings. Its definition may be implementation dependent. * The following is for SUN and 4.3bsd Unix f77 compilers. * * .. Parameters .. CHARACTER*(*) NOIND INTEGER LNOIND PARAMETER (NOIND='\noindent',LNOIND=9) CHARACTER*(*) TABST INTEGER LTABST PARAMETER (TABST= + '{\small \begin{tabular}{p{0.4in}@{}p{2.75in}@{}p{1.4in}}', + LTABST=56) CHARACTER*(*) TABEND INTEGER LTABND PARAMETER (TABEND='\\}\end{tabular}}',LTABND=17) CHARACTER*(*) RAGGD INTEGER LRAGGD PARAMETER (RAGGD='&{\raggedright ',LRAGGD=15) CHARACTER*(*) RGIT INTEGER LRGIT PARAMETER (RGIT='\\}&{\raggedright {\bf ',LRGIT=23) CHARACTER BLNK,CURL INTEGER LBLNK,LCURL PARAMETER (BLNK=' ',LBLNK=1,CURL='}',LCURL=1) INTEGER BUFMAX,MAXLEN PARAMETER (BUFMAX=80,MAXLEN=160) INTEGER MAXALG,TITLEN,OTHLEN PARAMETER (MAXALG=750,TITLEN=160,OTHLEN=300) * .. * .. Scalar Arguments .. INTEGER NALG * .. * .. Scalars in Common .. INTEGER NOALGS * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG),SHSORT(MAXALG), + VOL(MAXALG) CHARACTER JOUR(MAXALG),REFS(OTHLEN,MAXALG),TITLES(TITLEN,MAXALG), + SHAR(MAXALG)*3,LABEL(MAXALG)*6 * .. * .. Local Scalars .. INTEGER BUFLEN,FLEN CHARACTER BUFFER* (BUFMAX) * .. * .. Local Arrays .. CHARACTER ARRBUF(MAXLEN) * .. * .. External Functions .. INTEGER LENGTH EXTERNAL LENGTH * .. * .. External Subroutines .. EXTERNAL GETOTC,MAINRF,OUTELT,OUTLIN * .. * .. Common blocks .. COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL * .. * .. Save statement .. SAVE /CALLST/,/CALLIN/ * .. * .. Executable Statements .. CALL OUTLIN(NOIND,LNOIND) CALL OUTLIN(TABST,LTABST) CALL OUTLIN(LABEL(NALG),LENGTH(LABEL(NALG))) CALL OUTLIN(RAGGD,LRAGGD) CALL OUTELT(TITLES(1,NALG),LENTIT(NALG)) CALL OUTLIN(RGIT,LRGIT) CALL MAINRF(BUFFER,BUFLEN,NALG) BUFLEN = BUFLEN + 1 BUFFER(BUFLEN:BUFLEN) = CURL CALL OUTLIN(BUFFER(1:BUFLEN),BUFLEN) IF (LENREF(NALG).NE.0) THEN CALL GETOTC(ARRBUF,FLEN,REFS(1,NALG),LENREF(NALG)) CALL OUTELT(ARRBUF,FLEN) END IF CALL OUTLIN(TABEND,LTABND) * * output a blank line -- well almost CALL OUTLIN(BLNK,LBLNK) END SUBROUTINE OUTCUM * * open file for output of bibtex references * unit number nout must not clash with nin and nerr * which are initialized in routine setup * .. Scalars in Common .. INTEGER NOUT * .. * .. External Subroutines .. EXTERNAL ERROR * .. * .. Common blocks .. COMMON /CBIB/NOUT * .. * .. Save statement .. SAVE /CBIB/ * .. * .. Executable Statements .. NOUT = 7 OPEN (UNIT=NOUT,FILE='cum.tex',STATUS='unknown',FORM='formatted', + ACCESS='sequential',ERR=10) RETURN * deal with possible error opening output file 10 CALL ERROR('Failed to open file for bibtex database') END SUBROUTINE OUTELT(ARRAY,LENGTH) * * Outputs a character array array(1..length) using a buffer * of size at most maxbuf characters, if the length is greater * than maxbuf splits the string on the nearest space. * * .. Parameters .. INTEGER MAXBUF CHARACTER BLNK PARAMETER (MAXBUF=80,BLNK=' ') * .. * .. Scalar Arguments .. INTEGER LENGTH * .. * .. Array Arguments .. CHARACTER ARRAY(LENGTH) * .. * .. Local Scalars .. INTEGER I,J,OLDPTR,PTR CHARACTER BUFFER* (MAXBUF) * .. * .. External Subroutines .. EXTERNAL ERROR,OUTLIN * .. * .. Executable Statements .. OLDPTR = 1 PTR = MAXBUF 10 IF (PTR.GE.LENGTH) THEN J = 0 DO 20 I = OLDPTR,LENGTH J = J + 1 BUFFER(J:J) = ARRAY(I) 20 CONTINUE CALL OUTLIN(BUFFER,LENGTH-OLDPTR+1) RETURN ELSE DO 30 J = PTR,OLDPTR,-1 IF (ARRAY(J).EQ.BLNK) THEN GO TO 40 END IF 30 CONTINUE CALL ERROR('Unbreakable string in outelt - increase maxbuf') 40 PTR = J - 1 J = 0 DO 50 I = OLDPTR,PTR J = J + 1 BUFFER(J:J) = ARRAY(I) 50 CONTINUE CALL OUTLIN(BUFFER,PTR-OLDPTR+1) OLDPTR = PTR + 1 PTR = PTR + MAXBUF GO TO 10 END IF END SUBROUTINE OUTEND * * output the final lines of the LaTeX file * .. Parameters .. CHARACTER*(*) ENDLIN INTEGER LENDLN PARAMETER (ENDLIN='\end{document}',LENDLN=14) * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Executable Statements .. CALL OUTLIN(ENDLIN,LENDLN) END SUBROUTINE OUTHED * * output the initial LaTeX commands for the index * document. These take the form * * \documentstyle{report} * \begin{document} * \title{Cumulative Index to the ACM Algorithms} * \author{Tim Hopkins and David Morse\\ * University of Kent\\ * Canterbury\\ * Kent, CT2 7NF, UK} * \date{24 June 1989} * \maketitle * * NOTE: This routine may contain implementation dependent * character definition of backslash * * .. Parameters .. CHARACTER*(*) STYLE INTEGER LSTYLE PARAMETER (STYLE='\documentstyle{report}',LSTYLE=22) CHARACTER*(*) BEGIND INTEGER LBEGIN PARAMETER (BEGIND='\begin{document}',LBEGIN=16) CHARACTER*(*) TITLE INTEGER LTITLE PARAMETER (TITLE='\title{Cumulative Index to the ACM Algorithms}' + ,LTITLE=46) CHARACTER*(*) AUTHR1 INTEGER LAUTH1 PARAMETER (AUTHR1='\author{Tim Hopkins and David Morse\\'// + 'University of Kent\\',LAUTH1=57) CHARACTER*(*) AUTHR2 INTEGER LAUTH2 PARAMETER (AUTHR2='Canterbury\\Kent, CT2 7NF, UK}',LAUTH2=30) CHARACTER*(*) DATE INTEGER LDATE PARAMETER (DATE='\date{24 June 1989}',LDATE=19) CHARACTER*(*) MAKET INTEGER LMAKET PARAMETER (MAKET='\maketitle',LMAKET=10) * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Executable Statements .. * CALL OUTLIN(STYLE,LSTYLE) CALL OUTLIN(BEGIND,LBEGIN) CALL OUTLIN(TITLE,LTITLE) CALL OUTLIN(AUTHR1,LAUTH1) CALL OUTLIN(AUTHR2,LAUTH2) CALL OUTLIN(DATE,LDATE) CALL OUTLIN(MAKET,LMAKET) END SUBROUTINE OUTSH(CURPT) * * output the classification heading -- in sharst(curpt) * for the S section only output the heading for the main * section. Group subsections together. * * * ***** Possibly MACHINE DEPENDENT CHARACTER VARIABLE BACKSLASH * ***** used * * LaTeX template used is of the form * * \begin{center}{\small\bf * <shar heading> * }\end{center} * * shar heading is of the form A1:Real arithmetic * * For the subclassifications of the S (Special function) * section the second line of the above template is replaced by * just the mnenomic * * .. Parameters .. CHARACTER*(*) CENHED INTEGER LHED PARAMETER (CENHED='\begin{center}{\small\bf',LHED=24) CHARACTER*(*) CENEND INTEGER LEND PARAMETER (CENEND='}\end{center}',LEND=13) CHARACTER*(*) SEP INTEGER LSEP PARAMETER (SEP=' : ',LSEP=3) INTEGER MAXBUF,MNLEN,STLEN PARAMETER (MNLEN=3,STLEN=45,MAXBUF=MNLEN+LSEP+STLEN) INTEGER NCLASS PARAMETER (NCLASS=57) * .. * .. Scalar Arguments .. INTEGER CURPT * .. * .. Scalars in Common .. INTEGER MAXSHR,SVAL * .. * .. Arrays in Common .. INTEGER SHARPT(NCLASS+1) CHARACTER SHARMN(NCLASS)* (MNLEN),SHARST(NCLASS)* (STLEN) * .. * .. Local Scalars .. INTEGER ALEN,MLEN CHARACTER BUFFER* (MAXBUF) LOGICAL NOS * .. * .. External Functions .. INTEGER LENGTH EXTERNAL LENGTH * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Common blocks .. COMMON /CSHAR/SHARMN,SHARST COMMON /CSHARN/MAXSHR,SHARPT,SVAL * .. * .. Save statement .. SAVE /CSHAR/,/CSHARN/,NOS * .. * .. Data statements .. DATA NOS/.true./ * .. * .. Executable Statements .. CALL OUTLIN(CENHED,LHED) IF (SHARMN(CURPT) (1:1).EQ.'S') THEN * * first time we set centred heading IF (NOS) THEN NOS = .false. ALEN = LENGTH(SHARST(SVAL)) MLEN = LENGTH(SHARMN(SVAL)) BUFFER(1:MLEN) = SHARMN(SVAL) (1:MLEN) BUFFER(MLEN+1:MLEN+LSEP) = SEP MLEN = MLEN + LSEP BUFFER(MLEN+1:MLEN+ALEN) = SHARST(SVAL) (1:ALEN) MLEN = MLEN + ALEN CALL OUTLIN(BUFFER(1:MLEN),MLEN) CALL OUTLIN(CENEND,LEND) CALL OUTLIN(CENHED,LHED) END IF * * otherwise set just a section number -- the point is that * the descriptions are like books MLEN = LENGTH(SHARMN(CURPT)) CALL OUTLIN(SHARMN(CURPT) (1:MLEN),MLEN) ELSE * * just set the heading ALEN = LENGTH(SHARST(CURPT)) MLEN = LENGTH(SHARMN(CURPT)) BUFFER(1:MLEN) = SHARMN(CURPT) (1:MLEN) BUFFER(MLEN+1:MLEN+LSEP) = SEP MLEN = MLEN + LSEP BUFFER(MLEN+1:MLEN+ALEN) = SHARST(CURPT) (1:ALEN) MLEN = MLEN + ALEN CALL OUTLIN(BUFFER(1:MLEN),MLEN) END IF CALL OUTLIN(CENEND,LEND) END SUBROUTINE SAVALG * * save the title and other references, shar index * volume, journal and start page number. * form sorted shar index - this is inefficient but * it's not going to be done very often * .. Parameters .. INTEGER MAXALG,AUTLEN,TITLEN,KEYLEN,OTHLEN PARAMETER (MAXALG=750,AUTLEN=80,TITLEN=160,KEYLEN=400,OTHLEN=300) * .. * .. Scalars in Common .. INTEGER NOALGS,NUMBER,PAGEND,PAGEST,VOLUME,YEAR CHARACTER ALABEL* (6),JOURNL* (4),MONTH* (9),LANG* (3),SHARE* (3) * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG),SHSORT(MAXALG), + VOL(MAXALG) CHARACTER AUTHOR(AUTLEN),JOUR(MAXALG),KEYWDS(KEYLEN), + OTHERS(OTHLEN),REFS(OTHLEN,MAXALG),TITLE(TITLEN), + TITLES(TITLEN,MAXALG),SHAR(MAXALG)*3,LABEL(MAXALG)*6 * .. * .. Local Scalars .. INTEGER I * .. * .. External Functions .. INTEGER LENARR EXTERNAL LENARR * .. * .. Common blocks .. COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL COMMON /CREFNO/VOLUME,NUMBER,YEAR,PAGEST,PAGEND COMMON /CREFST/ALABEL,JOURNL,MONTH,LANG,SHARE,AUTHOR,TITLE,KEYWDS, + OTHERS * .. * .. Save statement .. SAVE /CREFNO/,/CREFST/,/CALLST/,/CALLIN/ * .. * .. Executable Statements .. NOALGS = NOALGS + 1 * * save title and reference LENTIT(NOALGS) = LENARR(TITLE,TITLEN) LENREF(NOALGS) = LENARR(OTHERS,OTHLEN) DO 10 I = 1,LENTIT(NOALGS) TITLES(I,NOALGS) = TITLE(I) 10 CONTINUE DO 20 I = 1,LENREF(NOALGS) REFS(I,NOALGS) = OTHERS(I) 20 CONTINUE * * save volume, page and shar index VOL(NOALGS) = VOLUME PAGE(NOALGS) = PAGEST SHAR(NOALGS) = SHARE LABEL(NOALGS) = ALABEL * * code for journal IF (JOURNL.EQ.'toms') THEN JOUR(NOALGS) = 'T' ELSE IF (JOURNL.EQ.'cacm') THEN JOUR(NOALGS) = 'C' ELSE JOUR(NOALGS) = 'X' END IF END INTEGER FUNCTION SEMPOS(IPOS,OTHERS) * * Routine to find next semicolon in character array others * on or after position ipos. The semicolon is used as a * separator between references to remarks and certificates. * * .. Parameters .. CHARACTER SEMIC PARAMETER (SEMIC=';') * .. * .. Scalar Arguments .. INTEGER IPOS * .. * .. Array Arguments .. CHARACTER OTHERS(*) * .. * .. Local Scalars .. INTEGER ITEMP * .. * .. Executable Statements .. ITEMP = IPOS 10 IF (OTHERS(ITEMP).NE.SEMIC) THEN ITEMP = ITEMP + 1 GO TO 10 END IF SEMPOS = ITEMP END SUBROUTINE SHARFX(SHTEMP) * * Remove any leading or included blanks and translate all * alphabetic character to upper case * * .. Parameters .. CHARACTER BLNK PARAMETER (BLNK=' ') * .. * .. Scalar Arguments .. CHARACTER SHTEMP* (*) * .. * .. Local Scalars .. INTEGER I,IPOS,JPTR CHARACTER CHAR,LCSTR* (26),UCSTR* (26) * .. * .. External Functions .. INTEGER LENGTH EXTERNAL LENGTH * .. * .. External Subroutines .. EXTERNAL ERROR * .. * .. Intrinsic Functions .. INTRINSIC INDEX,LEN * .. * .. Executable Statements .. UCSTR = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' LCSTR = 'abcdefghijklmnopqrstuvwxyz' * * get rid leading or included blanks JPTR = 0 DO 10 I = 1,LENGTH(SHTEMP) CHAR = SHTEMP(I:I) IF (CHAR.NE.BLNK) THEN JPTR = JPTR + 1 SHTEMP(JPTR:JPTR) = CHAR END IF 10 CONTINUE * * flag null string IF (JPTR.EQ.0) THEN CALL ERROR('Blank shar field') END IF * * convert case DO 20 I = 1,JPTR IPOS = INDEX(LCSTR,SHTEMP(I:I)) IF (IPOS.NE.0) THEN SHTEMP(I:I) = UCSTR(IPOS:IPOS) END IF 20 CONTINUE * * pad with trailing blanks DO 30 I = JPTR + 1,LEN(SHTEMP) SHTEMP(I:I) = BLNK 30 CONTINUE END ============================================================================== cumeg.unix.f SUBROUTINE ADDSHR(SHARVL,NOALG) * * Add the current algorithm into the sorted shar array. * This is pretty crude but given the program will be run * only infrequently we think it's good enough. * * sharvl -- shar index associated with current algorithm * noalg -- index into volume, pages etc arrays for current * algorithm information. * * * .. Parameters .. CHARACTER*(*) MESS PARAMETER (MESS='Unrecognized share value ') INTEGER MAXALG,TITLEN,OTHLEN PARAMETER (MAXALG=750,TITLEN=160,OTHLEN=300) INTEGER NCLASS PARAMETER (NCLASS=57) * .. * .. Scalar Arguments .. INTEGER NOALG CHARACTER SHARVL* (3) * .. * .. Scalars in Common .. INTEGER MAXSHR,NOALGS,SVAL * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG), + SHARPT(NCLASS+1),SHSORT(MAXALG),VOL(MAXALG) CHARACTER JOUR(MAXALG),REFS(OTHLEN,MAXALG),TITLES(TITLEN,MAXALG), + SHAR(MAXALG)*3,LABEL(MAXALG)*6,SHARMN(NCLASS)* (3), + SHARST(NCLASS)* (45) * .. * .. Local Scalars .. INTEGER I,J,POS,SHPOS CHARACTER SHTEMP* (3) * .. * .. External Functions .. INTEGER BINCHP EXTERNAL BINCHP * .. * .. External Subroutines .. EXTERNAL ERROR,SHARFX * .. * .. Common blocks .. COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL COMMON /CSHAR/SHARMN,SHARST COMMON /CSHARN/MAXSHR,SHARPT,SVAL * .. * .. Save statement .. SAVE /CALLST/,/CALLIN/,/CSHAR/,/CSHARN/ * .. * .. Executable Statements .. * * find pointer position for current shar value * converting sharvl to upper case if necessary SHTEMP = SHARVL CALL SHARFX(SHTEMP) POS = BINCHP(SHTEMP,SHARMN,MAXSHR) IF (POS.EQ.0) THEN * stop if not found CALL ERROR(MESS//SHTEMP) END IF * * locate where new entry should go -- want it at * the end of the current list to ensure that the entries * associated with each shar classification remain sorted. * SHPOS = POS DO 30 I = POS + 1,MAXSHR * * find first non-zero pointer IF (SHARPT(I).NE.0) THEN SHPOS = SHARPT(I) * * update this and other pointers DO 10 J = I,MAXSHR IF (SHARPT(J).NE.0) THEN SHARPT(J) = SHARPT(J) + 1 END IF 10 CONTINUE * * insert the new entry DO 20 J = NOALG - 1,SHPOS,-1 SHSORT(J+1) = SHSORT(J) 20 CONTINUE SHSORT(SHPOS) = NOALG IF (SHARPT(POS).EQ.0) THEN SHARPT(POS) = SHPOS END IF RETURN END IF 30 CONTINUE * * add to end of list and update pointer if necessary SHSORT(NOALG) = NOALG IF (SHARPT(SHPOS).EQ.0) THEN SHARPT(SHPOS) = NOALG END IF END BLOCK DATA BDSHAR * * Initialize share mnemonic and descriptive string arrays * * .. Parameters .. INTEGER NCLASS, NCLAS1 PARAMETER (NCLASS=57,NCLAS1=NCLASS+1) * .. * .. Scalars in Common .. INTEGER MAXSHR,SVAL * .. * .. Arrays in Common .. INTEGER SHARPT(NCLASS+1) CHARACTER SHARMN(NCLASS)* (3),SHARST(NCLASS)* (45) * .. * .. Common blocks .. COMMON /CSHAR/SHARMN,SHARST COMMON /CSHARN/MAXSHR,SHARPT,SVAL * .. * .. Save statement .. SAVE /CSHAR/,/CSHARN/ * .. * .. Data statements .. DATA SHARMN(1)/'A1 '/ DATA SHARST(1)/'Real Arithmetic, Number Theory'/ DATA SHARMN(2)/'A2 '/ DATA SHARST(2)/'Complex Arithmetic'/ DATA SHARMN(3)/'B1 '/ DATA SHARST(3)/'Trig and Inverse Trig Functions'/ DATA SHARMN(4)/'B2 '/ DATA SHARST(4)/'Hyperbolic Functions'/ DATA SHARMN(5)/'B3 '/ DATA SHARST(5)/'Exponential and Logarithmic Functions'/ DATA SHARMN(6)/'B4 '/ DATA SHARST(6)/'Roots and Powers'/ DATA SHARMN(7)/'C1 '/ DATA SHARST(7)/'Operations on Polynomials and Power Series'/ DATA SHARMN(8)/'C2 '/ DATA SHARST(8)/'Zeros of Polynomials'/ DATA SHARMN(9)/'C5 '/ DATA SHARST(9)/'Zeros of one or more Nonlinear Equations'/ DATA SHARMN(10)/'C6 '/ DATA SHARST(10)/'Summation of Series, Convergence Acceleration'/ DATA SHARMN(11)/'D1 '/ DATA SHARST(11)/'Quadrature'/ DATA SHARMN(12)/'D2 '/ DATA SHARST(12)/'Ordinary Differential Equations'/ DATA SHARMN(13)/'D3 '/ DATA SHARST(13)/'Partial Differential Equations'/ DATA SHARMN(14)/'D4 '/ DATA SHARST(14)/'Differentiation'/ DATA SHARMN(15)/'D5 '/ DATA SHARST(15)/'Integral Equations'/ DATA SHARMN(16)/'E1 '/ DATA SHARST(16)/'Interpolation'/ DATA SHARMN(17)/'E2 '/ DATA SHARST(17)/'Curve and Surface Fitting'/ DATA SHARMN(18)/'E3 '/ DATA SHARST(18)/'Smoothing'/ DATA SHARMN(19)/'E4 '/ DATA SHARST(19)/'Minimizing or Maximizing a Function'/ DATA SHARMN(20)/'F1 '/ DATA SHARST(20)/'Matrix Operations, including Inversion'/ DATA SHARMN(21)/'F2 '/ DATA SHARST(21)/'Eigenvalues and Eigenvectors of a Matrix'/ DATA SHARMN(22)/'F3 '/ DATA SHARST(22)/'Determinants'/ DATA SHARMN(23)/'F4 '/ DATA SHARST(23)/'Simultaneous Linear Equations'/ DATA SHARMN(24)/'F5 '/ DATA SHARST(24)/'Orthogonalization'/ DATA SHARMN(25)/'G1 '/ DATA SHARST(25)/'Simple Calculations on Statistical Data'/ DATA SHARMN(26)/'G2 '/ DATA SHARST(26)/'Correlation and Regression Analysis'/ DATA SHARMN(27)/'G5 '/ DATA SHARST(27)/'Random Number Generators'/ DATA SHARMN(28)/'G6 '/ DATA SHARST(28)/'Permutations and Combinations'/ DATA SHARMN(29)/'G7 '/ DATA SHARST(29)/'Subset Generators'/ DATA SHARMN(30)/'H '/ DATA SHARST(30)/'Operations Research, Graph Structure'/ DATA SHARMN(31)/'I5 '/ DATA SHARST(31)/'Input -- Composite'/ DATA SHARMN(32)/'J6 '/ DATA SHARST(32)/'Plotting'/ DATA SHARMN(33)/'K2 '/ DATA SHARST(33)/'Relocation'/ DATA SHARMN(34)/'L2 '/ DATA SHARST(34)/'Compiling'/ DATA SHARMN(35)/'M1 '/ DATA SHARST(35)/'Sorting'/ DATA SHARMN(36)/'M2 '/ DATA SHARST(36)/'Data Conversion and Scaling'/ DATA SHARMN(37)/'O2 '/ DATA SHARST(37)/'Simulation of Computing Structure'/ DATA SHARMN(38)/'R2 '/ DATA SHARST(38)/'Symbol Manipulation'/ DATA SHARMN(39)/'S '/ DATA SHARST(39)/'Approximation of Special Functions'/ DATA SVAL/39/ DATA SHARMN(40)/'S03'/ DATA SHARST(40)/' '/ DATA SHARMN(41)/'S04'/ DATA SHARST(41)/' '/ DATA SHARMN(42)/'S07'/ DATA SHARST(42)/' '/ DATA SHARMN(43)/'S09'/ DATA SHARST(43)/' '/ DATA SHARMN(44)/'S13'/ DATA SHARST(44)/' '/ DATA SHARMN(45)/'S14'/ DATA SHARST(45)/' '/ DATA SHARMN(46)/'S15'/ DATA SHARST(46)/' '/ DATA SHARMN(47)/'S16'/ DATA SHARST(47)/' '/ DATA SHARMN(48)/'S17'/ DATA SHARST(48)/' '/ DATA SHARMN(49)/'S18'/ DATA SHARST(49)/' '/ DATA SHARMN(50)/'S19'/ DATA SHARST(50)/' '/ DATA SHARMN(51)/'S20'/ DATA SHARST(51)/' '/ DATA SHARMN(52)/'S21'/ DATA SHARST(52)/' '/ DATA SHARMN(53)/'S22'/ DATA SHARST(53)/' '/ DATA SHARMN(54)/'S23'/ DATA SHARST(54)/' '/ DATA SHARMN(55)/'XX '/ DATA SHARST(55)/'Unclassified'/ DATA SHARMN(56)/'Y1 '/ DATA SHARST(56)/'Physics Applications'/ DATA SHARMN(57)/'Z '/ DATA SHARST(57)/'All Others'/ DATA MAXSHR/NCLASS/ DATA SHARPT/NCLAS1*0/ * .. * .. Executable Statements .. END INTEGER FUNCTION BINCHP(TARGET,GIVEN,LENGTH) * * Find target in sorted array given(1..length) * using the binary chop algorithm * * returns 0 if target not in given(1..length) * returns p if given(p)=target for p=1..length * * .. Scalar Arguments .. INTEGER LENGTH CHARACTER TARGET* (3) * .. * .. Array Arguments .. CHARACTER GIVEN(LENGTH)* (3) * .. * .. Local Scalars .. INTEGER L,M,U * .. * .. Intrinsic Functions .. INTRINSIC LGT,LLT * .. * .. Executable Statements .. L = 1 U = LENGTH 10 IF (L.GT.U) THEN BINCHP = 0 RETURN END IF * halve the interval M = (L+U)/2 IF (LLT(GIVEN(M),TARGET)) THEN L = M + 1 GO TO 10 ELSE IF (LGT(GIVEN(M),TARGET)) THEN U = M - 1 GO TO 10 END IF BINCHP = M END PROGRAM CUMIND * * produces latex file to generate a cumulative index of * acm algorithms sorted by shar classification * * .. Parameters .. INTEGER MAXBUF PARAMETER (MAXBUF=80) INTEGER AUTLEN,TITLEN,KEYLEN,OTHLEN PARAMETER (AUTLEN=80,TITLEN=160,KEYLEN=400,OTHLEN=300) INTEGER NCLASS PARAMETER (NCLASS=57) INTEGER MAXALG PARAMETER (MAXALG=750) * .. * .. Scalars in Common .. INTEGER MAXSHR,NERR,NIN,NOALGS,NOUT,NUMBER,PAGEND,PAGEST,SVAL, + TYPE,VOLUME,YEAR LOGICAL EOF CHARACTER BUFFER* (MAXBUF),ALABEL* (6),JOURNL* (4),MONTH* (9), + LANG* (3),SHARE* (3) * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG), + SHARPT(NCLASS+1),SHSORT(MAXALG),VOL(MAXALG) CHARACTER AUTHOR(AUTLEN),JOUR(MAXALG),KEYWDS(KEYLEN), + OTHERS(OTHLEN),REFS(OTHLEN,MAXALG),TITLE(TITLEN), + TITLES(TITLEN,MAXALG),SHAR(MAXALG)*3,LABEL(MAXALG)*6, + SHARMN(NCLASS)* (3),SHARST(NCLASS)* (45) * .. * .. Local Scalars .. INTEGER CURPT,I,IPOS,LASTPT * .. * .. External Functions .. INTEGER GETPT LOGICAL GETREF EXTERNAL GETPT,GETREF * .. * .. External Subroutines .. EXTERNAL ADDSHR,INITRF,OUTALG,OUTCUM,OUTEND,OUTHED,OUTSH,SAVALG, + SETUP * .. * .. Common blocks .. * * common block for storing information required to * build an accumulative index based on the shar * classification * * For each of the noalgs algorithms * titles (character array) stores full titles, * refs (character array) stores the comments and remarks * in compressed form * jour (character array) holds the journal code * (c=cacm, t=toms, x=others) * shar (character array) holds the shar index * vol (integer array) holds the volume number * page (integer array) holds the start page of the article * label (character array) stores the algorithm number * * lentit (integer array) stores the number of significant * characters in the title * lenoth (integer array) stores the number of significant * characters in the other entries * shsort (integer array) contains a sorted list of indexes * by shar classification * COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL * * nout is used to define the output channel for * the bibtex database -- see subroutine outcum * COMMON /CBIB/NOUT * * eof (logical) - true if no more references to process * false otherwise * type (integer) - type of current input line * newfld (1) - a new field * cont (2) - a continuation line * newalg (3) - a new reference entry * newfld, cont and newalg are parameter values * nin (integer) - unit number for data reference file * nerr (integer) - unit number for error messages * COMMON /CIO/EOF,TYPE,NIN,NERR * * buffer (character*(maxbuf)) - used to buffer each line of data * prior to processing. For the * distributed version of the data * file maxbuf may be set to 80. * COMMON /CIOSTR/BUFFER * * common block holds reference items which may usefully be * represented by integers. * * volume - volume number * number - issue number (1-12 for cacm, 1-4 for toms) * year - year of publication * pagest - start page of article * pagend - end page of article (set zero if whole article confined * to a single page * COMMON /CREFNO/VOLUME,NUMBER,YEAR,PAGEST,PAGEND * * stores reference fields in string form * * alabel*(6) - label used to identify an algorithm. In all cases * but two this is an integer. In the odd two cases * it is an integer followed by the letter 'a'. * journl*(4) - either 'cacm' or 'toms' * month *(9) - month of publication e.g., January, December etc. * lang *(3) - language in which algorithm is coded * 'F' = Fortran (66 or 77); 'A60' = Algol 60; * 'R' = Ratfor ; 'PL1' = PL1; * 'L' = Lisp ; 'F90' = Fortran 90; * 'M' = Matlab ; * share *(3) - Share classification index * author(autlen) - possibly multiple author names. All author fields * end with a semi colon, multiple authors are * separated by semi colons. * title (titlen) - possibly multiline title concatenated into a single * string. Multiple blanks are compressed to a single * blank. * keywds(keylen) - list of keywords separated by semi colons and * terminated by a semi colon. * others(othlen) - list of remarks and certificates pertaining to the * current reference separated by and terminated by a * semi colon. Each entry has the following form * * R or C,journal,start page,end page,volume,number,month,year,authors; * * The first field states whether the article was a * Remark or Certificate. * Multiple authors are separated by ' and '. * All other field are as described in the main * reference. * * autlen, titlen, keylen, othlen are parameter values. COMMON /CREFST/ALABEL,JOURNL,MONTH,LANG,SHARE,AUTHOR,TITLE,KEYWDS, + OTHERS * * common block containing information on shar classification index * * sharmn (character array) containing the shar mnemonics * sharst (character array) containing explanatory strings * sharpt (integer array) used to store pointers into the * array containing sorted list of * algorithms * * maxshr (integer) maximum number of shar classifications * sval (integer) position of S section heading in the sharmn * and sharst arrays * COMMON /CSHAR/SHARMN,SHARST COMMON /CSHARN/MAXSHR,SHARPT,SVAL * .. * .. Save statement .. SAVE /CBIB/,/CIO/,/CIOSTR/,/CREFNO/,/CREFST/,/CSHAR/,/CSHARN/, + /CALLST/,/CALLIN/ * .. * .. Executable Statements .. * * set up i/o channels and open data file CALL SETUP * * set up output file for latex output CALL OUTCUM * * initialize input buffer for references CALL INITRF CALL OUTHED * * process all references 10 IF (GETREF()) THEN CALL SAVALG GO TO 10 END IF * * sort on shar index DO 20 I = 1,NOALGS J = I * * don't pass active do-loop variable as arg CALL ADDSHR(SHAR(J),J) 20 CONTINUE SHARPT(MAXSHR+1) = NOALGS + 1 * * loop through the classifications, outputting headings * where necessary and generating entries IPOS = 1 CURPT = GETPT(IPOS,MAXSHR+1,SHARPT) 30 LASTPT = GETPT(CURPT+1,MAXSHR+1,SHARPT) IF (LASTPT.NE.-1) THEN CALL OUTSH(CURPT) DO 40 I = SHARPT(CURPT),SHARPT(LASTPT) - 1 CALL OUTALG(SHSORT(I)) 40 CONTINUE CURPT = LASTPT GO TO 30 END IF * * windup complete latex file CALL OUTEND END SUBROUTINE GETOTC(FIELD,FLEN,OTHERS,OLEN) * * Routine to extract a list of the citation references * in the form e.g., C4:273 (cacm volume 4 p273). * * Multiple entries are separated by sepchr -- we use a * space for the LaTeX output. No sepchr is appended to the * end of the string. * * No explicit bound checks are performed on field * * * field -- character array on exit holds the list of * references * flen -- number of significant characters in field * on exit * others-- character array containing citation reference * olen -- number of significant characters in others * * .. Parameters .. CHARACTER SEPCHR PARAMETER (SEPCHR=' ') * .. * .. Scalar Arguments .. INTEGER FLEN,OLEN * .. * .. Array Arguments .. CHARACTER FIELD(*),OTHERS(*) * .. * .. Local Scalars .. INTEGER IFLEN,IPOS * .. * .. External Functions .. INTEGER NXTOTH,SEMPOS EXTERNAL NXTOTH,SEMPOS * .. * .. Executable Statements .. * no references FLEN = 0 IF (OLEN.EQ.0) THEN RETURN END IF * one or more IPOS = 1 FLEN = 1 10 IPOS = NXTOTH(IPOS,FIELD(FLEN),IFLEN,OTHERS) IPOS = SEMPOS(IPOS,OTHERS) FLEN = FLEN + IFLEN - 1 IF (IPOS.NE.OLEN) THEN IPOS = IPOS + 1 FIELD(FLEN+1) = SEPCHR FLEN = FLEN + 2 GO TO 10 END IF END INTEGER FUNCTION GETPT(IPOS,MAXPOS,ARRAY) * * Returns the first non-zero entry in the elements * array(ipos,...,maxpos). If ipos.gt.maxpos on entry * or all elements are zero returns -1. * * * .. Scalar Arguments .. INTEGER IPOS,MAXPOS * .. * .. Array Arguments .. INTEGER ARRAY(MAXPOS) * .. * .. Local Scalars .. INTEGER I,ITEMP * .. * .. Executable Statements .. * ITEMP = IPOS IF (ITEMP.GT.MAXPOS) THEN GETPT = -1 ELSE DO 10 I = ITEMP,MAXPOS IF (ARRAY(I).NE.0) THEN GETPT = I GO TO 20 END IF 10 CONTINUE * fallen off the end GETPT = -1 END IF 20 RETURN END INTEGER FUNCTION GOTHFD(IPOS,FIELD,FLEN,OTHERS) * * Get next field (separated by commas) from list of remarks * and certificates for a particular algorithm. * * ipos -- on entry points to the first character or first * following a comma or first following a semicolon * in the others array * field -- character variable to hold field on exit * flen -- number of characters written into field on exit * others-- character array holding the full other citation * references for a particular algorithm. * * This routine does not explicitly bound check field. * * Function returns the current position of the pointer in * the array others (could be a comma or a semi-colon) * * .. Parameters .. CHARACTER COMMA,SEMIC PARAMETER (COMMA=',',SEMIC=';') * .. * .. Scalar Arguments .. INTEGER FLEN,IPOS CHARACTER FIELD* (*) * .. * .. Array Arguments .. CHARACTER OTHERS(*) * .. * .. Local Scalars .. INTEGER ITEMP * .. * .. Executable Statements .. FIELD(1:1) = OTHERS(IPOS) ITEMP = IPOS FLEN = 1 10 ITEMP = ITEMP + 1 IF (OTHERS(ITEMP).NE.COMMA .AND. OTHERS(ITEMP).NE.SEMIC) THEN FLEN = FLEN + 1 FIELD(FLEN:FLEN) = OTHERS(ITEMP) GO TO 10 END IF GOTHFD = ITEMP END SUBROUTINE MAINRF(BUFFER,BUFLEN,NALG) * * construct the reference to the algorithm whose reference * is stored in array position nalg. This will be output * in italic in the resulting cumulative index. * Example format: C3:49 for cacm volume 3 page 49. * * .. Parameters .. CHARACTER SEPCHR PARAMETER (SEPCHR=':') INTEGER MAXALG,TITLEN,OTHLEN PARAMETER (MAXALG=750,TITLEN=160,OTHLEN=300) * .. * .. Scalar Arguments .. INTEGER BUFLEN,NALG CHARACTER BUFFER* (*) * .. * .. Scalars in Common .. INTEGER NOALGS * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG),SHSORT(MAXALG), + VOL(MAXALG) CHARACTER JOUR(MAXALG),REFS(OTHLEN,MAXALG),TITLES(TITLEN,MAXALG), + SHAR(MAXALG)*3,LABEL(MAXALG)*6 * .. * .. Local Scalars .. INTEGER LENGTH * .. * .. External Functions .. INTEGER ITOA EXTERNAL ITOA * .. * .. Common blocks .. COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL * .. * .. Save statement .. SAVE /CALLST/,/CALLIN/ * .. * .. Executable Statements .. BUFFER(1:1) = JOUR(NALG) LENGTH = ITOA(VOL(NALG),BUFFER(2:)) BUFLEN = LENGTH + 2 BUFFER(BUFLEN:BUFLEN) = SEPCHR BUFLEN = BUFLEN + 1 LENGTH = ITOA(PAGE(NALG),BUFFER(BUFLEN:)) BUFLEN = BUFLEN + LENGTH - 1 END INTEGER FUNCTION NXTOTH(IPOS,FIELD,FLEN,OTHERS) * * Generate next remark or certificate reference. This involves * extracting fields 2 (journal), 4 (volume), 3 (pages) and * forming a string of the form C17:128. (The colon may be changed * by altering sepchr in the parameter statement.) * * ipos -- on entry points to the first character or first * following a semicolon in the others array * field -- character array to hold reference on exit * flen -- number of characters written into field on exit * others-- character array holding the full other citation * references for a particular algorithm. * * This routine does not explicitly bound check field. * * Function returns the current position of the pointer in * the array others (could be a comma or a semi-colon) * * .. Parameters .. CHARACTER SEPCHR,PAGSEP PARAMETER (SEPCHR=':',PAGSEP='-') * .. * .. Scalar Arguments .. INTEGER FLEN,IPOS * .. * .. Array Arguments .. CHARACTER FIELD(*),OTHERS(*) * .. * .. Local Scalars .. INTEGER I,JLEN,JPOS,PLEN,VLEN CHARACTER JUNK,PAGES* (10),VOL* (3),JOURN* (4) * .. * .. External Functions .. INTEGER GOTHFD EXTERNAL GOTHFD * .. * .. Executable Statements .. * * eat the first field (either C or R) JPOS = GOTHFD(IPOS,JUNK,JLEN,OTHERS) * * get the second -- this is the journal title JPOS = GOTHFD(JPOS+1,JOURN,JLEN,OTHERS) * * work out the first letter for the citation IF (JOURN.EQ.'cacm') THEN FIELD(1) = 'C' ELSE IF (JOURN.EQ.'toms') THEN FIELD(1) = 'T' ELSE FIELD(1) = 'X' END IF * * third field is pages; fourth is volume field JPOS = GOTHFD(JPOS+1,PAGES,PLEN,OTHERS) NXTOTH = GOTHFD(JPOS+1,VOL,VLEN,OTHERS) * * build the reference DO 10 I = 1,VLEN FIELD(I+1) = VOL(I:I) 10 CONTINUE FIELD(VLEN+2) = SEPCHR DO 20 I = 1,PLEN IF (PAGES(I:I).NE.PAGSEP) THEN FIELD(VLEN+2+I) = PAGES(I:I) ELSE FLEN = VLEN + I + 1 RETURN END IF 20 CONTINUE FLEN = VLEN + PLEN + 2 END SUBROUTINE OUTALG(NALG) * * output the complete entry for an algorithm. * nalg gives the position within the arrays. * * The following latex template is used * * \noindent * {\small \begin{tabular}{p{0.5in}p{2.75in}p{1.1in}} * <algorithm label> * &{\raggedright * <title> * \\}&{\raggedright {\bf * <main reference> } * <other references> * \\} \end{tabular}} * * set up the strings and their respective lengths. * Note: the backslash character is used extensively in these * strings. Its definition may be implementation dependent. * The following is for SUN and 4.3bsd Unix f77 compilers. * * .. Parameters .. CHARACTER*(*) NOIND INTEGER LNOIND PARAMETER (NOIND='\\noindent',LNOIND=9) CHARACTER*(*) TABST INTEGER LTABST PARAMETER (TABST= + '{\\small \\begin{tabular}{p{0.4in}@{}p{2.75in}@{}p{1.4in}}', + LTABST=56) CHARACTER*(*) TABEND INTEGER LTABND PARAMETER (TABEND='\\\\}\\end{tabular}}',LTABND=17) CHARACTER*(*) RAGGD INTEGER LRAGGD PARAMETER (RAGGD='&{\\raggedright ',LRAGGD=15) CHARACTER*(*) RGIT INTEGER LRGIT PARAMETER (RGIT='\\\\}&{\\raggedright {\\bf ',LRGIT=23) CHARACTER BLNK,CURL INTEGER LBLNK,LCURL PARAMETER (BLNK=' ',LBLNK=1,CURL='}',LCURL=1) INTEGER BUFMAX,MAXLEN PARAMETER (BUFMAX=80,MAXLEN=160) INTEGER MAXALG,TITLEN,OTHLEN PARAMETER (MAXALG=750,TITLEN=160,OTHLEN=300) * .. * .. Scalar Arguments .. INTEGER NALG * .. * .. Scalars in Common .. INTEGER NOALGS * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG),SHSORT(MAXALG), + VOL(MAXALG) CHARACTER JOUR(MAXALG),REFS(OTHLEN,MAXALG),TITLES(TITLEN,MAXALG), + SHAR(MAXALG)*3,LABEL(MAXALG)*6 * .. * .. Local Scalars .. INTEGER BUFLEN,FLEN CHARACTER BUFFER* (BUFMAX) * .. * .. Local Arrays .. CHARACTER ARRBUF(MAXLEN) * .. * .. External Functions .. INTEGER LENGTH EXTERNAL LENGTH * .. * .. External Subroutines .. EXTERNAL GETOTC,MAINRF,OUTELT,OUTLIN * .. * .. Common blocks .. COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL * .. * .. Save statement .. SAVE /CALLST/,/CALLIN/ * .. * .. Executable Statements .. CALL OUTLIN(NOIND,LNOIND) CALL OUTLIN(TABST,LTABST) CALL OUTLIN(LABEL(NALG),LENGTH(LABEL(NALG))) CALL OUTLIN(RAGGD,LRAGGD) CALL OUTELT(TITLES(1,NALG),LENTIT(NALG)) CALL OUTLIN(RGIT,LRGIT) CALL MAINRF(BUFFER,BUFLEN,NALG) BUFLEN = BUFLEN + 1 BUFFER(BUFLEN:BUFLEN) = CURL CALL OUTLIN(BUFFER(1:BUFLEN),BUFLEN) IF (LENREF(NALG).NE.0) THEN CALL GETOTC(ARRBUF,FLEN,REFS(1,NALG),LENREF(NALG)) CALL OUTELT(ARRBUF,FLEN) END IF CALL OUTLIN(TABEND,LTABND) * * output a blank line -- well almost CALL OUTLIN(BLNK,LBLNK) END SUBROUTINE OUTCUM * * open file for output of bibtex references * unit number nout must not clash with nin and nerr * which are initialized in routine setup * .. Scalars in Common .. INTEGER NOUT * .. * .. External Subroutines .. EXTERNAL ERROR * .. * .. Common blocks .. COMMON /CBIB/NOUT * .. * .. Save statement .. SAVE /CBIB/ * .. * .. Executable Statements .. NOUT = 7 OPEN (UNIT=NOUT,FILE='cum.tex',STATUS='unknown',FORM='formatted', + ACCESS='sequential',ERR=10) RETURN * deal with possible error opening output file 10 CALL ERROR('Failed to open file for bibtex database') END SUBROUTINE OUTELT(ARRAY,LENGTH) * * Outputs a character array array(1..length) using a buffer * of size at most maxbuf characters, if the length is greater * than maxbuf splits the string on the nearest space. * * .. Parameters .. INTEGER MAXBUF CHARACTER BLNK PARAMETER (MAXBUF=80,BLNK=' ') * .. * .. Scalar Arguments .. INTEGER LENGTH * .. * .. Array Arguments .. CHARACTER ARRAY(LENGTH) * .. * .. Local Scalars .. INTEGER I,J,OLDPTR,PTR CHARACTER BUFFER* (MAXBUF) * .. * .. External Subroutines .. EXTERNAL ERROR,OUTLIN * .. * .. Executable Statements .. OLDPTR = 1 PTR = MAXBUF 10 IF (PTR.GE.LENGTH) THEN J = 0 DO 20 I = OLDPTR,LENGTH J = J + 1 BUFFER(J:J) = ARRAY(I) 20 CONTINUE CALL OUTLIN(BUFFER,LENGTH-OLDPTR+1) RETURN ELSE DO 30 J = PTR,OLDPTR,-1 IF (ARRAY(J).EQ.BLNK) THEN GO TO 40 END IF 30 CONTINUE CALL ERROR('Unbreakable string in outelt - increase maxbuf') 40 PTR = J - 1 J = 0 DO 50 I = OLDPTR,PTR J = J + 1 BUFFER(J:J) = ARRAY(I) 50 CONTINUE CALL OUTLIN(BUFFER,PTR-OLDPTR+1) OLDPTR = PTR + 1 PTR = PTR + MAXBUF GO TO 10 END IF END SUBROUTINE OUTEND * * output the final lines of the LaTeX file * .. Parameters .. CHARACTER*(*) ENDLIN INTEGER LENDLN PARAMETER (ENDLIN='\\end{document}',LENDLN=14) * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Executable Statements .. CALL OUTLIN(ENDLIN,LENDLN) END SUBROUTINE OUTHED * * output the initial LaTeX commands for the index * document. These take the form * * \documentstyle{report} * \begin{document} * \title{Cumulative Index to the ACM Algorithms} * \author{Tim Hopkins and David Morse\\ * University of Kent\\ * Canterbury\\ * Kent, CT2 7NF, UK} * \date{24 June 1989} * \maketitle * * NOTE: This routine may contain implementation dependent * character definition of backslash * * .. Parameters .. CHARACTER*(*) STYLE INTEGER LSTYLE PARAMETER (STYLE='\\documentstyle{report}',LSTYLE=22) CHARACTER*(*) BEGIND INTEGER LBEGIN PARAMETER (BEGIND='\\begin{document}',LBEGIN=16) CHARACTER*(*) TITLE INTEGER LTITLE PARAMETER (TITLE='\\title{Cumulative Index to the ACM Algorithms}' + ,LTITLE=46) CHARACTER*(*) AUTHR1 INTEGER LAUTH1 PARAMETER (AUTHR1='\\author{Tim Hopkins and David Morse\\\\'// + 'University of Kent\\\\',LAUTH1=57) CHARACTER*(*) AUTHR2 INTEGER LAUTH2 PARAMETER (AUTHR2='Canterbury\\\\Kent, CT2 7NF, UK}',LAUTH2=30) CHARACTER*(*) DATE INTEGER LDATE PARAMETER (DATE='\\date{24 June 1989}',LDATE=19) CHARACTER*(*) MAKET INTEGER LMAKET PARAMETER (MAKET='\\maketitle',LMAKET=10) * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Executable Statements .. * CALL OUTLIN(STYLE,LSTYLE) CALL OUTLIN(BEGIND,LBEGIN) CALL OUTLIN(TITLE,LTITLE) CALL OUTLIN(AUTHR1,LAUTH1) CALL OUTLIN(AUTHR2,LAUTH2) CALL OUTLIN(DATE,LDATE) CALL OUTLIN(MAKET,LMAKET) END SUBROUTINE OUTSH(CURPT) * * output the classification heading -- in sharst(curpt) * for the S section only output the heading for the main * section. Group subsections together. * * * ***** Possibly MACHINE DEPENDENT CHARACTER VARIABLE BACKSLASH * ***** used * * LaTeX template used is of the form * * \begin{center}{\small\bf * <shar heading> * }\end{center} * * shar heading is of the form A1:Real arithmetic * * For the subclassifications of the S (Special function) * section the second line of the above template is replaced by * just the mnenomic * * .. Parameters .. CHARACTER*(*) CENHED INTEGER LHED PARAMETER (CENHED='\\begin{center}{\\small\\bf',LHED=24) CHARACTER*(*) CENEND INTEGER LEND PARAMETER (CENEND='}\\end{center}',LEND=13) CHARACTER*(*) SEP INTEGER LSEP PARAMETER (SEP=' : ',LSEP=3) INTEGER MAXBUF,MNLEN,STLEN PARAMETER (MNLEN=3,STLEN=45,MAXBUF=MNLEN+LSEP+STLEN) INTEGER NCLASS PARAMETER (NCLASS=57) * .. * .. Scalar Arguments .. INTEGER CURPT * .. * .. Scalars in Common .. INTEGER MAXSHR,SVAL * .. * .. Arrays in Common .. INTEGER SHARPT(NCLASS+1) CHARACTER SHARMN(NCLASS)* (MNLEN),SHARST(NCLASS)* (STLEN) * .. * .. Local Scalars .. INTEGER ALEN,MLEN CHARACTER BUFFER* (MAXBUF) LOGICAL NOS * .. * .. External Functions .. INTEGER LENGTH EXTERNAL LENGTH * .. * .. External Subroutines .. EXTERNAL OUTLIN * .. * .. Common blocks .. COMMON /CSHAR/SHARMN,SHARST COMMON /CSHARN/MAXSHR,SHARPT,SVAL * .. * .. Save statement .. SAVE /CSHAR/,/CSHARN/,NOS * .. * .. Data statements .. DATA NOS/.true./ * .. * .. Executable Statements .. CALL OUTLIN(CENHED,LHED) IF (SHARMN(CURPT) (1:1).EQ.'S') THEN * * first time we set centred heading IF (NOS) THEN NOS = .false. ALEN = LENGTH(SHARST(SVAL)) MLEN = LENGTH(SHARMN(SVAL)) BUFFER(1:MLEN) = SHARMN(SVAL) (1:MLEN) BUFFER(MLEN+1:MLEN+LSEP) = SEP MLEN = MLEN + LSEP BUFFER(MLEN+1:MLEN+ALEN) = SHARST(SVAL) (1:ALEN) MLEN = MLEN + ALEN CALL OUTLIN(BUFFER(1:MLEN),MLEN) CALL OUTLIN(CENEND,LEND) CALL OUTLIN(CENHED,LHED) END IF * * otherwise set just a section number -- the point is that * the descriptions are like books MLEN = LENGTH(SHARMN(CURPT)) CALL OUTLIN(SHARMN(CURPT) (1:MLEN),MLEN) ELSE * * just set the heading ALEN = LENGTH(SHARST(CURPT)) MLEN = LENGTH(SHARMN(CURPT)) BUFFER(1:MLEN) = SHARMN(CURPT) (1:MLEN) BUFFER(MLEN+1:MLEN+LSEP) = SEP MLEN = MLEN + LSEP BUFFER(MLEN+1:MLEN+ALEN) = SHARST(CURPT) (1:ALEN) MLEN = MLEN + ALEN CALL OUTLIN(BUFFER(1:MLEN),MLEN) END IF CALL OUTLIN(CENEND,LEND) END SUBROUTINE SAVALG * * save the title and other references, shar index * volume, journal and start page number. * form sorted shar index - this is inefficient but * it's not going to be done very often * .. Parameters .. INTEGER MAXALG,AUTLEN,TITLEN,KEYLEN,OTHLEN PARAMETER (MAXALG=750,AUTLEN=80,TITLEN=160,KEYLEN=400,OTHLEN=300) * .. * .. Scalars in Common .. INTEGER NOALGS,NUMBER,PAGEND,PAGEST,VOLUME,YEAR CHARACTER ALABEL* (6),JOURNL* (4),MONTH* (9),LANG* (3),SHARE* (3) * .. * .. Arrays in Common .. INTEGER LENREF(MAXALG),LENTIT(MAXALG),PAGE(MAXALG),SHSORT(MAXALG), + VOL(MAXALG) CHARACTER AUTHOR(AUTLEN),JOUR(MAXALG),KEYWDS(KEYLEN), + OTHERS(OTHLEN),REFS(OTHLEN,MAXALG),TITLE(TITLEN), + TITLES(TITLEN,MAXALG),SHAR(MAXALG)*3,LABEL(MAXALG)*6 * .. * .. Local Scalars .. INTEGER I * .. * .. External Functions .. INTEGER LENARR EXTERNAL LENARR * .. * .. Common blocks .. COMMON /CALLIN/VOL,PAGE,NOALGS,LENTIT,LENREF,SHSORT COMMON /CALLST/TITLES,REFS,JOUR,SHAR,LABEL COMMON /CREFNO/VOLUME,NUMBER,YEAR,PAGEST,PAGEND COMMON /CREFST/ALABEL,JOURNL,MONTH,LANG,SHARE,AUTHOR,TITLE,KEYWDS, + OTHERS * .. * .. Save statement .. SAVE /CREFNO/,/CREFST/,/CALLST/,/CALLIN/ * .. * .. Executable Statements .. NOALGS = NOALGS + 1 * * save title and reference LENTIT(NOALGS) = LENARR(TITLE,TITLEN) LENREF(NOALGS) = LENARR(OTHERS,OTHLEN) DO 10 I = 1,LENTIT(NOALGS) TITLES(I,NOALGS) = TITLE(I) 10 CONTINUE DO 20 I = 1,LENREF(NOALGS) REFS(I,NOALGS) = OTHERS(I) 20 CONTINUE * * save volume, page and shar index VOL(NOALGS) = VOLUME PAGE(NOALGS) = PAGEST SHAR(NOALGS) = SHARE LABEL(NOALGS) = ALABEL * * code for journal IF (JOURNL.EQ.'toms') THEN JOUR(NOALGS) = 'T' ELSE IF (JOURNL.EQ.'cacm') THEN JOUR(NOALGS) = 'C' ELSE JOUR(NOALGS) = 'X' END IF END INTEGER FUNCTION SEMPOS(IPOS,OTHERS) * * Routine to find next semicolon in character array others * on or after position ipos. The semicolon is used as a * separator between references to remarks and certificates. * * .. Parameters .. CHARACTER SEMIC PARAMETER (SEMIC=';') * .. * .. Scalar Arguments .. INTEGER IPOS * .. * .. Array Arguments .. CHARACTER OTHERS(*) * .. * .. Local Scalars .. INTEGER ITEMP * .. * .. Executable Statements .. ITEMP = IPOS 10 IF (OTHERS(ITEMP).NE.SEMIC) THEN ITEMP = ITEMP + 1 GO TO 10 END IF SEMPOS = ITEMP END SUBROUTINE SHARFX(SHTEMP) * * Remove any leading or included blanks and translate all * alphabetic character to upper case * * .. Parameters .. CHARACTER BLNK PARAMETER (BLNK=' ') * .. * .. Scalar Arguments .. CHARACTER SHTEMP* (*) * .. * .. Local Scalars .. INTEGER I,IPOS,JPTR CHARACTER CHAR,LCSTR* (26),UCSTR* (26) * .. * .. External Functions .. INTEGER LENGTH EXTERNAL LENGTH * .. * .. External Subroutines .. EXTERNAL ERROR * .. * .. Intrinsic Functions .. INTRINSIC INDEX,LEN * .. * .. Executable Statements .. UCSTR = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' LCSTR = 'abcdefghijklmnopqrstuvwxyz' * * get rid leading or included blanks JPTR = 0 DO 10 I = 1,LENGTH(SHTEMP) CHAR = SHTEMP(I:I) IF (CHAR.NE.BLNK) THEN JPTR = JPTR + 1 SHTEMP(JPTR:JPTR) = CHAR END IF 10 CONTINUE * * flag null string IF (JPTR.EQ.0) THEN CALL ERROR('Blank shar field') END IF * * convert case DO 20 I = 1,JPTR IPOS = INDEX(LCSTR,SHTEMP(I:I)) IF (IPOS.NE.0) THEN SHTEMP(I:I) = UCSTR(IPOS:IPOS) END IF 20 CONTINUE * * pad with trailing blanks DO 30 I = JPTR + 1,LEN(SHTEMP) SHTEMP(I:I) = BLNK 30 CONTINUE END ============================================================================== lib.f LOGICAL FUNCTION GETREF() * * Getref accumulates a complete reference to a single algorithm. * The function returns false if no reference has been found, * i.e., we are at the end of the file. * * TEMPLATE FOR USE OF GETREF * * set up i/o channels and open data file * (This routine contains a possibly machine dependent * OPEN statement) * CALL SETUP * * set up output file -- application dependent routine * CALL OUTFIL * * initialize input buffer for references * a call to initrf must precede calls to getref * CALL INITRF * * process all references * 10 IF (GETREF()) THEN * process current reference * GO TO 10 * END IF * * * Portability: * * This code along with the two example progams have been checked * with the Toolpack1/2 semantic analyzer and Fortran 77 Pfort. * The only warning generated was for the use of non-standard * characters (lower case - used for comments and some format * statements and backslash used in format statements in the * example programs only). * * The example programs have been run successfully on: * * SUN 3 (SUNOS 4.0) f77 compiler * VAX8800 (VMS V4.7) VMS Fortran * VAX8800 (VMS V4.7) Watfor77 * * * buffer (character*(maxbuf)) - used to buffer each line of data * prior to processing. For the * distributed version of the data * file maxbuf may be set to 80. * form holds the format for splitting up the initial line of the * reference. This contains * * algorithm label, journal, start page, end page, volume, number, * month, year, share classification index, source language * * .. Parameters .. INTEGER NEWFLD,NEWALG PARAMETER (NEWFLD=1,NEWALG=3) INTEGER MAXBUF PARAMETER (MAXBUF=80) INTEGER AUTLEN,TITLEN,KEYLEN,OTHLEN PARAMETER (AUTLEN=80,TITLEN=160,KEYLEN=400,OTHLEN=300) CHARACTER*(*) FORM PARAMETER (FORM='(a6,1x,a4,2i5,2i3,1x,a9,i5,1x,a3,1x,a3)') CHARACTER BLNK PARAMETER (BLNK=' ') * .. * .. Scalars in Common .. INTEGER NERR,NIN,NUMBER,PAGEND,PAGEST,TYPE,VOLUME,YEAR LOGICAL EOF CHARACTER BUFFER* (MAXBUF),ALABEL* (6),JOURNL* (4),MONTH* (9), + LANG* (3),SHARE* (3) * .. * .. Arrays in Common .. CHARACTER AUTHOR(AUTLEN),KEYWDS(KEYLEN),OTHERS(OTHLEN), + TITLE(TITLEN) * .. * .. Local Scalars .. INTEGER I * .. * .. External Subroutines .. EXTERNAL ERROR,GETFLD,NXTLIN * .. * .. Common blocks .. COMMON /CIO/EOF,TYPE,NIN,NERR COMMON /CIOSTR/BUFFER * * common block holds reference items which may usefully be * represented by integers. * * volume - volume number * number - issue number (1-12 for cacm, 1-4 for toms) * year - year of publication * pagest - start page of article * pagend - end page of article (set zero if whole article confined * to a single page * COMMON /CREFNO/VOLUME,NUMBER,YEAR,PAGEST,PAGEND * * stores reference fields in string form * * alabel*(6) - label used to identify an algorithm. In all cases * but two this is an integer. In the odd two cases * it is an integer followed by the letter 'a'. * journl*(4) - either 'cacm' or 'toms' * month *(9) - month of publication e.g., January, December etc. * lang *(3) - language in which algorithm is coded * 'F' = Fortran (66 or 77); 'A60' = Algol 60; * 'R' = Ratfor' ; 'PL1' = PL1; * share *(3) - Share classification index * author(autlen) - possibly multiple author names. All author fields * end with a semi colon, multiple authors are * separated by semi colons. * title (titlen) - possibly multiline title concatenated into a single * string. Multiple blanks are compressed to a single * blank. * keywds(keylen) - list of keywords separated by semi colons and * terminated by a semi colon. * others(othlen) - list of remarks and certificates pertaining to the * current reference separated by and terminated by a * semi colon. Each entry has the following form * * R or C,journal,start page,end page,volume,number,month,year,authors; * * The first field states whether the article was a * Remark or Certificate. * Multiple authors are separated by ' and '. * All other field are as described in the main * reference. * * autlen, titlen, keylen, othlen are parameter values. COMMON /CREFST/ALABEL,JOURNL,MONTH,LANG,SHARE,AUTHOR,TITLE,KEYWDS, + OTHERS * .. * .. Save statement .. SAVE /CIO/,/CIOSTR/,/CREFNO/,/CREFST/ * .. * .. Executable Statements .. IF (EOF) THEN GETREF = .false. RETURN END IF * buffer should contain the first line of a new reference IF (TYPE.NE.NEWALG) THEN CALL ERROR('Inconsistent data - in getref') END IF * split the initial line READ (BUFFER,FMT=FORM) ALABEL,JOURNL,PAGEST,PAGEND,VOLUME,NUMBER, + MONTH,YEAR,SHARE,LANG CALL NXTLIN * get possibly multiline fields for author, title and keywords * these are always present. CALL GETFLD(AUTHOR,AUTLEN) CALL GETFLD(TITLE,TITLEN) CALL GETFLD(KEYWDS,KEYLEN) GETREF = .true. * could be end of file need to process this record IF (EOF) THEN * * if others field is not present set others to all blanks * to ensure it is defined DO 10 I = 1,OTHLEN OTHERS(I) = BLNK 10 CONTINUE RETURN END IF IF (TYPE.EQ.NEWFLD) THEN CALL GETFLD(OTHERS,OTHLEN) ELSE * * if others field is not present set others to all blanks * to ensure it is defined DO 20 I = 1,OTHLEN OTHERS(I) = BLNK 20 CONTINUE END IF END SUBROUTINE ERROR(ERRSTR) * * Output routine for error messages passed via errstr * Errors are assumed fatal. * parameter values * .. Scalar Arguments .. CHARACTER ERRSTR* (*) * .. * .. Scalars in Common .. INTEGER NERR,NIN,TYPE LOGICAL EOF * .. * .. Common blocks .. COMMON /CIO/EOF,TYPE,NIN,NERR * .. * .. Save statement .. SAVE /CIO/ * .. * .. Executable Statements .. WRITE (NERR,FMT='(a)') ERRSTR STOP END SUBROUTINE GETFLD(FLD,MAXFLD) * * Builds a complete field in the character variable fld. * This may involve reading an initial line followed by * zero, one, or more continuation lines. This routine must * not be used to input an initial line (type=newalg) directly. * parameter values * buffer (character*(maxbuf)) - used to buffer each line of data * prior to processing. For the * distributed version of the data * file maxbuf may be set to 80. * .. Parameters .. INTEGER NEWFLD,CONT PARAMETER (NEWFLD=1,CONT=2) INTEGER MAXBUF PARAMETER (MAXBUF=80) CHARACTER SPACE PARAMETER (SPACE=' ') * .. * .. Scalar Arguments .. INTEGER MAXFLD * .. * .. Array Arguments .. CHARACTER FLD(MAXFLD) * .. * .. Scalars in Common .. INTEGER NERR,NIN,TYPE LOGICAL EOF CHARACTER BUFFER* (MAXBUF) * .. * .. Local Scalars .. INTEGER I,ILEN,LENFLD * .. * .. External Functions .. INTEGER LENGTH EXTERNAL LENGTH * .. * .. External Subroutines .. EXTERNAL ERROR,NXTLIN * .. * .. Common blocks .. COMMON /CIO/EOF,TYPE,NIN,NERR COMMON /CIOSTR/BUFFER * .. * .. Save statement .. SAVE /CIO/,/CIOSTR/ * .. * .. Executable Statements .. * check for consistent data IF (EOF .OR. TYPE.NE.NEWFLD) THEN PRINT *,EOF,TYPE,NEWFLD CALL ERROR('Inconsistent data - in getfld') END IF * initialize field - strip off leading space and trailing spaces DO 5 I = 1,MAXFLD FLD(I) = SPACE 5 CONTINUE LENFLD = LENGTH(BUFFER(2:MAXBUF)) IF (LENFLD.GT.MAXFLD) THEN CALL ERROR('Argument to getfld not long enough') ELSE DO 7 I = 2,LENFLD + 1 FLD(I-1) = BUFFER(I:I) 7 CONTINUE END IF * concatenate continuation lines if present 10 CALL NXTLIN * could have an eof here when getting last keywords field IF (EOF) RETURN IF (TYPE.EQ.CONT) THEN ILEN = LENGTH(BUFFER(2:MAXBUF)) IF (LENFLD+ILEN.GT.MAXFLD) THEN CALL ERROR('Argument to getfld not long enough') ELSE DO 15 I = 2,ILEN + 1 FLD(LENFLD+I-1) = BUFFER(I:I) 15 CONTINUE END IF LENFLD = LENFLD + ILEN GO TO 10 END IF END SUBROUTINE INITRF * * Routine used to initialize the input buffer. It must be * called prior to the first call to getref and after the * call to setup. * parameter values * .. Parameters .. INTEGER NEWALG PARAMETER (NEWALG=3) * .. * .. Scalars in Common .. INTEGER NERR,NIN,TYPE LOGICAL EOF * .. * .. External Subroutines .. EXTERNAL ERROR,NXTLIN * .. * .. Common blocks .. COMMON /CIO/EOF,TYPE,NIN,NERR * .. * .. Save statement .. SAVE /CIO/ * .. * .. Executable Statements .. CALL NXTLIN * check we have a newalg line IF (EOF .OR. TYPE.NE.NEWALG) THEN CALL ERROR('Inconsistent data file - in initrf') END IF END INTEGER FUNCTION LENGTH(STRING) * * Strips trailing spaces and returns the number of characters * to the first non-blank from the right-hand end * .. Parameters .. CHARACTER SPACE PARAMETER (SPACE=' ') * .. * .. Scalar Arguments .. CHARACTER STRING* (*) * .. * .. Local Scalars .. INTEGER I,MAXLEN * .. * .. Intrinsic Functions .. INTRINSIC LEN * .. * .. Executable Statements .. MAXLEN = LEN(STRING) DO 10 I = MAXLEN,1,-1 IF (STRING(I:I).NE.SPACE) GO TO 20 10 CONTINUE I = 0 20 LENGTH = I END SUBROUTINE NXTLIN * * Routine to read next line of input from the data file into * buffer. If end of file is detected eof is set true (false * otherwise). The line is classified, using type, as a new * algorithm (type = newalg(3)), a new field (type = newfld(1)) * or a continuation line (type=cont(2)). Type values are set in * the parameter statement associated with common block cio. * parameter values * buffer (character*(maxbuf)) - used to buffer each line of data * prior to processing. For the * distributed version of the data * file maxbuf may be set to 80. * .. Parameters .. INTEGER NEWFLD,CONT,NEWALG PARAMETER (NEWFLD=1,CONT=2,NEWALG=3) INTEGER MAXBUF PARAMETER (MAXBUF=80) CHARACTER SPACE,PLUS PARAMETER (SPACE=' ',PLUS='+') * .. * .. Scalars in Common .. INTEGER NERR,NIN,TYPE LOGICAL EOF CHARACTER BUFFER* (MAXBUF) * .. * .. Local Scalars .. CHARACTER FIRSTL * .. * .. External Functions .. INTEGER LENGTH EXTERNAL LENGTH * .. * .. Common blocks .. COMMON /CIO/EOF,TYPE,NIN,NERR COMMON /CIOSTR/BUFFER * .. * .. Save statement .. SAVE /CIO/,/CIOSTR/ * .. * .. Executable Statements .. * get a line of text 10 READ (NIN,FMT='(a80)',END=100) BUFFER * ignore blank lines IF (LENGTH(BUFFER).EQ.0) GO TO 10 * classify line by first character FIRSTL = BUFFER(1:1) IF (FIRSTL.EQ.SPACE) THEN TYPE = NEWFLD ELSE IF (FIRSTL.EQ.PLUS) THEN TYPE = CONT ELSE TYPE = NEWALG END IF EOF = .false. RETURN * here if end of file detected on read 100 EOF = .true. END ============================================================================== shared.f INTEGER FUNCTION ITOA(NUMBER,STRING) * * converts an integer to an equivalent string. The length of the * string is returned through the function name * .. Parameters .. CHARACTER SPACE PARAMETER (SPACE=' ') * .. * .. Scalar Arguments .. INTEGER NUMBER CHARACTER STRING* (*) * .. * .. Local Scalars .. INTEGER ALEN,DIGIT,I,J,SLEN,TEMP CHARACTER CH,NUMBS* (10) * .. * .. External Subroutines .. EXTERNAL ERROR * .. * .. Intrinsic Functions .. INTRINSIC LEN,MOD * .. * .. Data statements .. DATA NUMBS/'0123456789'/ * .. * .. Executable Statements .. * initialize ALEN = 0 SLEN = LEN(STRING) DO 10 I = 1,SLEN STRING(I:I) = SPACE 10 CONTINUE * repeat loop until temp=0 TEMP = NUMBER 20 DIGIT = MOD(TEMP,10) + 1 TEMP = TEMP/10 ALEN = ALEN + 1 IF (ALEN.GT.SLEN) THEN CALL ERROR('String not long enough - in itoa') END IF STRING(ALEN:ALEN) = NUMBS(DIGIT:DIGIT) IF (TEMP.NE.0) GO TO 20 * reverse the string J = ALEN DO 30 I = 1,ALEN/2 CH = STRING(I:I) STRING(I:I) = STRING(J:J) STRING(J:J) = CH J = J - 1 30 CONTINUE ITOA = ALEN END INTEGER FUNCTION LENARR(ARR,MAXARR) * *.. find the 'length' of a character array i.e., the position *.. of the first non-space character from the end. * .. Parameters .. CHARACTER SPACE PARAMETER (SPACE=' ') * .. * .. Scalar Arguments .. INTEGER MAXARR * .. * .. Array Arguments .. CHARACTER ARR(MAXARR) * .. * .. Local Scalars .. INTEGER I * .. * .. Executable Statements .. DO 10 I = MAXARR,1,-1 IF (ARR(I).NE.SPACE) GO TO 20 10 CONTINUE I = 0 20 LENARR = I END SUBROUTINE OUTLIN(LINE,LENGTH) * * routine to output line(1:length) to the output file * the associated unit number is nout in the common block * cbib (see outset) * .. Scalar Arguments .. INTEGER LENGTH CHARACTER LINE* (*) * .. * .. Scalars in Common .. INTEGER NOUT * .. * .. Common blocks .. COMMON /CBIB/NOUT * .. * .. Save statement .. SAVE /CBIB/ * .. * .. Executable Statements .. WRITE (NOUT,FMT='(a)') LINE(1:LENGTH) END SUBROUTINE SETUP * * ***** Implementation Dependent Routine ***** * * nin - unit number for data reference file * nerr - unit number for error messages * filenm - implementation dependent name of data reference file * * .. Scalars in Common .. INTEGER NERR,NIN,TYPE LOGICAL EOF * .. * .. Local Scalars .. CHARACTER FILENM*15 * .. * .. External Subroutines .. EXTERNAL ERROR * .. * .. Common blocks .. COMMON /CIO/EOF,TYPE,NIN,NERR * .. * .. Save statement .. SAVE /CIO/ * .. * .. Executable Statements .. NIN = 5 NERR = 6 FILENM = 'acm.dat' * * ***** Open statement may be implementation dependent ***** OPEN (NIN,FILE=FILENM,STATUS='old',ACCESS='sequential', + FORM='formatted',ERR=10) RETURN * * deal with error condition on opening file 10 CALL ERROR('Failed to open data file') END