Fortran77 Source Codes


  1. analemma, a Fortran77 code which evaluates the equation of time, a formula for the difference between the uniform 24 hour day and the actual position of the sun, creating data files that can be plotted with gnuplot, based on a C program by Brian Tung.
  2. args, a Fortran77 code which reports the command line arguments of a Fortran77 program;
  3. asa005, a Fortran77 code which evaluates the Cumulative Density Function (CDF) of the noncentral T Probability Density Function (PDF), by BE Cooper. This is a version of Applied Statistics Algorithm 5;
  4. asa006, a Fortran77 code which computes the Cholesky factorization of a symmetric positive definite (SPD) matrix, by Michael Healy. This is a version of Applied Statistics Algorithm 6;
  5. asa007, a Fortran77 code which computes the inverse of a symmetric positive definite (SPD) matrix, by Michael Healy. This is a version of Applied Statistics Algorithm 7.
  6. asa032, a Fortran77 code which evaluates the incomplete Gamma function, by G Bhattacharjee. This is a version of Applied Statistics Algorithm 32.
  7. asa047, a Fortran77 code which minimizes a scalar function of several variables using the Nelder-Mead algorithm, by R ONeill. This is a version of Applied Statistics Algorithm 47.
  8. asa053, a Fortran77 code which produces sample matrices from the Wishart distribution, by William Smith and Ronald Hocking. This is a version of Applied Statistics Algorithm 53.
  9. asa058, a Fortran77 code which implements the K-means data clustering algorithm, by David Sparks. This is a version of Applied Statistics Algorithm 58.
  10. asa063, a Fortran77 code which evaluates the incomplete Beta function, by KL Majumder and G Bhattacharjee. This is a version of Applied Statistics Algorithm 63.
  11. asa066, a Fortran77 code which evaluates the Cumulative Density Function (CDF) of the normal probability distribution, by David Hill. This is a version of Applied Statistics Algorithm 66.
  12. asa076, a Fortran77 code which evaluates the Owen T function, needed to compute the Cumulative Density Function (CDF) of the noncentral T distribution, by Young and Minder. This is a version of Applied Statistics Algorithm 76.
  13. asa082, a Fortran77 code which computes the determinant of an orthogonal matrix; this is a version of Applied Statistics Algorithm 82, by J C Gower.
  14. asa082_test
  15. asa091, a Fortran77 code which evaluates the percentage points of the Chi-Squared distribution, by Best and Roberts. This is a version of Applied Statistics Algorithm 91.
  16. asa103, a Fortran77 code which evaluates the digamma or psi function, by Jose Bernardo. This is a version of Applied Statistics Algorithm 103.
  17. asa109, a Fortran77 code which inverts the incomplete Beta function, by Cran, Martin and Thomas. This is a version of Applied Statistics Algorithm 109.
  18. asa111, a Fortran77 code which evaluates the percentage points of the normal distribution, by Beasley and Springer. This is a version of Applied Statistics Algorithm 111.
  19. asa113, a Fortran77 code which implements a clustering algorithm using transfers and swaps, by Banfield and Bassill. This is a version of Applied Statistics Algorithm 113.
  20. asa121, a Fortran77 code which evaluates the trigamma function, by BE Schneider. This is a version of Applied Statistics Algorithm 121.
  21. asa136, a Fortran77 code which implements a clustering algorithm, by Hartigan and Wong. This is a version of Applied Statistics Algorithm 136.
  22. asa144, a Fortran77 code which randomly generates an RxC contingency table, by James Boyett. This is a version of Applied Statistics Algorithm 144.
  23. asa147, a Fortran77 code which evaluates the incomplete Gamma function, by Chi Leung Lau. This is a version of Applied Statistics Algorithm 147.
  24. asa152, a Fortran77 code which evaluates the Probability Density Function (PDF) and Cumulative Density Function (CDF) associated with the hypergeometric distribution, by Richard Lund; this is a version of Applied Statistics Algorithm 152.
  25. asa159, a Fortran77 code which randomly generates an RxC contingency table, by Michael Patefield; This is a version of Applied Statistics Algorithm 159.
  26. asa172, a Fortran77 code which generates all M-dimensional indices in a given range, simulating the behavior of an arbitrary number of nested loops, by OFlaherty and MacKenzie. this is a version of Applied Statistics Algorithm 172;
  27. asa183, a Fortran77 code which implements a random number generator (RNG), by Wichman and Hill. This is a version of Applied Statistics Algorithm 183.
  28. asa189, a Fortran77 code which estimates the parameters of a beta binomial distribution based on a sample of values generated by the distribution, by D Smith; this is a version of Applied Statistics Algorithm 189;
  29. asa205, a Fortran77 code which generates all the contingency tables corresponding to a given set of row and column sums. This is a version of Applied Statistics Algorithm 205;
  30. asa226, a Fortran77 code which evaluates the Cumulative Density Function (CDF) of the noncentral Beta distribution, by Russell Lenth. This is a version of Applied Statistics Algorithm 226.
  31. asa239, a Fortran77 code which evaluates the incomplete Gamma function, by Shea. This is a version of Applied Statistics Algorithm 239.
  32. asa241, a Fortran77 code which evaluates the percentage points of the normal distribution, by Michael Wichura. This is a version of Applied Statistics Algorithm 241.
  33. asa243, a Fortran77 code which evaluates the Cumulative Density Function (CDF) of the noncentral T distribution, by Russell Lenth; this is a version of Applied Statistics Algorithm 243.
  34. asa245, a Fortran77 code which evaluates the logarithm of the Gamma function, by Allan Mcleod; this is a version of Applied Statistics Algorithm 245.
  35. asa266, a Fortran77 code which evaluates various properties of the Dirichlet Probability Density Function (PDF); This is a version of Applied Statistics Algorithm 266.
  36. asa299, a Fortran77 code which computes the lattice points in an M-dimensional simplex, by Chasalow and Brand; this is a version of Applied Statistics Algorithm 299;
  37. asa310, a Fortran77 code which computes the Cumulative Density Function (CDF) of the noncentral Beta distribution, by Chattamvelli and Shanmugam; this is a version of Applied Statistics Algorithm 310.
  38. asa314, a Fortran77 code which computes the inverse of a matrix whose elements are subject to modulo arithmetic, by Roger Payne. This is a version of Applied Statistics Algorithm 314;
  39. atkinson, a Fortran77 code which contains examples from Atkinson's Elementary Numerical Analysis text.
  40. atkinson_test
  41. backtrack_binary_rc, a Fortran77 code which carries out a backtrack search for a set of binary decisions, using reverse communication.
  42. ball_grid, a Fortran77 code which computes grid points inside a 3D ball.
  43. ball_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of the unit ball in 3D.
  44. ball_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit ball in 3D;
  45. band_qr, a Fortran77 code which computes the QR factorization of a banded matrix, and can solve related linear systems, by Alfredo Remon, Enrique Quintana-Orti, Gregorio Quintana-Orti.
  46. barycentric_interp_1d, a Fortran77 code which defines and evaluates the barycentric Lagrange polynomial p(x) which interpolates a set of data, so that p(x(i)) = y(i). The barycentric approach means that very high degree polynomials can safely be used.
  47. bdmlib, a Fortran77 code which estimates the weights in a Dirichlet mixtured based on sample data;
  48. bellman_ford, a Fortran77 code which implements the Bellman-Ford algorithm for finding the shortest distance from a given node to all other nodes in a directed graph whose edges have been assigned real-valued lengths.
  49. bernstein_polynomial, a Fortran77 code which evaluates the Bernstein polynomials;
  50. beta_nc, a Fortran77 code which evaluates the cumulative density function (CDF) of the noncentral Beta distribution;
  51. biharmonic_2d, a Fortran77 library which solves a version of the biharmonic equation in two dimensions, by Petter Bjorstad. I could not get this code to run a simple test case!
  52. biharmonic_2d_test
  53. bins, a Fortran77 code which orders, sorts and searches data using bins;
  54. bisection_integer, a Fortran77 code which seeks an integer solution to the equation F(X)=0, using bisection within a user-supplied change of sign interval [A,B].
  55. bisection_rc, a Fortran77 code which seeks a solution to the equation F(X)=0 using bisection within a user-supplied change of sign interval [A,B]. The procedure is written using reverse communication.
  56. black_scholes, a Fortran77 code which implements some simple approaches to the Black-Scholes option valuation theory, creating graphics files for processing by gnuplot, by Desmond Higham.
  57. blas, a Fortran77 code which contains the Basic Linear Algebra Subprograms (BLAS) for level 1, 2 and 3, for single and double precision, and for real and complex arithmetic.
  58. blas0, a Fortran77 code which contains auxilliary functions for the Basic Linear Algebra Subprograms (BLAS).
  59. blas1_c, a Fortran77 code which constitutes the Level 1 Basic Linear Algebra Subprograms (BLAS), for vector-vector operations using single precision complex arithmetic, by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh.
  60. blas1_d, a Fortran77 code which constitutes the Level 1 Basic Linear Algebra Subprograms (BLAS), for vector-vector operations using double precision real arithmetic, by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh.
  61. blas1_s, a Fortran77 code which constitutes the Level 1 Basic Linear Algebra Subprograms (BLAS), for vector-vector operations using single precision real arithmetic, by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh.
  62. blas1_z, a Fortran77 code which constitutes the Level 1 Basic Linear Algebra Subprograms (BLAS), for vector-vector operations using double precision complex arithmetic, by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh.
  63. blas2_c, a Fortran77 code which constitutes the Level 2 Basic Linear Algebra Subprograms (BLAS), for matrix-vector operations using single precision complex arithmetic.
  64. blas2_d, a Fortran77 code which constitutes the Level 2 Basic Linear Algebra Subprograms (BLAS), for matrix-vector operations using double precision real arithmetic.
  65. blas2_s, a Fortran77 code which constitutes the Level 2 Basic Linear Algebra Subprograms (BLAS), for matrix-vector operations using single precision real arithmetic.
  66. blas2_z, a Fortran77 code which constitutes the Level 2 Basic Linear Algebra Subprograms (BLAS), for matrix-vector operations using double precision complex arithmetic.
  67. blas3_c, a Fortran77 code which constitutes the Level 3 Basic Linear Algebra Subprograms (BLAS), for matrix-matrix operations using single precision complex arithmetic.
  68. blas3_d, a Fortran77 code which constitutes the Level 3 Basic Linear Algebra Subprograms (BLAS), for matrix-matrix operations using double precision real arithmetic.
  69. blas3_s, a Fortran77 code which constitutes the Level 3 Basic Linear Algebra Subprograms (BLAS), for matrix-matrix operations using single precision real arithmetic.
  70. blas3_z, a Fortran77 code which constitutes the Level 3 Basic Linear Algebra Subprograms (BLAS), for matrix-matrix operations using double precision complex arithmetic.
  71. blend, a Fortran77 code which carries out 1D/2D/3D blending interpolation;
  72. box_behnken, a Fortran77 code which computes a Box-Behnken design, that is, a set of arguments to sample the behavior of a function of multiple parameters;
  73. brent_original, a Fortran77 code which contains routines for finding zeroes or minima of a scalar function of a scalar variable, without the use of derivative information, in the original format, by Richard Brent.
  74. brent_original_test
  75. brownian_motion_simulation, a Fortran77 code which simulates Brownian motion in an M-dimensional region, creating graphics files for processing by gnuplot.
  76. burgers_solution, a Fortran77 code which evaluates an exact solution of the time-dependent 1D viscous Burgers equation.
  77. bvec, a Fortran77 code which demonstrates how signed integers can be stored as binary vectors, and arithmetic can be performed on them.
  78. bvls, a Fortran77 code which applies least squares methods to solve a linear system for which lower and upper constraints may have been placed on every variable, by Charles Lawson and Richard Hanson.
  79. bvpsol, a Fortran77 code which solves a highly nonlinear two point boundary value problem (BVP) using a local linear solver condensing algorithm or a global sparse linear solver for the solution of the arising linear subproblems, by Peter Deuflhard, Georg Bader, Lutz Weimann.
  80. c4lib, a Fortran77 code which implements certain elementary functions for single precision complex variables;
  81. c8lib, a Fortran77 code which implements certain elementary functions for double precision complex variables;
  82. cauchy_principal_value, a Fortran77 code which uses Gauss-Legendre quadrature to estimate the Cauchy Principal Value (CPV) of certain singular integrals.
  83. cc_to_st a Fortran77 code which converts a sparse matrix from Compressed Column Storage (CCS) to sparse triplet (ST) format.
  84. ccn_rule, a Fortran77 code which defines a one of a sequence of nested Clenshaw Curtis quadrature rules of any order.
  85. ccs_io a Fortran77 code which reads and writes sparse linear systems stored in the Compressed Column Storage (CCS) format.
  86. cell, a Fortran77 code which defines a cell array, a generalization of an array which can compactly store and retrieve vector or matrix data of varying size, such as the rows of a triangular matrix.
  87. cellular_automaton, a Fortran77 code which demonstrates the 1D Cellular Automaton known as rule #30.
  88. cg, a Fortran77 code which implements a simple version of the conjugate gradient (CG) method for solving a system of linear equations of the form A*x=b, suitable for situations in which the matrix A is positive definite, only real, positive eigenvalues and symmetric.
  89. cg_plus, a Fortran77 code which implements the conjugate gradient method for the minimization of a scalar functional;
  90. cg_rc, a Fortran77 code which implements the conjugate gradient method for solving a positive definite sparse linear system A*x=b, using reverse communication.
  91. change_dynamic, a Fortran77 code which uses dynamic programming to solve the change making problem, in which a given sum is to be formed using coins of various denominations.
  92. change_dynamic_test
  93. chebyshev, a Fortran77 code which computes the Chebyshev interpolant/approximant to a given function over an interval.
  94. chebyshev_interp_1d, a Fortran77 code which determines the combination of Chebyshev polynomials which interpolates a set of data, so that p(x(i)) = y(i).
  95. chebyshev_polynomial, a Fortran77 code which considers the Chebyshev polynomials T(i,x), U(i,x), V(i,x) and W(i,x). Functions are provided to evaluate the polynomials, determine their zeros, produce their polynomial coefficients, produce related quadrature rules, project other functions onto these polynomial bases, and integrate double and triple products of the polynomials.
  96. chebyshev_series, a Fortran77 code which can evaluate a Chebyshev series approximating a function f(x), while efficiently computing one, two or three derivatives of the series, which approximate f'(x), f''(x), and f'''(x), by Manfred Zimmer.
  97. chrpak, a Fortran77 code which can be used to analyze and manipulate character strings;
  98. circle_arc_grid, a Fortran77 code which computes grid points along a circular arc.
  99. circle_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the circumference of the unit circle in 2D.
  100. circle_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate the integral of a function along the circumference of the unit circle in 2D;
  101. circle_rule, a Fortran77 code which computes quadrature rules for the unit circle in 2D, that is, the circumference of the circle of radius 1 and center (0,0).
  102. circle_segment, a Fortran77 code which carries out computations associated with a circle segment, including height, angle, area, centroid, sampling, and quadrature, creating some graphics images using gnuplot.
  103. clenshaw_curtis_rule, a Fortran77 code which implements a Clenshaw Curtis quadrature rule;
  104. colnew, a Fortran77 code which solves a system of boundary value problems (BVP), a mixed-order system of ordinary differential equations (ODE) subject to separated, multipoint boundary conditions, using collocation at Gaussian points, by Uri Ascher and Georg Bader.
  105. colored_noise, a Fortran77 code which generates samples of noise obeying a 1/f^alpha power law.
  106. combination_lock, a Fortran77 code which simulates the process of determining the secret combination of a lock.
  107. combo, a Fortran77 code which includes routines for ranking, unranking, enumerating and randomly selecting balanced sequences, cycles, graphs, Gray codes, subsets, partitions, permutations, restricted growth functions, Pruefer codes and trees.
  108. communicator_mpi, a Fortran77 code which creates new communicators involving a subset of initial set of MPI processes in the default communicator MPI_COMM_WORLD.
  109. compass_search, a Fortran77 code which seeks the minimizer of a scalar function of several variables using compass search, a direct search algorithm that does not use derivatives.
  110. complex_numbers_test, a Fortran77 code which demonstrates some simple features involved in the use of complex numbers in Fortran77 programming.
  111. components, a Fortran77 code which organizes contiguous cells into labeled clusters, for a 1D, 2D, or 3D array. This code has uses in image analysis and percolation simulation.
  112. components_test
  113. condition, a Fortran77 code which implements methods of computing or estimating the condition number of a matrix.
  114. conte_deboor, a Fortran77 code which contains examples from Conte and deBoor's Elementary Numerical Analysis text.
  115. conte_deboor_test
  116. cordic, a Fortran77 code which computes a few special functions using the CORDIC algorithm.
  117. correlation, a Fortran77 code which contains examples of statistical correlation functions.
  118. cube_arbq_rule, a Fortran77 code which returns quadrature rules, with exactness up to total degree 15, over the interior of the symmetric cube in 3D, by Hong Xiao and Zydrunas Gimbutas.
  119. cube_exactness, a Fortran77 code which investigates the polynomial exactness of quadrature rules over the interior of a cube in 3D.
  120. cube_felippa_rule, a Fortran77 code which returns Felippa's quadratures rules for approximating integrals over the interior of a cube in 3D.
  121. cube_grid, a Fortran77 code which computes a grid of points over the interior of a cube in 3D.
  122. cube_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of the unit cube in 3D.
  123. cube_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit cube in 3D.
  124. cwg_ode, a Fortran77 code which contains three ODE solvers by William Gear.
  125. cycle_brent, a Fortran77 code which carries out an iterated function evaluation, and seeks to determine the nearest element of a cycle, and the cycle's length, using Brent's method.
  126. cycle_floyd, a Fortran77 code which carries out an iterated function evaluation, and seeks to determine the nearest element of a cycle, and the cycle's length, using Floyd's method.
  127. cyclic_reduction, a Fortran77 code which solves a tridiagonal linear system using cyclic reduction;
  128. diaphony, a Fortran77 code which reads a file of N points in M dimensions and computes its diaphony, a measure of point dispersion.
  129. differ, determines the finite difference coefficients necessary in order to combine function values at known locations to compute an approximation of given accuracy to a derivative of a given order.
  130. dijkstra, a Fortran77 code which implements a simple version of Dijkstra's minimum distance algorithm for graphs.
  131. dijkstra_openmp, a Fortran77 code which uses OpenMP to parallelize a simple example of Dijkstra's minimum distance algorithm for graphs.
  132. disk_grid, a Fortran77 code which computes grid points within the interior of a disk of user specified radius and center in 2D, using GNUPLOT to create an image of the grid.
  133. disk01_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of the unit disk in 2D.
  134. disk01_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit disk in 2D;
  135. disk01_rule, a Fortran77 code which computes quadrature rules for the unit disk in 2D, that is, the interior of the circle of radius 1 and center (0,0).
  136. dislin_test
  137. divdif, a Fortran77 code which interpolates data using divided difference tables;
  138. doomsday, a Fortran77 code which is given the year, month and day of a date, and uses John Conway's doomsday algorithm to determine the corresponding day of the week.
  139. dqed, a Fortran77 code which solves bounded and constrained least squares problems and systems of nonlinear equations;
  140. duel_simulation, a Fortran77 code which simulates N repetitions of a duel between two players, each of whom has a known firing accuracy.
  141. edge, a Fortran77 code which defines some test functions in 1D, 2D and 3D for the detection of edges or discontinuities, and using GNUPLOT to display the curves or surfaces.
  142. eispack, a Fortran77 code which carries out eigenvalue computations; superseded by LAPACK;
  143. eispack_test
  144. ellipse_grid, a Fortran77 code which computes a grid of points over the interior of an ellipse in 2D.
  145. ellipse_monte_carlo, a Fortran77 code which uses the Monte Carlo method to estimate the value of integrals over the interior of an ellipse in 2D.
  146. ellipsoid_grid, a Fortran77 code which computes a grid points over the interior of an ellipsoid in 3D.
  147. ellipsoid_monte_carlo, a Fortran77 code which uses the Monte Carlo method to estimate the value of integrals over the interior of an ellipsoid in M dimensions.
  148. elliptic_integral, a Fortran77 code which evaluates complete elliptic integrals of first, second and third kind, using Carlson's elliptic integral functions.
  149. exactness, a Fortran77 code which investigates the exactness of quadrature rules that estimate the integral of a function with a density, such as 1, exp(-x) or exp(-x^2), over an interval such as [-1,+1], [0,+oo) or (-oo,+oo).
  150. expokit, a Fortran77 code which solves various forms of the matrix exponential problem, by Roger Sidje.
  151. f77, Fortran77 codes which illustrate features of Fortran77;
  152. f77_calls_c, Fortran77 codes which illustrate how a Fortran77 program can call a C function.
  153. f77_calls_c++, Fortran77 codes which illustrate how a Fortran77 program can call a C++ function.
  154. f77_calls_matlab, Fortran77 codes which illustrate how a Fortran77 program can interact with MATLAB;
  155. f77_condor, Fortran77 codes which illustrate how a Fortran77 program can be run in batch mode using the condor queueing system.
  156. f77_intrinsics, Fortran77 codes which illustrate the use of some of the intrinsic functions included with the F77 standard language;
  157. f77_mistake, Fortran77 codes which illustrate some simple but devious programming mistakes in Fortran77.
  158. f77_return, Fortran77 codes which illustrates how a Fortran77 program can return a program status value to the calling environment.
  159. fair_dice_simulation, a Fortran77 code which simulates N tosses of 2 dice, writing graphics files for processing by gnuplot.
  160. fd_predator_prey, a Fortran77 code which solves a pair of predator prey ordinary differential equations (ODE) using a finite difference approximation.
  161. fd1d_advection_diffusion_steady, a Fortran77 code which applies the finite difference method (FDM) to solve the steady advection diffusion equation v*ux-k*uxx=0 in one spatial dimension, with constant velocity v and diffusivity k, writing graphics files for processing by gnuplot.
  162. fd1d_advection_ftcs, a Fortran77 code which applies the finite difference method (FDM) to solve the time-dependent advection equation ut = - c * ux in one spatial dimension, with a constant velocity, using the FTCS method, forward time difference, centered space difference, writing graphics files for processing by gnuplot.
  163. fd1d_advection_lax, a Fortran77 code which applies the finite difference method (FDM) to solve the time-dependent advection equation ut = - c * ux in one spatial dimension, with a constant velocity, using the Lax method to approximate the time derivative, writing graphics files for processing by gnuplot.
  164. fd1d_advection_lax_wendroff, a Fortran77 code which applies the finite difference method (FDM) to solve the time-dependent advection equation ut = - c * ux in one spatial dimension, with a constant velocity, using the Lax-Wendroff method to approximate the time derivative, writing graphics files for processing by gnuplot.
  165. fd1d_burgers_lax, a Fortran77 code which applies the finite difference method (FDM) and the Lax Wendroff method to solve the non-viscous time-dependent Burgers equation in one spatial dimension.
  166. fd1d_burgers_leap, a Fortran77 code which applies the finite difference method (FDM) and the leapfrog approach to solve the non-viscous time-dependent Burgers equation in one spatial dimension.
  167. fd1d_bvp, a Fortran77 code which applies the finite difference method (FDM) to a two point boundary value problem (BVP) in one spatial dimension.
  168. fd1d_heat_explicit, a Fortran77 code which implements a finite difference method (FDM), explicit in time, of the time dependent 1D heat equation;
  169. fd1d_heat_implicit, a Fortran77 code which implements a finite difference method (FDM), implicit in time, of the time dependent 1D heat equation;
  170. fd1d_heat_steady, a Fortran77 code which implements a finite difference method (FDM) for the steady time-independent 1D heat equation;
  171. fd1d_predator_prey, a Fortran77 code which implements a finite difference method (FDM) for a 1D predator-prey system;
  172. fd1d_wave, a Fortran77 code which applies the finite difference method (FDM) to solve the time-dependent wave equation utt = c * uxx in one spatial dimension.
  173. fd2d_heat_steady, a Fortran77 code which implements a finite difference method (FDM) for the steady time-independent 2D heat equation;
  174. fem_basis, a Fortran77 code which can define and evaluate basis functions associated with the finite element method (FEM) for any degree in an M-dimensional simplex: 1D interval, 2D triangle, 3D tetrahedron, and higher dimensional generalizations.
  175. fem_io, a Fortran77 code which reads or writes FEM files, which describe the nodes, elements, and function values associated with a finite element method (FEM) model;
  176. fem_to_gmsh, a Fortran77 code which reads a pair of FEM files defining node coordinates and elements, of a 1D, 2D or 3D mesh, namely a file of node coordinates and a file of elements defined by node indices, and creates a gmsh() mesh file.
  177. fem_to_medit, a Fortran77 code which reads a pair of FEM files defining node coordinates and elements, of a 2D mesh, namely a file of node coordinates and a file of elements defined by node indices, and creates a corresponding MEDIT mesh file.
  178. fem_to_triangle, a Fortran77 code which reads FEM files defining a 2D mesh of triangles, namely a file of node coordinates and a file of elements defined by node indices, and creates a corresponding pair of node and element files for use by Jonathan Shewchuk's triangle program.
  179. fem_to_xml, reads a pair of FEM files defining node coordinates and elements, of a 1D, 2D or 3D mesh, namely a file of node coordinates and a file of elements defined by node indices, and creates a corresponding XML file for input to DOLFIN or FENICS.
  180. fem1d, a Fortran77 code which applies the finite element method (FEM), with piecewise linear basis functions, to a linear two point boundary value problem (BVP) in 1D;
  181. fem1d_adaptive, a Fortran77 code which uses an adaptive mesh when applying the finite element method (FEM), with piecewise linear basis functions, to a linear two point boundary value problem (BVP) in 1D;
  182. fem1d_bvp_linear, a Fortran77 code which applies the finite element method (FEM), with piecewise linear elements, to a two point boundary value problem (BVP) in one spatial dimension.
  183. fem1d_bvp_quadratic, a Fortran77 code which applies the finite element method (FEM), with piecewise quadratic elements, to a two point boundary value problem (BVP) in one spatial dimension, and compares the computed and exact solutions with the L2 and seminorm errors.
  184. fem1d_heat_steady, a Fortran77 code which implements the finite element method (FEM) for the steady time-independent 1D heat equation;
  185. fem1d_lagrange, a Fortran77 code which sets up the matrices and vectors associated with the finite element method (FEM) solution of a boundary value problem (BVP) -u''+u=f(x), using Lagrange basis polynomials.
  186. fem1d_nonlinear, a Fortran77 code which applies the finite element method (FEM), with piecewise linear basis functions, to a nonlinear two point boundary value problem (BVP) in 1D;
  187. fem1d_oden, a Fortran77 code which implements a 1D finite element method (FEM) calculation.
  188. fem1d_pack, a Fortran77 code which contains utilities for 1D finite element method (FEM) calculations.
  189. fem1d_pmethod, a Fortran77 code which applies the p-method version of the finite element method (FEM) to a linear two point boundary value problem (BVP) in 1D;
  190. fem1d_project, a Fortran77 code which projects data into a finite element space, including the least squares approximation of data, or the projection of a finite element solution from one mesh to another.
  191. fem1d_sample, a Fortran77 code which samples a scalar or vector finite element function of one variable, defined by a set of files in FEM format, returning interpolated values at the sample points.
  192. fem2d_bvp_linear, a Fortran77 code which applies the finite element method (FEM), with piecewise linear elements, to a 2D boundary value problem (BVP) in a rectangle, and compares the computed and exact solutions with the L2 and seminorm errors.
  193. fem2d_bvp_quadratic, a Fortran77 code which applies the finite element method (FEM), with piecewise quadratic elements, to a 2D boundary value problem (BVP) in a rectangle, and compares the computed and exact solutions with the L2 and seminorm errors.
  194. fem2d_bvp_serene, a Fortran77 code which applies the finite element method (FEM), with serendipity elements, to a 2D boundary value problem (BVP) in a rectangle, and compares the computed and exact solutions with the L2 and seminorm errors.
  195. fem2d_oden, a Fortran77 code which implements a 2D calculations for the finite element method (FEM);
  196. fem2d_pack, a Fortran77 code which implements simple 2D calculations for the finite element method (FEM);
  197. fem2d_poisson_rectangle, a Fortran77 code which solves the 2D Poisson equation on a rectangle, using the finite element method (FEM), and piecewise quadratic triangular elements.
  198. fem2d_poisson_rectangle_linear, a Fortran77 code which solves the 2D Poisson equation on a rectangle, using the finite element method (FEM), and piecewise linear triangular elements.
  199. fem2d_sample, a Fortran77 code which samples a finite element function, defined by FEM files, three text files describing the nodes, triangles, and coefficients, at arbitrary points.
  200. feynman_kac_1d, a Fortran77 code which demonstrates the use of the Feynman-Kac algorithm to solve Poisson's equation in a 1D interval by averaging stochastic paths to the boundary.
  201. feynman_kac_2d, a Fortran77 code which demonstrates the use of the Feynman-Kac algorithm to solve Poisson's equation in a 2D ellipse by averaging stochastic paths to the boundary.
  202. feynman_kac_3d, a Fortran77 code which demonstrates the use of the Feynman-Kac algorithm to solve Poisson's equation in a 3D ellipsoid by averaging stochastic paths to the boundary.
  203. fft_openmp, a Fortran77 code which demonstrates the computation of a Fast Fourier Transform (FFT) in parallel, using OpenMP.
  204. fft_serial, a Fortran77 code which computes a Fast Fourier Transform (FFT), and is intended as a starting point for implementing an OpenMP parallel version.
  205. fftpack5, a Fortran77 code which contains version 5 of the FFTPACK Fast Fourier Transform (FFT) package by Paul Swarztrauber and Dick Valent;
  206. fftpack5.1, a Fortran77 code which contains version 5.1 of the FFTPACK Fast Fourier Transform (FFT) package by Paul Swarztrauber and Dick Valent;
  207. fftw, Fortran77 codes which illustrate the use of the FFTW Fast Fourier Transform (FFT) package, by Matteo Frigo and Steven Johnson.
  208. file_name_sequence, a Fortran77 code which demonstrates ways to generate a sequence of filenames, which can be useful when generating a sequence of still snapshots to be animated later.
  209. files_multiple, a Fortran77 code which demonstrates how a program can open multiple output files at one time, and write data to any one specific file it chooses.
  210. filon_rule, a Fortran77 code which uses Filon's method to approximate integrals with an oscillatory factor of sin(k*x) or cos(k*x).
  211. filon_rule_test
  212. filum, a Fortran77 code which performs various operations on files;
  213. fire_simulation, a Fortran77 code which simulates a forest fire over a rectangular array of trees, starting at a single random location. It is intended as a starting point for the development of a parallel version.
  214. floyd, a Fortran77 code which implements Floyd's algorithm for finding the shortest distance between pairs of nodes on a directed graph.
  215. fmm2d, a Fortran77 code which implements the fast multipole method, by Leslie Greengard and Zydrunas Gimbutas.
  216. fn, a Fortran77 code which evaluates elementary and special functions, by Wayne Fullerton.
  217. freefem++_msh_io, a Fortran77 code which can read and write files used by the FreeFem++ finite element program to store mesh information.
  218. gdb, an example directory of programs which illustrate the use of the gnu debugger program on a Fortran77 program;
  219. geometry, a Fortran77 code which carries out a number of 2D/3D geometric calculations;
  220. geqp3, a Fortran77 code which contains the portion of the LAPACK library that carries out the QR factorization, with column pivoting, of an M by N rectangular matrix, with N <= M.
  221. gFortran, Fortran77 codes which investigate the use of the Gnu GFortran compiler for Fortran77.
  222. gFortran_intrinsics, a Fortran77 code which illustrates the use of some of the intrinsic functions included by the Gnu GFortran compiler, above and beyond those specified in the Fortran77 language standards.
  223. gFortran_quadmath, a Fortran77 code which illustrates the use of quadruple precision real arithmetic, as provided on some systems by the Gnu GFortran compiler for Fortran77.
  224. gmsh_io, a Fortran77 code which can read or write some of the files created by the Gmsh program for 1D, 2D or 3D meshes used by the finite element method (FEM).
  225. gmsh_to_fem, a Fortran77 code which reads a mesh data file created by the GMSH program and writes a pair of node and element files that correspond to the FEM format.
  226. gnufor, a Fortran77 code which provides an interface between a program and the gnuplot graphics library.
  227. gnuplot_test, Fortran77 codes which use gnuplot() to create various kinds of plots.
  228. gprof_test, Fortran77 codes which illustrate the use of the GPROF program performance monitor;
  229. graphics_examples, Fortran77 codes which illustrate how various kinds of data can be displayed and analyzed graphically.
  230. glomin, a Fortran77 code which finds a global minimum of a scalar function of a scalar variable, without the use of derivative information, by Richard Brent.
  231. glomin_test
  232. haar_transform, a Fortran77 code which computes the Haar transform of 1d or 2d data.
  233. haar_transform_test
  234. hb_read, a Fortran77 code which reads files in the Harwell Boeing (HB) sparse matrix format; This is a simplified interface intended to handle only the most common format, complex unsymmetric assembled (CUA) or real unsymmetric assembled (RUA).
  235. hb_to_st, a Fortran77 code which reads a sparse matrix in a Harwell-Boeing (HB) file and writes an equivalent Sparse Triplet (ST) file.
  236. hcell, a Fortran77 code which solves the time-dependent 2D incompressible Navier Stokes equations in an H-shaped region.
  237. hcell_steady, a Fortran77 code which solves the time-independent or "steady" 2D incompressible Navier Stokes equations in an H-shaped region, by Hyung-Chun Lee.
  238. heat_mpi, a Fortran77 code which solves the 1D time dependent heat equation using MPI.
  239. heated_plate, a Fortran77 code which solves the steady state heat equation in a 2D rectangular region, and is intended as a starting point for implementing an OpenMP parallel version.
  240. heated_plate_openmp, a Fortran77 code which solves the steady time-independent heat equation in a 2D rectangular region, using OpenMP to run in parallel.
  241. hello, a Fortran77 code which prints out "Hello, world!".
  242. hello_mpi, a Fortran77 code which prints out "Hello, world!" using MPI for parallel programming.
  243. hello_openmp, a Fortran77 code which prints out "Hello, world!" within the OpenMP parallel programming environment.
  244. hermite_cubic, a Fortran77 code which can compute the value, derivatives or integral of a Hermite cubic polynomial, or manipulate an interpolating function made up of piecewise Hermite cubic polynomials.
  245. hermite_exactness, a Fortran77 code which tests the polynomial exactness of Gauss-Hermite quadrature rules to estimate the integral of f(x) with density exp(-x^2) over the interval (-oo,+oo).
  246. hermite_integrands, a Fortran77 code which defines test integrands for Hermite integrals with density exp(-x^2) over the interval (-oo,+oo).
  247. hermite_interpolant, a Fortran77 code which computes the Hermite interpolant, a polynomial that matches function values and derivatives.
  248. hermite_polynomial, a Fortran77 code which evaluates the physicist's Hermite polynomial, the probabilist's Hermite polynomial, the Hermite function, and related functions.
  249. hermite_product_polynomial, a Fortran77 code which defines Hermite product polynomials, creating a multivariate polynomial as the product of univariate Hermite polynomials.
  250. hermite_rule, a Fortran77 code which computes and writes out a Gauss-Hermite quadrature rule of given order.
  251. high_card_simulation, a Fortran77 code which simulates a situation in which you see the cards in a deck one by one, and must select the one you think is the highest and stop; the program uses GNUPLOT to create a graph of the results.
  252. histogram_data_2d_sample, a Fortran77 code which demonstrates how to construct a Probability Density Function (PDF) from sample data over a 2D domain, and then to use that PDF to create new samples.
  253. hyperball_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of the unit hyperball in M dimensions.
  254. hyperball_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit ball in M dimensions;
  255. hyperball_volume_monte_carlo, a Fortran77 code which applies a Monte Carlo procedure to estimate the volume of the unit ball in M dimensions;
  256. hypercube_exactness, a Fortran77 code which tests the polynomial exactness of a quadrature rule over the interior of the unit hypercube in M dimensions.
  257. hypercube_grid, a Fortran77 code which computes a grid of points over the interior of a hypercube in M dimensions.
  258. hypercube_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of the unit hypercube in M dimensions.
  259. hypercube_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit hypercube in M dimensions.
  260. hypersphere, a Fortran77 code which carries out various operations for an M dimensional hypersphere, including converting between Cartesian and spherical coordinates, stereographic projection, sampling the surface of the sphere, and computing the surface area and volume.
  261. hypersphere_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the surface of the unit hypersphere in M dimensions.
  262. hypersphere_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate the integral of a function on the surface of the unit sphere in M dimensions;
  263. hypersphere_properties, a Fortran77 code which carries out various operations for an M dimensional hypersphere, including converting between Cartesian and spherical coordinates, stereographic projection, sampling the surface of the sphere, and computing the surface area and volume.
  264. i4lib, a Fortran77 code which contains many utility routines, using "I4" or "single precision integer" arithmetic.
  265. i8lib, a Fortran77 code which contains many utility routines, using "I8" or "double precision integer" arithmetic.
  266. image_denoise, a Fortran77 code which applies simple filtering operations to a noisy image.
  267. image_edge, a Fortran77 code which demonstrates a simple procedure for edge detection in images.
  268. index, a Fortran77 code which converts a multidimensional vector index to a one-dimensional vector index; it can handle zero and one based indexing schemes, as well as column major and row major conventions.
  269. inout a Fortran77 code which solves the time-dependent Navier Stokes equations in the "INOUT" region, by Hyung-Chun Lee.
  270. interp, a Fortran77 code which can be used for parameterizing and interpolating data;
  271. ising_2d_simulation, a Fortran77 code which simulates the evolution of a 2D array of positive and negative charges, each of which is likely to "flip" to be in agreement with neighbors.
  272. jacobi, a Fortran77 code which implements the Jacobi iteration for the iterative solution of linear systems.
  273. jacobi_eigenvalue, a Fortran77 code which implements the Jacobi iteration for the iterative determination of the eigenvalues and eigenvectors of a real symmetric matrix.
  274. jacobi_eigenvalue_test
  275. jacobi_polynomial, a Fortran77 code which evaluates the Jacobi polynomial and associated functions.
  276. kmedian, a Fortran77 code which solves the K-Median problem, by G Cornuejols, M L Fisher, G L Nemhauser.
  277. knapsack, a Fortran77 code which implements algorithms for a variety of combinatorial problems, including bin packing, the subset sum problem, the generalized assignment problem, the change making problem, the 01 knapsack problem, and the multiple knapsack problem. by Silvano Martelo and Paolo Toth.
  278. knapsack_test
  279. knapsack_01_brute, a Fortran77 code which uses brute force to solve small versions of the 0/1 knapsack problem;
  280. knapsack_01_brute_test
  281. kronrod_rule, a Fortran77 code which computes a Gauss and Gauss-Kronrod pair of quadrature rules of arbitrary order, by Robert Piessens, Maria Branders.
  282. kronrod_rule_test
  283. lagrange_approx_1d, a Fortran77 code which defines and evaluates the Lagrange polynomial p(x) of degree m which approximates a set of nd data points (x(i),y(i)).
  284. lagrange_interp_1d, a Fortran77 code which defines and evaluates the Lagrange polynomial p(x) which interpolates a set of data depending on a 1D argument, so that p(x(i)) = y(i).
  285. lagrange_interp_2d, a Fortran77 code which defines and evaluates the Lagrange polynomial p(x,y) which interpolates a set of data depending on a 2D argument that was evaluated on a product grid, so that p(x(i),y(j)) = z(i,j).
  286. lagrange_interp_nd, a Fortran77 code which defines and evaluates the Lagrange polynomial p(x) which interpolates a set of data depending on a multidimensional argument that was evaluated on a product grid, so that p(x(i)) = z(i).
  287. laguerre_exactness, a Fortran77 code which tests the polynomial exactness of Gauss-Hermite quadrature rules for estimating the integral of a function with density exp(-x) over the interval [0,+oo).
  288. laguerre_integrands, a Fortran77 code which implements test problems for quadrature rules for estimating the integral of a function with density exp(-x) over the interval [0,+oo).
  289. laguerre_polynomial, a Fortran77 code which evaluates the Laguerre polynomial, the generalized Laguerre polynomials, and the Laguerre function.
  290. laguerre_rule, a Fortran77 code which computes and writes out a Gauss-Laguerre quadrature rule for estimating the integral of a function with density exp(-x) over the interval [0,+oo).
  291. lapack_eigen_test, a Fortran77 code which tests some of the LAPACK eigenvalue functions.
  292. lapack_examples, a Fortran77 code which demonstrates the use of the LAPACK linear algebra library.
  293. lapack_examples_osx, a Fortran77 code which demonstrates the use of the precompiled LAPACK linear algebra library available on Macintosh OSX systems, using the "-framework veclib" compiler option.
  294. laplacian, a Fortran77 code which carries out computations related to the discrete Laplacian operator, including full or sparse evaluation, evaluation for unequally spaced data sampling points, application to a set of data samples, solution of associated linear systems, eigenvalues and eigenvectors, and extension to 2D and 3D geometry.
  295. latin_cover, a Fortran77 code which produces N Latin squares which cover an NxN square, or NxN Latin cubes which cover an NxNxN cube.
  296. latin_random, a Fortran77 code which produces N points in an M-dimensional Latin Random Hypercube.
  297. latinize, a Fortran77 code which adjusts N points in M dimensions to form a Latin hypercube.
  298. lawson, a Fortran77 code which contains routines for solving least squares problems and the singular value decomposition (SVD), by Lawson and Hanson.
  299. lebesgue, a Fortran77 code which is given a set of nodes in 1D, and plots the Lebesgue function, and estimates the Lebesgue constant, which measures the maximum magnitude of the potential error of Lagrange polynomial interpolation.
  300. legendre_exactness, a Fortran77 code which tests the monomial exactness of quadrature rules for the Legendre problem of integrating a function with density 1 over the interval [-1,+1].
  301. legendre_fast_rule, a Fortran77 code which uses a fast order N algorithm to compute a Gauss-Legendre quadrature rule of given order.
  302. legendre_polynomial, a Fortran77 code which evaluates the Legendre polynomial and associated functions.
  303. legendre_product_polynomial, a Fortran77 code which defines Legendre product polynomials, creating a multivariate polynomial as the product of univariate Legendre polynomials.
  304. legendre_rule, a Fortran77 code which writes out a Gauss-Legendre quadrature rule of given order.
  305. life_serial, a Fortran77 code which computes a few steps of the evolution of John Conway's Game of Life, intended as a starting point for implementing a parallel version.
  306. line_cvt_lloyd, a Fortran77 code which applies Lloyd's iteration repeatedly to a set of N points, to compute a Centroidal Voronoi Tessellation (CVT) over the interior of a line segment in 1D.
  307. line_fekete_rule, a Fortran77 code which estimates the location of N Fekete points, for polynomial interpolation or quadrature, over the interior of a line segment in 1D.
  308. line_felippa_rule, a Fortran77 code which returns Felippa's quadratures rules for approximating integrals over the interior of a line segment in 1D.
  309. line_grid, a Fortran77 code which computes a grid of points over the interior of a line segment in 1D.
  310. line_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the length of the unit line in 1D.
  311. line_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate the integral of a function over the length of the unit line in 1D.
  312. line_ncc_rule, a Fortran77 code which computes a Newton Cotes Closed (NCC) quadrature rule, using equally spaced points, over the interior of a line segment in 1D.
  313. line_nco_rule, a Fortran77 code which computes a Newton Cotes Open (NCO) quadrature rule, using equally spaced points, over the interior of a line segment in 1D.
  314. linpack, a Fortran77 code which solves linear systems for a variety of matrix storage schemes, real or complex arithmetic, and single or double precision. It includes a routine for computing the singular value decomposition (SVD) of a rectangular matrix. The original version of this library is by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  315. linpack_bench, a Fortran77 code which carries out the LINPACK benchmark;
  316. linpack_c, a Fortran77 code which constitutes a linear algebra library for single precision complex arithmetic; it includes a function for the singular value decomposition (SVD) of a rectangular matrix. The original version of this library is by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  317. linpack_d, a Fortran77 code which constitutes a linear algebra library for double precision real arithmetic; it includes a function for the singular value decomposition (SVD) of a rectangular matrix. The original version of this library is by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  318. linpack_s, a Fortran77 code which constitutes a linear algebra library; for single precision real arithmetic; it includes a function for the singular value decomposition (SVD) of a rectangular matrix. The original version of this library is by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  319. linpack_s_test
  320. linpack_z, a Fortran77 code which constitutes a linear algebra library for double precision complex arithmetic; it includes a function for the singular value decomposition (SVD) of a rectangular matrix. The original version of this library is by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  321. linplus, a Fortran77 code which carries out operations such as matrix-vector products, matrix factorization, direct and iterative linear solvers for matrices in a variety of formats, including banded, border-banded, circulant, lower triangular, pentadiagonal, sparse, symmetric, toeplitz, tridiagonal, upper triangular and vandermonde formats.
  322. llsq, a Fortran77 code which solves the simple linear least squares problem of finding the formula of a straight line y=a*x+b which minimizes the root-mean-square error to a set of N data points.
  323. lobatto_polynomial, a Fortran77 code which evaluates Lobatto polynomials similar to Legendre polynomials except that they are 0 at both endpoints.
  324. local_min, a Fortran77 code which finds a local minimum of a scalar function of a scalar variable, without the use of derivative information, by Richard Brent.
  325. local_min_test
  326. local_min_rc, a Fortran77 code which finds a local minimum of a scalar function of a scalar variable, without the use of derivative information, using reverse communication (RC), by Richard Brent.
  327. local_min_rc_test
  328. lorenz_ode, a Fortran77 code which approximates solutions to the Lorenz system, creating output files that can be displayed by Gnuplot.
  329. machar, a Fortran77 code which computes the values of various machine characteristic constants;
  330. machine, a Fortran77 code which returns tabulated values of machine constants;
  331. makefiles, Fortran77 codes which illustrate the use of MAKEFILES for maintaining a software project;
  332. mandelbrot, a Fortran77 code which generates an ASCII PPM image of the Mandelbrot set;
  333. mandelbrot_openmp, a Fortran77 code which generates an ASCII Portable Pixel Map (PPM) image of the Mandelbrot fractal set, using OpenMP for parallel execution;
  334. matman, a Fortran77 code which manipulates matrices;
  335. matmul, a Fortran77 code which carries out a matrix multiplication benchmark;
  336. matrix_exponential, a Fortran77 code which demonstrates some simple approaches to the problem of computing the exponential of a matrix.
  337. md, a Fortran77 code which carries out a molecular dynamics simulation, and is intended as a starting point for implementing an OpenMP parallel version.
  338. md_openmp, a Fortran77 code which carries out a molecular dynamics simulation in parallel using OpenMP.
  339. medit_io, a Fortran77 code which can read or write files used by the MEDIT program, which can be used to define the a mesh associated with the finite element method (FEM) in 2D or 3D, using triangles, quadrilaterals, tetrahedrons or hexahedrons.
  340. medit_to_fem, a Fortran77 code which reads a mesh file created by the MEDIT program and writes a corresponding pair of node and element files that correspond to the FEM format.
  341. mesh_bandwidth, a Fortran77 code which returns the geometric bandwidth associated with a mesh of elements of any order and in a space of M dimensions.
  342. mgmres, a Fortran77 code which applies the restarted Generalized Minimum Residual (GMRES) algorithm to solve a sparse linear system, using Compressed Row Storage (CRS) or sparse triplet (ST) format, by Lili Ju.
  343. mgs, a Fortran77 code which is an example of "legacy code", which the student is encouraged to study, understand, and document. This example is due to Diane O'Leary.
  344. minpack, a Fortran77 code which solves linear and nonlinear least squares problems, by Jorge More, Danny Sorenson, Burton Garbow, Kenneth Hillstrom.
  345. mixed, Fortran77 codes which illustrate the use of mixed language programming in which the main program is written in Fortran77;
  346. mm_io, a Fortran77 code which reads or writes sparse matrices that use the Matrix Market (MM) sparse matrix file format.
  347. monomial, a Fortran77 code which enumerates, lists, ranks, unranks and randomizes multivariate monomials in a space of M dimensions, with total degree less than N, equal to N, or lying within a given range.
  348. monomial_value, a Fortran77 code which evaluates a monomial in M dimensions.
  349. monte_carlo_rule, a Fortran77 code which generates a dataset of N random M-dimensional points, regards it as a quadrature rule for the unit hypercube, and writes out three files of information.
  350. mpi, Fortran77 codes which illustrate the use of the MPI library for the parallel execution of programs;
  351. mpi_stubs, a Fortran77 code which may be used if a parallel program is to be compiled, loaded and run in a serial machine.
  352. multitask_mpi, a Fortran77 code which demonstrates how to multitask, that is, to execute several unrelated and distinct tasks simultaneously, using MPI for parallel execution.
  353. multitask_openmp, a Fortran77 code which demonstrates how to multitask, that is, to execute several unrelated and distinct tasks simultaneously, using OpenMP for parallel execution.
  354. mus, a Fortran77 code which implements the multiple shooting method for two point boundary value problems (BVP), for linear or nonlinear cases, by Robert Mattheij and G Staarink.
  355. mxm, a Fortran77 code which sets up a matrix multiplication problem A=B*C of arbitrary size, and compares the time required for IJK, IKJ, JIK, JKI, KIJ and KJI orderings of the loops.
  356. mxm_openmp, a Fortran77 code which computes a dense matrix product C=A*B, using OpenMP for parallel execution.
  357. mxm_serial, a Fortran77 code which sets up a matrix multiplication problem A=B*C, intended as a starting point for implementing a parallel version.
  358. naca, a Fortran77 code which can take the parameters of certain NACA airfoils and return the coordinates of a sequence of points that outline the wing shape. The points can be plotted with gnuplot.
  359. napack, a Fortran77 code which includes many routines for applied numerical linear algebra, by William Hager.
  360. nas, a Fortran77 code which runs the NASA kernel benchmark.
  361. navier_stokes_2d_exact, a Fortran77 code which evaluates an exact solution to the incompressible time-dependent Navier-Stokes equations over an arbitrary domain in 2D.
  362. navier_stokes_3d_exact, a Fortran77 code which evaluates an exact solution to the incompressible time-dependent Navier-Stokes equations over an arbitrary domain in 3D.
  363. nearest_interp_1d, a Fortran77 code which interpolates a set of data using a piecewise constant interpolant defined by the nearest neighbor criterion, creating graphics files for processing by gnuplot.
  364. netcdf, Fortran77 codes which read and write NETCDF files.
  365. newton_rc, a Fortran77 code which demonstrates the use of Newton's method to solve a system of nonlinear equations, using reverse communication.
  366. nintlib, a Fortran77 code which applies approximate integration/quadrature in M dimensions;
  367. nl2sol, a Fortran77 code which implements an adaptive nonlinear least squares algorithm, by John Dennis, David Gay, Roy Welsch.
  368. nms, a Fortran77 code which includes a wide variety of numerical software, including solvers for linear systems of equations, interpolation of data, numerical quadrature, linear least squares data fitting, the solution of nonlinear equations, ordinary differential equations (ODE), optimization and nonlinear least squares, simulation and random numbers, trigonometric approximation and Fast Fourier Transforms (FFT).
  369. nms_test
  370. normal, a Fortran77 code which generates normally distributed pseudorandom numbers.
  371. nspcg, a Fortran77 code which carries out the iterative solution of large nonsymmetric systems of linear equations. The package includes a variety of matrix storage formats, preconditioners, and solvers.
  372. ode, a Fortran77 code which handles ordinary differential equations (ODE), by Shampine and Gordon;
  373. odepack, a Fortran77 code which contains nine ODE solvers, including LSODE, LSODES, LSODA, LSODAR, LSODPK, LSODKR, LSODI, LSOIBT, and LSODIS, by Alan Hindmarsh.
  374. openmp, Fortran77 codes which illustrate the use of the use of the OpenMP interface for parallel processing on shared memory systems;
  375. openmp_stubs, a Fortran77 code which is a dummy implementation of the OpenMP routines, and can be used to compile, load, and run a program using OpenMP on a system which does not have OpenMP installed.
  376. optimize, a Fortran77 code which looks at the use of automatic optimization by the compiler to make the executable code run faster.
  377. ornstein_uhlenbeck, a Fortran77 code which approximates solutions of the Ornstein-Uhlenbeck stochastic ordinary differential equation (SODE) using the Euler method, the Euler-Maruyama method, and the Milstein method, and creating graphics files for processing by gnuplot.
  378. owen, a Fortran77 code which evaluates Owen's T function;
  379. padua, a Fortran77 code which returns the points and weights for Padu sets, useful for interpolation in 2D. gnuplot() is used to make plots of the points.
  380. partition_brute, a Fortran77 code which uses a brute force algorithm to seek solutions of the partition problem, splitting a set of integers into two subsets with equal sum.
  381. partition_brute_test
  382. patterson_rule, a Fortran77 code which returns the points and weights of a 1D Gauss-Patterson quadrature rule of order 1, 3, 7, 15, 31, 63, 127, 255 or 511.
  383. pbma_io, a Fortran77 code which reads or writes ASCII PBM 2D bit map graphics files;
  384. pce_burgers, a Fortran77 code which defines and solves a version of the time-dependent viscous Burgers equation, with uncertain viscosity, using a polynomial chaos expansion in terms of Hermite polynomials, by Gianluca Iaccarino.
  385. pce_ode_hermite, a Fortran77 code which sets up a simple scalar ordinary differential equation (ODE) for exponential decay with an uncertain decay rate, using a polynomial chaos expansion in terms of Hermite polynomials.
  386. pchip, a Fortran77 code which can construct a piecewise cubic Hermite interpolant to data, and carry out various related operations, by Fred Fritsch.
  387. pdflib, a Fortran77 code which evaluates Probability Density Functions (PDF) and produces random samples from them, including beta, binomial, chi, exponential, gamma, inverse chi, inverse gamma, multinomial, normal, scaled inverse chi, and uniform.
  388. pgma_io, a Fortran77 code which reads or writes ASCII PGM 2D grayscale graphics files;
  389. pink_noise, a Fortran77 code which computes a pink noise signal obeying a 1/f power law.
  390. point_merge, a Fortran77 code which considers N points in M dimensional space, and counts or indexes the unique or "tolerably unique" items.
  391. poisson_1d_multigrid, a Fortran77 code which applies the multigrid method to a discretized version of the 1D Poisson equation.
  392. poisson_1d_multigrid_test
  393. poisson_openmp, a Fortran77 code which computes an approximate solution to the Poisson equation in a rectangle, using the Jacobi iteration to solve the linear system, and OpenMP to carry out the Jacobi iteration in parallel.
  394. poisson_serial, a Fortran77 code which computes an approximate solution to the Poisson equation in a rectangle, and is intended as the starting point for the creation of a parallel version.
  395. poisson_simulation, a Fortran77 code which simulates a Poisson process in which events randomly occur with an average waiting time of Lambda, creating graphics files for processing by gnuplot.
  396. polpak, a Fortran77 code which evaluates a variety of mathematical functions, polynomials, and sequences, including Bell, Benford, Bernoulli, Bernstein, Cardan, Catalan, Charlier, Chebyshev, Collatz, Delannoy, Euler, Fibonacci, Gegenbauer, Gudermannian, Harmonic, Hermite, Hofstadter, Jacobi, Krawtchouk, Laguerre, Lambert, Legendre, Lerch, Meixner, Mertens, Moebius, Motzkin, Phi, Stirling, Tau, Tribonacci, Zernike.
  397. polpak_test
  398. polygon_grid, a Fortran77 code which generates a grid of points over the interior of a polygon in 2D.
  399. polygon_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of a polygon in 2D.
  400. polygon_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate the integral of a function over the interior of a polygon in 2D.
  401. polygon_properties, a Fortran77 code which computes properties of an arbitrary polygon in the plane, defined by a sequence of vertices, including interior angles, area, centroid, containment of a point, convexity, diameter, distance to a point, inradius, lattice area, nearest point in set, outradius, uniform sampling.
  402. polygon_triangulate, a Fortran77 code which triangulates a possibly nonconvex polygon in 2D, and which can use gnuplot to display the external edges and internal diagonals of the triangulation.
  403. polynomial, a Fortran77 code which adds, multiplies, differentiates, evaluates and prints multivariate polynomials in a space of M dimensions.
  404. power_method, a Fortran77 code which carries out the power method for finding a dominant eigenvalue and its eigenvector.
  405. power_rule, a Fortran77 code which constructs a power rule, that is, a product quadrature rule from identical 1D factor rules.
  406. ppma_io, a Fortran77 code which reads or writes ASCII Portable Pixel Map (PPM) 2D color graphics files;
  407. pppack, a Fortran77 code which computes piecewise polynomial interpolants and approximants, in particular, cubic splines, by Carl DeBoor.
  408. praxis, a Fortran77 code which minimizes a scalar function of several variables, without requiring derivative information, by Richard Brent.
  409. prime_mpi, a Fortran77 code which counts the number of primes between 1 and N, using MPI for parallel execution.
  410. prime_openmp, a Fortran77 code which counts the number of primes between 1 and N, using OpenMP for parallel execution.
  411. prime_serial, a Fortran77 code which counts the number of primes between 1 and N, and is intended as a starting point for a parallel version.
  412. prob, a Fortran77 code which evaluates, samples, inverts, and characterizes a number of Probability Density Functions (PDF) and Cumulative Density Functions (CDF), including anglit, arcsin, benford, birthday, bernoulli, beta_binomial, beta, binomial, bradford, burr, cardiod, cauchy, chi, chi squared, circular, cosine, deranged, dipole, dirichlet mixture, discrete, empirical, english sentence and word length, error, exponential, extreme values, f, fisk, folded normal, frechet, gamma, generalized logistic, geometric, gompertz, gumbel, half normal, hypergeometric, inverse gaussian, laplace, levy, logistic, log normal, log series, log uniform, lorentz, maxwell, multinomial, nakagami, negative binomial, normal, pareto, planck, poisson, power, quasigeometric, rayleigh, reciprocal, runs, sech, semicircular, student t, triangle, uniform, von mises, weibull, zipf.
  413. prob_test
  414. product_rule, a Fortran77 code which creates an M-dimensional quadrature rule from a product of distinct 1d quadrature rules;
  415. pwl_approx_1d, a Fortran77 code which approximates a set of data using a piecewise linear function.
  416. pwl_interp_1d, a Fortran77 code which interpolates a set of data using a piecewise linear function.
  417. pwl_interp_2d, a Fortran77 code which evaluates a piecewise linear interpolant to data defined on a regular 2D grid.
  418. pwl_interp_2d_scattered, a Fortran77 code which evaluates a piecewise linear interpolant to data which is available at an irregularly arranged set of points.
  419. pwl_product_integral, a Fortran77 code which calculates the exact value of the integral of the product of two piecewise linear functions F(X) and G(X).
  420. pyramid_exactness, a Fortran77 code which investigates the polynomial exactness of a quadrature rule over the interior of the unit pyramid in 3D.
  421. pyramid_felippa_rule, a Fortran77 code which returns Felippa's quadratures rules for approximating integrals over the interior of a pyramid in 3D.
  422. pyramid_grid, a Fortran77 code which computes a grid of points over the interior of the unit pyramid in 3D;
  423. pyramid_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of the unit pyramid in 3D.
  424. pyramid_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit pyramid in 3D;
  425. pyramid_rule, a Fortran77 code which computes a quadrature rule over the interior of the unit pyramid in 3D.
  426. qr_solve, a Fortran77 code which computes the least squares solution of a linear system A*x=b.
  427. quad_mpi, a Fortran77 code which applies a quadrature rule to estimate an integral, using MPI;
  428. quad_openmp, a Fortran77 code which applies a quadrature rule to estimate an integral over a 1D interval, using OpenMP for parallel execution;
  429. quad_serial, a Fortran77 code which applies a quadrature rule to estimate an integral, intended as a starting point for parallelization exercises.
  430. quad2d_openmp, a Fortran77 code which applies a product quadrature rule to estimate an integral over a 2D rectangle, using OpenMP for parallel execution;
  431. quad2d_serial, a Fortran77 code which applies a product quadrature rule to estimate an integral over a 2D rectangle, intended as a starting point for parallelization exercises.
  432. quadmom, a Fortran77 code which computes a Gaussian quadrature rule for a weight function rho(x) based on the Golub-Welsch procedure that only requires knowledge of the moments of rho(x).
  433. quadpack, a Fortran77 code which estimates integrals using numerical quadrature, by Piessens, deDoncker-Kapenga, Ueberhuber, and Kahaner.
  434. quadrature_golub_welsch, a Fortran77 code which computes the points and weights of a Gaussian quadrature rule using the Golub-Welsch procedure.
  435. quadrature_least_squares, a Fortran77 code which computes weights for sub-interpolatory quadrature rules, that is, it estimates integrals by integrating a polynomial that approximates the function data in a least squares sense.
  436. quadrature_weights_vandermonde, a Fortran77 code which computes the weights of a quadrature rule using the Vandermonde matrix, assuming that the points have been specified.
  437. quadrature_weights_vandermonde_2d, a Fortran77 code which computes the weights of a 2D quadrature rule using the Vandermonde matrix, assuming that the points have been specified.
  438. quadrule, a Fortran77 code which implements rules for approximate integration/quadrature in one dimension;
  439. r4lib, a Fortran77 code which contains many utility routines, using "R4" or "single precision real" arithmetic.
  440. r8lib, a Fortran77 code which contains many utility routines, using "R8" or "double precision real" arithmetic.
  441. r8lib_test
  442. randlc, a Fortran77 code which is a random number generator (RNG) used by the NAS Benchmark programs.
  443. random_data, a Fortran77 code which uses a random number generator (RNG) to sample points for various probability distributions, spatial dimensions, and geometries, including the M-dimensional cube, ellipsoid, simplex and sphere.
  444. random_mpi, a Fortran77 code which demonstrates one way to use a random number generator (RNG) to generate the same sequence of values for both sequential execution and parallel execution under MPI.
  445. random_openmp, a Fortran77 code which illustrates how a parallel program using OpenMP can generate multiple distinct streams of random numbers.
  446. ranlib, a Fortran77 code which produces random samples from a variety of probabilistic distributions, by Brown and Lovato.
  447. rbf_interp_1d, a Fortran77 code which defines and evaluates radial basis function (RBF) interpolants to 1D data.
  448. rbf_interp_2d, a Fortran77 code which defines and evaluates radial basis function (RBF) interpolants to 2D data.
  449. rbf_interp_nd, a Fortran77 code which defines and evaluates radial basis function (RBF) interpolants to multidimensional data.
  450. reactor simulation, a Fortran77 code which is a simple Monte Carlo simulation of the shielding effect of a slab of a certain thickness in front of a neutron source. This program was provided as an example with the book "Numerical Methods and Software."
  451. ring_mpi, a Fortran77 code which uses the MPI parallel programming environment, and measures the time necessary to copy a set of data around a ring of processes.
  452. rk4, a Fortran77 code which applies the fourth order Runge-Kutta (RK) algorithm to estimate the solution of an ordinary differential equation (ODE) at the next time step.
  453. rkf45, a Fortran77 code which solves a system of ordinary differential equations (ODE) by the Runge-Kutta-Fehlberg method.
  454. rnglib, a Fortran77 code which implements a random number generator (RNG) with splitting facilities, allowing multiple independent streams to be computed, by L'Ecuyer and Cote.
  455. sandia_cvt, a Fortran77 code which positions a given number of points in an arbitrary region, using probabilistic centroidal Voronoi tessellation (CVT) techniques to achieve good coverage and separation; developed for Sandia National Laboratories;
  456. satisfy_brute, a Fortran77 code which uses brute force to find all assignments of values to a set of logical variables which make a complicated logical statement true.
  457. satisfy_brute_test
  458. satisfy_mpi, a Fortran77 code which demonstrates, for a particular circuit, an exhaustive search for solutions of the circuit satisfiability problem, using MPI to perform the calculation in parallel.
  459. satisfy_openmp, a Fortran77 code which demonstrates, for a particular circuit, an exhaustive search for solutions of the circuit satisfiability problem, using OpenMP for parallel execution.
  460. schedule_openmp, a Fortran77 code which demonstrates the default, static, and dynamic methods of "scheduling" loop iterations in OpenMP to avoid work imbalance.
  461. scotch_test, a Fortran77 program which tests the scotch sparse matrix package.
  462. sde, a Fortran77 code which illustrates properties of stochastic ordinary differential equations (SODE), and common algorithms for their analysis, including the Euler method, the Euler-Maruyama method, and the Milstein method, making graphics files for processing and display by gnuplot, by Desmond Higham;
  463. search_mpi, a Fortran77 code which searches integers between A and B for a solution J such that F(J)=C, carried out in parallel using MPI.
  464. search_serial, a Fortran77 code which searches the integers from A to B for a value J such that F(J) = C. this version of the program is intended as a starting point for a parallel approach.
  465. select, a Fortran77 code which carries out Nijenhuis and Wilf's generalized combinatorial selection algorithm;
  466. set_theory, a Fortran77 code which demonstrates various set theoretic operations using several models of a set.
  467. sftpack, a Fortran77 code which implements the "slow" Fourier transform, intended as a teaching tool and comparison with the fast Fourier transform (FFT).
  468. sgefa_openmp, a Fortran77 code which compares a standard linear algebra solver against a revised version which can be run in parallel with OpenMP.
  469. shepard_interp_1d, a Fortran77 code which defines and evaluates Shepard interpolants to 1D data, based on inverse distance weighting.
  470. shepard_interp_2d, a Fortran77 code which defines and evaluates Shepard interpolants to 2D data, based on inverse distance weighting.
  471. shepard_interp_nd, a Fortran77 code which defines and evaluates Shepard interpolants to multidimensional data, based on inverse distance weighting.
  472. simpack, a Fortran77 code which estimates an integral over a region that is the union of multidimensional simplexes, by Alan Genz.
  473. simplex_coordinates, a Fortran77 code which computes the Cartesian coordinates of the vertices of a regular simplex in M dimensions.
  474. simplex_gm_rule, a Fortran77 code which defines Grundmann-Moeller quadrature rules over the interior of a triangle in 2D, a tetrahedron in 3D, or over the interior of the simplex in M dimensions.
  475. simplex_grid, a Fortran77 code which generates a regular grid of points over the interior of an arbitrary simplex in M dimensions.
  476. simplex_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of the unit simplex in M dimensions.
  477. simplex_monte_carlo, a Fortran77 code which uses the Monte Carlo method to estimate an integral over the interior of the unit simplex in M dimensions.
  478. sine_transform, a Fortran77 code which demonstrates some simple properties of the discrete sine transform.
  479. slap_io, a Fortran77 code which reads and writes SLAP sparse matrix files;
  480. snakes_and_ladders, a Fortran77 code which provides tools for the study of the game of Snakes and Ladders.
  481. snakes_and_ladders_test
  482. solve, a Fortran77 code which demonstrates how Gauss elimination can be used to solve a linear system A*x=b.
  483. sort_rc, a Fortran77 code which can sort a list of any kind of objects, using reverse communication (RC).
  484. spaeth2, a Fortran77 code which performs the cluster analysis of data, by Helmut Spaeth;
  485. sparse_display, a Fortran77 code which can read information defining a matrix of numbers and display the sparsity pattern or location of the nonzero elements using gnuplot. This operation is already available in the built-in MATLAB "spy" command.
  486. sparse_grid_cc, a Fortran77 code which creates sparse grids based on Clenshaw-Curtis rules.
  487. sparse_grid_cc_dataset, a Fortran77 code which creates a sparse grid dataset based on Clenshaw-Curtis rules.
  488. sparse_grid_hw, a Fortran77 code which creates sparse grids based on Gauss-Legendre, Gauss-Hermite, Gauss-Patterson, or a nested variation of Gauss-Hermite rules, by Florian Heiss and Viktor Winschel.
  489. sparse_interp_nd a Fortran77 code which can be used to define a sparse interpolant to a function f(x) of a M-dimensional argument.
  490. sparsekit, a Fortran77 code which performs sparse matrix operations, by Yousef Saad;
  491. sparsekit2, a Fortran77 code which implements operations on sparse matrices, including conversion between various formats; this is version 2 of the library, by Yousef Saad.
  492. sparsepak, a Fortran77 code which forms an obsolete version of the Waterloo Sparse Matrix Package;
  493. specfun, a Fortran77 code which computes special functions, including Bessel I, J, K and Y functions, and the Dawson, E1, EI, Erf, Gamma, Psi/Digamma functions, by William Cody and Laura Stoltz;
  494. special_functions, a Fortran77 code which evaluates special functions, including Airy, Associated Legendre Bessel, Beta, Complete Elliptic Integral, Confluent Hypergeometric, Cosine Integral, Elliptic Integral, Error, Exponential Integral, Fresnel Integral, Gamma, Hankel, Hypergeometric, Incomplete Beta, Incomplete Gamma, Jacobian Elliptic, Kelvin, Lambda, Legendre, Mathieu, Modified Spherical Bessel, Parabolic Cylinder, Psi, Riccati-Bessel, Sine Integral, Spheroidal Wave, Struve, Whittaker, as well as Bernoulli Numbers, Euler Numbers, Hermite polynomials, Laguerre polynomials, legendre polynomials, by Shanjie Zhang, Jianming Jin;
  495. special_functions_test
  496. sphere_exactness, a Fortran77 code which tests the polynomial exactness of a quadrature rule on the surface of the unit sphere in 3D.
  497. sphere_fibonacci_grid, a Fortran77 code which uses a Fibonacci spiral to create a grid of points on the surface of the unit sphere in 3D.
  498. sphere_grid, a Fortran77 code which provides a number of ways of generating grids of points, or of points and lines, or of points and lines and faces, on the surface of the unit sphere in 3D.
  499. sphere_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the surface of the unit sphere in 3D.
  500. sphere_lebedev_rule, a Fortran77 code which computes Lebedev quadrature rules on the surface of the unit sphere in 3D
  501. sphere_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate the integral of a function on the surface of the unit sphere in 3D.
  502. sphere_quad, a Fortran77 code which uses triangulation to approximate an integral on the surface of the unit sphere in 3D;
  503. sphere_stereograph, a Fortran77 code which computes the stereographic mapping between points on the surface of the unit sphere in 3D and points on the plane Z = 1; a generalized mapping is also available.
  504. sphere_triangle_monte_carlo, a Fortran77 code which used the Monte Carlo method to estimate the integral of a function defined in a triangle on the surface of the unit sphere in 3D.
  505. sphere_triangle_quad, a Fortran77 code which uses quadrature to estimate the integral of a function in a spherical triangle on the surface of the unit sphere in 3D.
  506. spiral_data, a Fortran77 code which computes a velocity vector field that satisfies the continuity equation, writing the data to a file that can be plotted by gnuplot.
  507. spline, a Fortran77 code which interpolates and approximates via splines;
  508. spring_ode, a Fortran77 code which shows how line printer graphics can be used to make a crude illustration of a solution of the ordinary differential equation (ODE) that describes the motion of a weight attached to a spring.
  509. spring_ode2, a Fortran77 code which shows how gnuplot graphics can be used to illustrate a solution of the ordinary differential equation (ODE) that describes the motion of a weight attached to a spring.
  510. square_arbq_rule, a Fortran77 code which returns quadrature rules, with exactness up to total degree 20, over the interior of the symmetric square in 2D, by Hong Xiao and Zydrunas Gimbutas.
  511. square_exactness, a Fortran77 code which investigates the polynomial exactness of quadrature rules for f(x,y) over the interior of a rectangle in 2D.
  512. square_felippa_rule, a Fortran77 code which returns Felippa's quadratures rules for approximating integrals over the interior of a square in 2D.
  513. square_grid, a Fortran77 code which computes a grid of points over the interior of a square in 2D.
  514. square_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of the unit square in 2D.
  515. square_monte_carlo, a Fortran77 code which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit square in 2D.
  516. square_symq_rule, a Fortran77 code which returns symmetric quadrature rules, with exactness up to total degree 20, over the interior of the symmetric square in 2D, by Hong Xiao and Zydrunas Gimbutas.
  517. st_io, a Fortran77 code which reads and writes sparse linear systems stored in the Sparse Triplet (ST) format.
  518. st_to_cc, a Fortran77 code which converts sparse matrix data from Sparse Triplet (ST) format to Compressed Column Storage (CCS) format;
  519. steam_nbs, a Fortran77 code which is based on the National Bureau of Standards (NBS) steam tables;
  520. steam_nbs_interact, a Fortran77 code which queries the National Bureau of Standards (NBS) steam table package;
  521. stochastic_diffusion, functions which implement several versions of a stochastic diffusivity coefficient.
  522. stochastic_heat2d, a Fortran77 code which implements a finite difference method (FDM) for the steady time-independent 2D heat equation, with a stochastic heat diffusivity coefficient, using gnuplot to illustrate the results.
  523. stochastic_rk, a Fortran77 code which applies a Runge-Kutta scheme to a stochastic ordinary differential equation (SODE).
  524. stokes_2d_exact, a Fortran77 code which evaluates exact solutions to the incompressible steady Stokes equations over the unit square in 2D.
  525. string_simulation, a Fortran77 code which simulates the behavior of a vibrating string by solving the corresponding initial boundary value problem (IBVP), creating files that can be displayed by gnuplot.
  526. stroud, a Fortran77 code which defines quadrature rules for a variety of M-dimensional regions, including the interior of the square, cube and hypercube, the pyramid, cone and ellipse, the hexagon, the M-dimensional octahedron, the circle, sphere and hypersphere, the triangle, tetrahedron and simplex, and the surface of the circle, sphere and hypersphere.
  527. subpak, a Fortran77 code which implements a wide variety of operations on real and integer vectors and matrices;
  528. subset, a Fortran77 code which enumerates, generates, randomizes, ranks and unranks combinatorial objects including combinations, compositions, Gray codes, index sets, partitions, permutations, polynomials, subsets, and Young tables. Backtracking routines are included to solve some combinatorial problems.
  529. subset_sum, a Fortran77 code which seeks solutions of the subset sum problem, in which it is desired to find a subset of integers which has a given sum.
  530. subset_sum_brute_test
  531. subset_sum_brute, a Fortran77 code which uses brute force to find solutions of the subset sum problem, in which it is desired to find a subset of integers which has a given sum.
  532. subset_sum_brute_test
  533. superlu, Fortran77 codes which illustrate how a Fortran77 program can call the SUPERLU library, which is written in C, which applies a fast direct solution method to solve sparse linear systems, by James Demmel, John Gilbert, and Xiaoye Li.
  534. superlu_openmp, Fortran77 codes which illustrate how to use the SUPERLU library with the OpenMP parallel programming interface, which applies a fast direct solution method to solve sparse linear systems, by James Demmel, John Gilbert, and Xiaoye Li.
  535. svd_snowfall, a Fortran77 code which reads a file containing historical snowfall data and analyzes the data with the Singular Value Decomposition (SVD), displaying the results using gnuplot.
  536. svd_test, a Fortran77 code which demonstrates the calculation of the singular value decomposition (SVD) and some of its properties;
  537. svd_truncated, a Fortran77 code which demonstrates the computation of the reduced or truncated Singular Value Decomposition (SVD) that is useful for cases when one dimension of the matrix is much smaller than the other.
  538. table_io, a Fortran77 code which reads and writes a set of data as a table file.
  539. task_division, a Fortran77 code which implements a simple procedure for smoothly dividing T tasks among P processors; such a method can be useful in MPI and other parallel environments, particularly when T is not an exact multiple of P, and when the processors can be indexed starting from 0 or from 1.
  540. tcell, a Fortran77 code which solves the time-dependent 2D incompressible Navier Stokes equations in a T-shaped region, by Hyung-Chun Lee.
  541. tcell_mass, a Fortran77 code which creates and saves the mass matrix associated with a finite element method (FEM) solution of the time dependent 2D incompressible Navier Stokes equations in the TCELL region, by Hyung-Chun Lee.
  542. templated, a Fortran77 code which forms basic implementations of iterative methods for solving large sparse linear systems, using double precision arithmetic.
  543. templates, a Fortran77 code which forms basic implementations of iterative methods for solving large sparse linear systems;
  544. test_approx, a Fortran77 code which implements test problems for approximation, provided as a set of (x,y) data.
  545. test_con, a Fortran77 code which implements test problems for numerical continuation.
  546. test_eigen, a Fortran77 code which implements test matrices for eigenvalue analysis.
  547. test_int, a Fortran77 code which implements test problems for approximate integration/quadrature in one dimension.
  548. test_int_2d, a Fortran77 code which implements test problems for approximate integration/quadrature in two dimensions.
  549. test_interp, a Fortran77 code which defines test problems for interpolation, provided as a set of (x,y(x)) data.
  550. test_interp_1d, a Fortran77 code which defines test problems for interpolation of data y(x), which depends on a 1D argument.
  551. test_interp_2d, a Fortran77 code which defines test problems for interpolation of data z(x,y), depending on a 2D argument.
  552. test_interp_nd, a Fortran77 code which defines test problems for interpolation of data z(x), depending on an M-dimensional argument.
  553. test_lls, a Fortran77 code which implements linear least squares test problems of the form A*x=b.
  554. test_mat, a Fortran77 code which defines test matrices for which some of the determinant, eigenvalues, inverse, null vectors, P*L*U factorization or linear system solution are already known, including the Vandermonde matrix.
  555. test_matrix_exponential, a Fortran77 code which defines a set of test cases for computing the matrix exponential.
  556. test_min, a Fortran77 code which implements test problems for minimization of a scalar function of a scalar variable.
  557. test_nearest, a Fortran77 code which tests the time complexity of various procedures for solving the nearest neighbor problem.
  558. test_nonlin, a Fortran77 code which implements test problems for the solution of systems of nonlinear equations.
  559. test_opt_con, a Fortran77 code which defines test problems for the minimization of a scalar function of several variables, with the search constrained to lie within a specified hyper-rectangle.
  560. test_optimization, a Fortran77 code which implements test problems for optimization of a scalar function of several variables, as described by Molga and Smutnicki.
  561. test_values, a Fortran77 code which supplies test values of various mathematical functions, including Abramowitz, AGM, Airy, Bell, Bernoulli, Bessel, Beta, Binomial, Bivariate Normal, Catalan, Cauchy, Chebyshev, Chi Square, Clausen, Clebsch Gordan, Collatz, Cosine integral, Dawson, Debye, Dedekind, dilogarithm, Exponential integral, Elliptic, Error, Euler, Exponential integral, F probability, Fresnel, Frobenius, Gamma, Gegenbauer, Goodwin, Gudermannian, Harmonic, Hermite, Hypergeometric, inverse trigonometic, Jacobi, Julian Ephemeris Date, Kelvin, Laguerre, Laplace, Legendre, Lerch, Lobachevsky, Lobatto, Logarithmic integral, Log normal, McNugget numbers, Mertens, Mittag-Leffler, Moebius, Multinomial, Negative binomial, Nine J, Normal, Omega, Owen, Partition, Phi, Pi, Poisson, Polylogarithm, Polyomino, Prime, Psi, Rayleigh, Hyperbolic Sine integral, Sigma, Sine Power integral, Sine integral, Six J, Sphere area, Sphere volume, Spherical harmonic, Stirling, Stromgen, Struve, Student, Subfactorial, Student probability, Three J, Transport, Trigamma, Truncated normal, van der Corput, von Mises, Weibull, Wright omega, Zeta.
  562. test_values_test
  563. test_zero, a Fortran77 code which implements test problems for the solution of a single nonlinear equation in one variable.
  564. tester, a BASH script which runs the test programs.
  565. testpack, a Fortran77 code which contains a set of test integrand functions, by Alan Genz.
  566. tet_mesh, a Fortran77 code which carries out various tasks associated with tetrahedral meshes in 3D;
  567. tetrahedron_arbq_rule, a Fortran77 code which returns quadrature rules, with exactness up to total degree 15, over the interior of a tetrahedron in 3D, by Hong Xiao and Zydrunas Gimbutas.
  568. tetrahedron_exactness, a Fortran77 code which tests the polynomial exactness of a quadrature rule over the interior of a tetrahedron in 3D.
  569. tetrahedron_felippa_rule, a Fortran77 code which returns Felippa's quadratures rules for approximating integrals over the interior of a tetrahedron in 3D.
  570. tetrahedron_grid, a Fortran77 code which computes a grid of points over the interior of a tetrahedron in 3D.
  571. tetrahedron_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of the unit tetrahedron in 3D.
  572. tetrahedron_monte_carlo, a Fortran77 code which uses the Monte Carlo method to estimate an integral over the interior of a general tetrahedron in 3D.
  573. tetrahedron_properties, a Fortran77 code which computes properties, including the centroid, circumsphere, dihedral angles, edge lengths, face angles, face areas, insphere, quality, solid angles, and volume, of a tetrahedron in 3D,
  574. tetrahedron01_monte_carlo, a Fortran77 code which uses the Monte Carlo method to estimate an integral over the interior of the unit tetrahedron in 3D.
  575. three_body_ode, a Fortran77 code which simulates the behavior of three planets, constrained to lie in a plane, and moving under the influence of gravity, by Walter Gander and Jiri Hrebicek.
  576. timer, Fortran77 codes which illustrate how executing code may be timed.
  577. timestamp, a Fortran77 code which prints out the YMDHMS date as a timestamp.
  578. toeplitz, a Fortran77 code which implements Toeplitz matrix system solvers.
  579. toeplitz_cholesky, a Fortran77 code which computes the Cholesky factorization of a nonnegative definite symmetric Toeplitz matrix.
  580. toms097, a Fortran77 code which computes the distance between all pairs of nodes in a directed graph with weighted edges, using Floyd's algorithm. This is a version of ACM TOMS algorithm 097.
  581. toms178, a Fortran77 code which seeks the minimizer of a scalar function of several variables using the Hooke-Jeeves method; this is a version of ACM TOMS algorithm 178.
  582. toms179, a Fortran77 code which calculates the incomplete Beta ratio; this is a version of ACM TOMS algorithm 179.
  583. toms291, a Fortran77 code which approximates the logarithm of the Gamma function; this is a version of ACM TOMS algorithm 291.
  584. toms322, a Fortran77 code which evaluates the normal, Student's T, F and chi-square cumulative density functions (CDF); this is a version of ACM TOMS algorithm 322.
  585. toms332, a Fortran77 code which evaluates Jacobi polynomials; this is a version of ACM TOMS algorithm 332.
  586. toms343, a Fortran77 code which computes the eigenvalues and eigenvectors of a general real matrix; this is a version of ACM TOMS algorithm 343.
  587. toms344, a Fortran77 code which calculates the Student T distribution; this is a version of ACM TOMS algorithm 344.
  588. toms347, a Fortran77 code which sorts an integer vector; this is a version of ACM TOMS algorithm 347.
  589. toms351, a Fortran77 code which estimates an integral using Romberg integration; this is a version of ACM TOMS algorithm 351.
  590. toms352, a Fortran77 code which computes the characteristic values and associated solutions of Mattieu's differential equation; this is a version of ACM TOMS algorithm 352.
  591. toms353, a Fortran77 code which estimates an integral involving a cosine or sine factor using Filon quadrature; this is a version of ACM TOMS algorithm 353.
  592. toms358, a Fortran77 code which computes the singular value decomposition (SVD) of a complex matrix; this is a version of ACM TOMS algorithm 358.
  593. toms359, a Fortran77 code which computes the factorial analysis of variance; this is a version of ACM TOMS algorithm 359.
  594. toms365, a Fortran77 code which finds a root of an analytic complex function by the downhill method; this is a version of ACM TOMS algorithm 365.
  595. toms370, a Fortran77 code which produces random numbers sampled from an arbitrary PDF; this is a version of ACM TOMS algorithm 370.
  596. toms379, a Fortran77 code which approximates the integral of a function, by James Lyness. this is a version of ACM TOMS algorithm 379.
  597. toms379_test
  598. toms384, a Fortran77 code which computes the eigenvalues and eigenvectors of a symmetric matrix; this is a version of ACM TOMS algorithm 384.
  599. toms385, a Fortran77 code which evaluates the exponential integral function; this is a version of ACM TOMS algorithm 385.
  600. toms392, a Fortran77 code which approximates the time evolution of a hyperbolic partial differential equation (PDE); this is a version of ACM TOMS algorithm 392.
  601. toms418, a Fortran77 code which implements Filon quadrature of integrals involve a factor of COS(W*X) or SIN(W*X); this is a version of ACM TOMS algorithm 418.
  602. toms419, a Fortran77 code which seeks the zeroes of a polynomial with complex coefficients; this library is commonly called CPOLY; this is a version of ACM TOMS algorithm 419.
  603. toms423, a Fortran77 code which implements Gaussian elimination, revised versions of DECOMP and SOLVE; this is a version of ACM TOMS algorithm 423.
  604. toms424, a Fortran77 code which implements Clenshaw-Curtis integration; this is a version of ACM TOMS algorithm 424.
  605. toms425, a Fortran77 code which generates a sequence of vectors from a multivariate normal distribution with given covariance; this is a version of ACM TOMS algorithm 425.
  606. toms427, a Fortran77 code which estimates a Fourier cosine integral; this is a version of ACM TOMS algorithm 427.
  607. toms429, a Fortran77 code which reports information about the estimated location of roots of a polynomial; this is a version of ACM TOMS algorithm 429.
  608. toms431, a Fortran77 code which solves quadratic and linear programming problems; this is a version of ACM TOMS algorithm 431.
  609. toms434, a Fortran77 code which computes the probability of a given RxC contingency table; this is a version of ACM TOMS algorithm 434.
  610. toms435, a Fortran77 code which computes the modified incomplete gamma function; this is a version of ACM TOMS algorithm 435.
  611. toms436, a Fortran77 code which carries out product-type trapezoidal integration; this is a version of ACM TOMS algorithm 436.
  612. toms437, a Fortran77 code which carries out product-type Simpson's integration; this is a version of ACM TOMS algorithm 437.
  613. toms438, a Fortran77 code which carries out product-type two point Gauss-Legendre-Simpson integration; this is a version of ACM TOMS algorithm 438.
  614. toms439, a Fortran77 code which carries out product-type three point Gauss-Legendre-Simpson integration; this is a version of ACM TOMS algorithm 439.
  615. toms441, a Fortran77 code which samples the dipole distribution; this is a version of ACM TOMS algorithm 441.
  616. toms443, a Fortran77 code which evaluates Lambert's W function; this is a version of ACM TOMS algorithm 443.
  617. toms446, a Fortran77 code which manipulates Chebyshev series for interpolation and approximation; this is a version of ACM TOMS algorithm 446, by Roger Broucke.
  618. toms448, a Fortran77 code which counts the number of partitions of an integer into a given set of integers; this is a version of ACM TOMS algorithm 448.
  619. toms449, a Fortran77 code which solves linear programming problems with variables restricted to 0 and 1 values; this is a version of ACM TOMS algorithm 449.
  620. toms450, a Fortran77 code which minimizes a scalar function of N variables using the method of Rosenbrock; this is a version of ACM TOMS algorithm 450.
  621. toms451, a Fortran77 code which determines quantiles of the Chi-Square distribution; this is a version of ACM TOMS algorithm 451.
  622. toms452, a Fortran77 code which generates a sequence of combinations of M things out of N; this is a version of ACM TOMS algorithm 452.
  623. toms453, a Fortran77 code which determines the abscissas and weights for a Gaussian quadrature formula for Bromwich's integral; this is a version of ACM TOMS algorithm 453.
  624. toms454, a Fortran77 code which implements the complex method of constrained optimization; this is a version of ACM TOMS algorithm 454.
  625. toms456, a Fortran77 code which implements the routing algorithm; this is a version of ACM TOMS algorithm 456.
  626. toms460, a Fortran77 code which determines the optimal parameters for an alternating direction implicit (ADI) iteration; this is a version of ACM TOMS algorithm 460.
  627. toms461, a Fortran77 code which applies cubic spline solutions to a class of functional differential equations; this is a version of ACM TOMS algorithm 461.
  628. toms462, a Fortran77 code which evaluates the bivariate normal distribution; this is a version of ACM TOMS algorithm 462.
  629. toms463, a Fortran77 code which chooses "nice" ranges for a graph of computer-generated data; this is a version of ACM TOMS algorithm 463.
  630. toms467, a Fortran77 code which transposes a matrix in place; this is a version of ACM TOMS algorithm 467.
  631. toms468, a Fortran77 code which carries out automatic numerical integration; this is a version of ACM TOMS algorithm 468.
  632. toms470, a Fortran77 code which solves an "almost tridiagonal" system of linear equations; this is a version of ACM TOMS algorithm 470.
  633. toms493, a Fortran77 code which seeks the roots of a real polynomial; this library is commonly called RPOLY; this is a version of ACM TOMS algorithm 493.
  634. toms494, a Fortran77 code which approximates a 1D partial differential equation (PDE) as a system of ordinary differential equation (ODE); this library is commonly called PDEONE; this is a version of ACM TOMS algorithm 494.
  635. toms502, a Fortran77 code which computes a sequence of solutions of a parameterized system of equations; this is a version of ACM TOMS algorithm 526.
  636. toms511, a Fortran77 code which can evaluate Bessel I or J functions of real, non integer, order, This is a version of ACM TOMS Algorithm 511;
  637. toms515, a Fortran77 code which can select subsets of size K from a set of size N, This is a version of ACM TOMS Algorithm 515, by Bill Buckles, Matthew Lybanon.
  638. toms526, a Fortran77 code which interpolates scattered bivariate data, by Hiroshi Akima; this is a version of ACM TOMS algorithm 526.
  639. toms550, a Fortran77 code which evaluates certain measures of a solid polyhedron, including surface area, centroid, volume, weight, moments and products of inertia; this is a version of ACM TOMS algorithm 550.
  640. toms552, a Fortran77 code which solves an overdetermined constrained linear system; this is a version of ACM TOMS algorithm 552.
  641. toms565, a Fortran77 code which approximates the solution of a system of time-dependent partial differential equations (PDE) over a 2D domain; this library is commonly called PDETWO; this is a version of ACM TOMS algorithm 565;
  642. toms571, a Fortran77 code which evaluates or inverts the von Mises and Fisher distributions of directions on a circle or sphere; this is a version of ACM TOMS algorithm 571.
  643. toms577, a Fortran77 code which evaluates Carlson's elliptic integral functions RC, RD, RF and RJ. This is a version of ACM TOMS algorithm 577.
  644. toms596, a Fortran77 code which seeks to produce a sequence of points that satisfy a set of nonlinear equations with one degree of freedom; this library is commonly called PITCON; this is a version of ACM TOMS algorithm 596.
  645. toms597, a Fortran77 code which evaluates Bessel functions I of real, non-integer order, by William Cody. This is a version of ACM TOMS Algorithm 597;
  646. toms597_test
  647. toms611, a Fortran77 code which performs unconstrained optimization of a scalar function; this library is commonly called UNCMIN; this is a version of ACM TOMS algorithm 611.
  648. toms612, a Fortran77 code which approximates the integral of a function over a triangle; the primary routine is known as TRIEX; this is a version of ACM TOMS algorithm 612.
  649. toms626, a Fortran77 code which creates a contour plot of data associated with a triangulated set of points. This is a version of ACM TOMS algorithm 626.
  650. toms632, a Fortran77 code which solves the multiple knapsack problem, by Silvano Martello and Paolo Toth. This is a version of ACM TOMS algorithm 632.
  651. toms644, a Fortran77 code which evaluates the Bessel I, J, K, Y functions, the Airy functions Ai and Bi, and the Hankel function, for complex argument and real order. This is a version of ACM TOMS algorithm 644.
  652. toms647, a Fortran77 code which evaluates the Faure, Halton, and Sobol quasirandom sequences, this is a version of ACM TOMS algorithm 647;
  653. toms648_nsd, a Fortran77 code which defines non-stiff test problems for solvers of ordinary differential equations (ODE), using double precision arithmetic; this is a version of one part of ACM TOMS algorithm 648.
  654. toms655, a Fortran77 code which computes the weights for interpolatory quadrature rule; this library is commonly called IQPACK, and is by Sylvan Elhay and Jaroslav Kautsky. this version of ACM TOMS algorithm 655 has been extensively modified.
  655. toms655_original, a Fortran77 code which computes the weights for interpolatory quadrature rule; this library is commonly called IQPACK, and is by Sylvan Elhay and Jaroslav Kautsky. this is the original version of ACM TOMS algorithm 655.
  656. toms659, a Fortran77 code which computes elements of the Sobol quasirandom sequence; this is a version of ACM TOMS algorithm 659.
  657. toms660, a Fortran77 code which takes scattered data in 2D and creates an interpolating function F(X,Y); this program is often called qshep2d; this is a version of ACM TOMS algorithm 660, by Robert Renka.
  658. toms661, a Fortran77 code which takes scattered data in 3D and creates an interpolating function F(X,Y,Z), called qshep3d; this is a version of ACM TOMS algorithm 661, by Robert Renka.
  659. toms664, a Fortran77 code which uses Gauss elimination to solve linear systems involving large banded matrices. Disk storage is used when there is not enough memory for the working data; this library is commonly called GBSOL; this is a version of ACM TOMS algorithm 664.
  660. toms672, a Fortran77 code which generates an interpolatory quadrature rule of highest possible order, given a set of preassigned abscissas; this library is commonly called EXTEND; this is a version of ACM TOMS algorithm 672.
  661. toms672_test
  662. toms699, a Fortran77 code which implements a new representation of Patterson's quadrature formula; this is a version of ACM TOMS algorithm 699.
  663. toms706, a Fortran77 code which estimates the integral of a function over a triangulated region; this library is commonly called DCUTRI; this is a version of ACM TOMS algorithm 706.
  664. toms707, a Fortran77 code which evaluates the confluent hypergeometric function for complex arguments of large magnitude, by Warren Perger, Atul Bhalla, and Mark Nardin. This is a version of ACM TOMS algorithm 707.
  665. toms707_test
  666. toms708, a Fortran77 code which evaluates the incomplete beta function; this is a version of ACM TOMS algorithm 708.
  667. toms715, a Fortran77 code which evaluates special functions, including the Bessel I, J, K, and Y functions of order 0, of order 1, and of any real order, Dawson's integral, the error function, exponential integrals, the gamma function, the normal distribution function, the psi function. This is a version of ACM TOMS algorithm 715.
  668. toms723, a Fortran77 code which computes the Fresnel sine and cosine integrals, by W van Snyder. This is a version of ACM TOMS algorithm 723.
  669. toms724, a Fortran77 code which computes the inverse Cumulative Density Function (CDF) or percentiles of the F distribution, by Roger Abernathy and Robert Smith. This is a version of ACM TOMS algorithm 724.
  670. toms726, a Fortran77 code which computes recursion coefficients for orthogonal polynomials, and the abscissa and weights for related quadrature rules; this library is commonly called ORTHPOL, and is by Walter Gautschi. This is a version of ACM TOMS algorithm 726.
  671. toms738, a Fortran77 code which evaluates Niederreiter's quasirandom sequence; this is a version of ACM TOMS algorithm 738;
  672. toms743, a Fortran77 code which evaluates Lambert's W function. This is a version of ACM TOMS algorithm 743, by Barry, Barry and Culligan-Hensley.
  673. toms757, a Fortran77 code which evaluates uncommon special functions, by Allan Mcleod. This is a version of ACM TOMS algorithm 757;
  674. toms772, a Fortran77 code which carries out computational geometry on the unit sphere; this library is commonly called STRIPACK, by Robert Renka. This is a version of ACM TOMS algorithm 772.
  675. toms790, a Fortran77 code which computes an interpolating function to scattered data in the plane; this library is commonly called CSHEP2D; by Robert Renka. This is a version of ACM TOMS algorithm 790.
  676. toms792, a Fortran77 code which tests functions that interpolate scattered data in the plane; by Robert Renka. This is a version of ACM TOMS algorithm 792.
  677. toms793, a Fortran77 code which carries out Gauss quadrature for rational functions, by Walter Gautschi. This library is commonly called GQRAT. This is a version of ACM TOMS algorithm 793.
  678. toms886, a Fortran77 code which defines the Padua points for interpolation in a 2D region, including the rectangle, triangle, and ellipse, by Marco Caliari, Stefano de Marchi, Marco Vianello. This is a version of ACM TOMS algorithm 886.
  679. treepack, a Fortran77 code which carries out computations on trees, a simple kind of graph that is minimally connected.
  680. triangle_exactness, a Fortran77 code which tests the polynomial exactness of a quadrature rule over the interior of a triangle in 2D.
  681. triangle_felippa_rule, a Fortran77 code which returns Felippa's quadratures rules for approximating integrals over the interior of a triangle in 2D.
  682. triangle_grid, a Fortran77 code which computes a grid of points over the interior of a triangle in 2D.
  683. triangle_integrals, a Fortran77 code which returns the exact value of the integral of any polynomial over the interior of an arbitrary triangle in 2D.
  684. triangle_io, a Fortran77 code which can read or write some of the files created by Jonathan Shewchuk's triangle program.
  685. triangle_monte_carlo, a Fortran77 code which uses the Monte Carlo method to estimate an integral over the interior of a general triangle in 2D.
  686. triangle_properties, a Fortran77 code which computes properties, including angles, area, centroid, circumcircle, edge lengths, incircle, orientation, orthocenter, and quality, of a triangle in 2D.
  687. triangle_svg, a Fortran77 code which uses Scalable Vector Graphics (SVG) to plot a triangle and any number of points, to illustrate quadrature rules and sampling techniques.
  688. triangle_symq_rule, a Fortran77 code which returns efficient symmetric quadrature rules, with exactness up to total degree 50, over the interior of a triangle in 2D, by Hong Xiao and Zydrunas Gimbutas.
  689. triangle_to_fem, a Fortran77 code which reads the NODE and ELE files created by the triangle program to describe a triangular mesh, and writes a corresponding pair of node and element files in the 2D FEM format.
  690. triangle_to_medit, a Fortran77 code which reads the NODE and ELE files created by the triangle() program to describe a triangular mesh, and writes a corresponding MESH file for input to medit().
  691. triangle_to_xml, a Fortran77 code which reads the NODE and ELE files created by triangle() to describe a triangular mesh in 2D, and writes out a corresponding XML mesh file for use by DOLFIN or FENICS.
  692. triangle01_integrals, a Fortran77 code which returns the integral of any monomial over the interior of the unit triangle in 2D.
  693. triangle01_monte_carlo, a Fortran77 code which uses the Monte Carlo method to estimate an integral over the interior of the unit triangle in 2D.
  694. triangulation, a Fortran77 code which computes the triangulation of a set of points in the plane, and performs various operations using a triangulation, including searching a Delaunay triangulation to find which triangle contains a given point.
  695. triangulation_node_to_element, a Fortran77 code which reads files describing a set of nodes, their triangulation, and the value of one or more quantities at each node, and outputs a file that averages the quantities for each element. This operation in effect creates an "order1" finite element model of the data.
  696. triangulation_svg, a Fortran77 code which creates an SVG image of a triangulation, which can be displayed by a web browser.
  697. tripack, a Fortran77 code which computes constrained Delaunay triangulation in the plane, ACM TOMS algorithm 751, by Robert Renka.
  698. truncated_normal, a Fortran77 code which works with the truncated normal distribution over [A,B], or [A,+oo) or (-oo,B], returning the probability density function (PDF), the cumulative density function (CDF), the inverse CDF, the mean, the variance, and sample values.
  699. truncated_normal_rule, a Fortran77 code which computes a quadrature rule for a normal distribution that has been truncated to [A,+oo), (-oo,B] or [A,B].
  700. tsp_brute, a Fortran77 code which reads a file of city-to-city distances and solves a small traveling salesperson problem, using brute force.
  701. umfpack, Fortran77 codes which illustrate how to call the C library UMFPACK to solve a large sparse linear system.
  702. umfpack_2.0, a Fortran77 code which solves unsymmetric sparse linear systems, this is the obsolete Fortran77 version of UMFPACK, which has since been rewritten in C, by Timothy Davis, Iain Duff.
  703. unicycle, a Fortran77 code which considers permutations containing a single cycle, sometimes called cyclic permutations.
  704. uniform, a Fortran77 code which generates uniform random numbers.
  705. valgrind_test, a Fortran77 code which uses the VALGRIND suite of programs which includes a memory leak detector.
  706. vandermonde, a Fortran77 code which carries out certain operations associated with the Vandermonde matrix.
  707. vandermonde_approx_1d, a Fortran77 code which finds a polynomial approximant to data y(x) of a 1D argument by setting up and solving an overdetermined linear system for the polynomial coefficients involving the Vandermonde matrix.
  708. vandermonde_approx_2d, a Fortran77 code which finds a polynomial approximant p(x,y) to data z(x,y) of a 2D argument by setting up and solving an overdetermined linear system for the polynomial coefficients involving the Vandermonde matrix
  709. vandermonde_interp_1d, a Fortran77 code which finds a polynomial interpolant to data y(x) of a 1D argument by setting up and solving a linear system for the polynomial coefficients involving the Vandermonde matrix, creating graphics files for processing by gnuplot.
  710. vandermonde_interp_2d, a Fortran77 code which finds a polynomial interpolant to data z(x,y) of a 2D argument by setting up and solving a linear system for the polynomial coefficients involving the Vandermonde matrix.
  711. walsh_transform, a Fortran77 code which implements the Walsh data transform.
  712. walsh_transform_test, a Fortran77 code which implements the Walsh data transform.
  713. wathen_matrix, a Fortran77 code which compares storage schemes: full, banded, sparse triplet, and solution strategies: Linpack full, Linpack banded, conjugate gradient, for linear systems involving the Wathen matrix, which can arise when solving a problem using the finite element method (FEM).
  714. wathen_matrix_test
  715. wave_mpi, a Fortran77 code which uses finite differences and MPI to estimate a solution to the wave equation.
  716. wavelet, a Fortran77 code which does some simple wavelet calculations;
  717. wedge_exactness, a Fortran77 code which investigates the polynomial exactness of a quadrature rule over the interior of the unit wedge in 3D.
  718. wedge_felippa_rule, a Fortran77 code which returns quadrature rules for approximating integrals over the interior of the unit wedge in 3D.
  719. wedge_grid, a Fortran77 code which computes a grid of points over the interior of the unit wedge in 3D.
  720. wedge_integrals, a Fortran77 code which returns the exact value of the integral of any monomial over the interior of the unit wedge in 3D.
  721. wedge_monte_carlo, a Fortran77 code which uses the Monte Carlo method to estimate an integral over the interior of the unit wedge in 3D.
  722. weekday, a Fortran77 code which determines the day of the week corresponding to a given date, such as 14 October 1066, Julian calendar, ... which was a Saturday.
  723. wishart_matrix, a Fortran77 code which produces sample matrices from the Wishart or Bartlett distributions, useful for sampling random covariance matrices.
  724. wtime, a Fortran77 code which returns a reading of the wall clock time in seconds.
  725. xerror, a Fortran77 code which reports and handles errors detected during program execution.
  726. zero, a Fortran77 code which seeks a solution of a scalar nonlinear equation f(x)=0, by Richard Brent.
  727. zero_test
  728. zero_finder, a Fortran77 code which offers several algorithms for estimating a root of a nonlinear equation.
  729. zero_rc, a Fortran77 code which seeks solutions of a scalar nonlinear equation f(x)=0, using reverse communication.
  730. zero_rc_test
  731. ziggurat, a Fortran77 code which works as a random number generator (RNG) for the uniform, normal or exponential distributions, using the ziggurat method.
  732. ziggurat_openmp, a Fortran77 code which demonstrates how the ziggurat() library can be used as a random number generator (RNG) in an OpenMP parallel program.


Last revised on 15 October 2022.