FORTRAN90 Codes


  1. allocatable_array_test
  2. analemma, a FORTRAN90 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 code by Brian Tung.
  3. analemma_test
  4. annulus_monte_carlo, a FORTRAN90 code which uses the Monte Carlo method to estimate the integral of a function over the interior of a circular annulus in 2D.
  5. annulus_monte_carlo_test
  6. apportionment, a FORTRAN90 code which demonstrates some of the methods used or proposed for fairly assigning seats in the House of Representatives to each state;
  7. apportionment_test
  8. args, a FORTRAN90 code which reports the command line arguments of a FORTRAN90 code;
  9. args_test
  10. arpack, a FORTRAN90 code which computes eigenvalues for large matrices, by Richard Lehoucq, Danny Sorensen, Chao Yang;
  11. arpack_test
  12. atbash, a FORTRAN90 code which applies the Atbash substitution cipher to a string of text.
  13. atbash_test
  14. backtrack_binary_rc, a FORTRAN90 code which carries out a backtrack search for binary decisions, using reverse communication (RC).
  15. backtrack_binary_rc_test
  16. ball_grid, a FORTRAN90 code which computes grid points inside a 3D ball.
  17. ball_grid_test
  18. ball_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of the unit ball in 3D.
  19. ball_integrals_test
  20. ball_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit ball in 3D;
  21. ball_monte_carlo_test
  22. barycentric_interp_1d, a FORTRAN90 code which defines and evaluates the barycentric Lagrange polynomial p(x) which interpolates data, so that p(x(i)) = y(i). The barycentric approach means that very high degree polynomials can safely be used.
  23. barycentric_interp_1d_test
  24. bdmlib, a FORTRAN90 code which estimates the weights in a Dirichlet mixture based on sample data;
  25. bdmlib_test
  26. bellman_ford, a FORTRAN90 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.
  27. bellman_ford_test
  28. bernstein_polynomial, a FORTRAN90 code which evaluates the Bernstein polynomials;
  29. bernstein_polynomial_test
  30. besselj, a FORTRAN90 code which evaluates Bessel J functions of noninteger order;
  31. besselj_test
  32. beta_nc, a FORTRAN90 code which evaluates the cumulative density function (CDF) of the noncentral Beta distribution;
  33. beta_nc_test
  34. bezier_surface, a FORTRAN90 code which reads, writes, prints and manipulates the data that defines a Bezier surface;
  35. bezier_surface_test
  36. bisection_integer, a FORTRAN90 code which seeks an integer solution to the equation F(X)=0, using bisection within a user-supplied change of sign interval [A,B].
  37. bisection_integer_test
  38. bisection_rc, a FORTRAN90 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 (RC).
  39. bisection_rc_test
  40. bivar, a FORTRAN90 code which interpolates scattered bivariate data. This is a version of ACM TOMS algorithm 526, by Hiroshi Akima.
  41. bivar_test
  42. black_scholes, a FORTRAN90 code which implements some simple approaches to the Black-Scholes option valuation theory, creating graphics files for processing by gnuplot(), by Desmond Higham.
  43. black_scholes_test
  44. blend, a FORTRAN90 code which carries out 1D/2D/3D blending interpolation;
  45. blend_test
  46. box_behnken, a FORTRAN90 code which computes a Box-Behnken design, that is, arguments to sample the behavior of a function of multiple parameters;
  47. box_behnken_test
  48. brownian_motion_simulation, a FORTRAN90 code which simulates Brownian motion in an M-dimensional region, creating graphics files for processing by gnuplot().
  49. brownian_motion_simulation_test
  50. burgers_solution, a FORTRAN90 code which evaluates exact solutions of the time-dependent 1D viscous Burgers equation.
  51. burgers_solution_test
  52. bvec, a FORTRAN90 code which demonstrates how signed integers can be stored as binary vectors, and arithmetic can be performed on them.
  53. bvec_test
  54. c8lib, a FORTRAN90 code which implements certain elementary functions for double precision complex (C8) variables;
  55. c8lib_test
  56. caesar, a FORTRAN90 code which applies a Caesar Shift Cipher to a string of text.
  57. caesar_test
  58. calendar_nyt, a FORTRAN90 code which shows the correspondence between dates and the New York Times volume and issue number;
  59. calendar_nyt_test
  60. cauchy_principal_value, a FORTRAN90 code which uses Gauss-Legendre quadrature to estimate the Cauchy Principal Value (CPV) of certain singular integrals.
  61. cauchy_principal_value_test
  62. ccs_io, a FORTRAN90 code which reads and writes sparse linear systems stored in the Compressed Column Storage (CCS) format.
  63. ccs_io_test
  64. ccs_to_st, a FORTRAN90 code which converts a sparse matrix from compressed column storage (CCS) to sparse triplet (ST) format.
  65. ccs_to_st_test
  66. cdflib, a FORTRAN90 code which evaluates the cumulative density function (CDF), inverse CDF, and certain other inverse functions, for distributions including beta, binomial, chi-square, noncentral chi-square, F, noncentral F, gamma, negative binomial, normal, Poisson, and students T, by Barry Brown, James Lovato, Kathy Russell.
  67. cdflib_test
  68. cg, a FORTRAN90 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.
  69. cg_test
  70. cg_rc, a FORTRAN90 code which implements the conjugate gradient (CG) method for solving a positive definite sparse linear system A*x=b, using reverse communication (RC).
  71. cg_rc_test
  72. chebyshev, a FORTRAN90 code which computes the Chebyshev interpolant/approximant to a given function over an interval.
  73. chebyshev_test
  74. chebyshev_interp_1d, a FORTRAN90 code which determines the combination of Chebyshev polynomials which interpolates data, so that p(x(i)) = y(i).
  75. chebyshev_interp_1d_test
  76. chebyshev_polynomial, a FORTRAN90 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.
  77. chebyshev_polynomial_test
  78. chebyshev_series, a FORTRAN90 code which evaluates 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.
  79. chebyshev_series_test
  80. chrpak, a FORTRAN90 code which manipulates characters and strings;
  81. chrpak_test
  82. circle_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the circumference of the unit circle in 2D.
  83. circle_integrals_test
  84. circle_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate the integral of a function along the circumference of the unit circle in 2D;
  85. circle_monte_carlo_test
  86. circle_segment, a FORTRAN90 code which carries out computations associated with a circle segment, including height, angle, area, centroid, sampling, and quadrature, creating some graphics images using gnuplot().
  87. circle_segment_test
  88. clausen, a FORTRAN90 code which evaluates a Chebyshev interpolant to the Clausen function Cl2(x).
  89. clausen_test
  90. clenshaw_curtis_grid, a FORTRAN90 code which sets up a Clenshaw Curtis quadrature rule in multiple dimensions;
  91. clenshaw_curtis_grid_test
  92. collatz_recursive, a FORTRAN90 code which demonstrates recursive programming by considering the simple Collatz 3n+1 problem.
  93. collatz_recursive_test
  94. colored_noise, a FORTRAN90 code which generates samples of noise obeying a 1/f^alpha power law.
  95. colored_noise_test
  96. colors, a FORTRAN90 code which converts between various formats for describing colors;
  97. colors_test
  98. combo, a FORTRAN90 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.
  99. combo_test
  100. compass_search, a FORTRAN90 code which seeks the minimizer of a scalar function of several variables using compass search, a direct search algorithm that does not use derivatives.
  101. compass_search_test
  102. complex_numbers_test, a FORTRAN90 code which demonstrates some simple features involved in the use of complex numbers.
  103. condition, a FORTRAN90 code which implements methods of computing or estimating the condition number of a matrix.
  104. condition_test
  105. continued_fraction, a FORTRAN90 code which deals with simple and generalized continued fractions.
  106. continued_fraction_test
  107. cosine_transform, a FORTRAN90 code which demonstrates some simple properties of the discrete cosine transform (DCT).
  108. cosine_transform_test
  109. cube_grid, a FORTRAN90 code which computes a grid of points over the interior of a cube in 3D.
  110. cube_grid_test
  111. cube_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of the unit cube in 3D.
  112. cube_integrals_test
  113. cube_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit cube in 3D.
  114. cube_monte_carlo_test
  115. cuda_loop, a FORTRAN90 code which shows how, in a CUDA code, the choice of block and thread factors determines the allocation of tasks to processors.
  116. cuda_loop_test
  117. cvtp, a FORTRAN90 code which creates a Centroidal Voronoi Tessellation on a Periodic region (CVTP).
  118. cvtp_test
  119. cvt_triangulation, a FORTRAN90 code which applies Centroidal Voronoi Tessellation (CVT) techniques to the test_triangulation() set;
  120. cvt_triangulation_test
  121. dijkstra, a FORTRAN90 code which implements a simple version of the Dijkstra minimum distance algorithm for graphs.
  122. dijkstra_test
  123. disk_grid, a FORTRAN90 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.
  124. disk_grid_test
  125. disk_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate integrals of a function over the interior of the general disk in 2D;
  126. disk_monte_carlo_test
  127. disk01_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of the unit disk in 2D.
  128. disk01_integrals_test
  129. disk01_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit disk in 2D;
  130. disk01_monte_carlo_test
  131. dream, a FORTRAN90 code which implements the DREAM algorithm for accelerating Markov Chain Monte Carlo (MCMC) convergence using differential evolution, using five user functions to define the problem, by Guannan Zhang.
  132. dream_test
  133. ellipse_grid, a FORTRAN90 code which computes grid points over the interior of an ellipse in 2D.
  134. ellipse_grid_test
  135. ellipse_monte_carlo, a FORTRAN90 code which uses the Monte Carlo method to estimate the value of integrals over the interior of an ellipse in 2D.
  136. ellipse_monte_carlo_test
  137. ellipsoid_grid, a FORTRAN90 code which computes a grid of points over the interior of an ellipsoid in 3D.
  138. ellipsoid_grid_test
  139. ellipsoid_monte_carlo, a FORTRAN90 code which uses the Monte Carlo method to estimate the value of integrals over the interior of an ellipsoid in M dimensions.
  140. ellipsoid_monte_carlo_test
  141. elliptic_integral, a FORTRAN90 code which evaluates complete elliptic integrals of first, second and third kind, using the Carlson elliptic integral functions.
  142. elliptic_integral_test
  143. etdrk4, a FORTRAN90 code which uses the ETD RK4 method to solve systems of stiff ordinary differential equations (ODE), by Aly-Khan Kassam, Lloyd Trefethen.
  144. etdrk4_test
  145. euler, a FORTRAN90 code which solves one or more ordinary differential equations (ODE) using the forward Euler method.
  146. euler_test
  147. fastgl, a FORTRAN90 code which carries out the rapid computation of the Kth value and weight of an N point Gauss-Legendre quadrature rule, by Ignace Bogaert.
  148. fastgl_test
  149. fd_predator_prey, a FORTRAN90 code which solves a pair of predator prey ordinary differential equations (ODE) using the finite difference method (FDM), and plots the data with gnuplot().
  150. fd_predator_prey_test
  151. fd1d_advection_diffusion_steady, a FORTRAN90 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().
  152. fd1d_advection_diffusion_steady_test
  153. fd1d_advection_ftcs, a FORTRAN90 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 forward time centered space (FTCS) method, writing graphics files for processing by gnuplot().
  154. fd1d_advection_ftcs_test
  155. fd1d_advection_lax, a FORTRAN90 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().
  156. fd1d_advection_lax_test
  157. fd1d_advection_lax_wendroff, a FORTRAN90 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().
  158. fd1d_advection_lax_wendroff_test
  159. fd1d_burgers_lax, a FORTRAN90 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.
  160. fd1d_burgers_lax_test
  161. fd1d_burgers_leap, a FORTRAN90 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.
  162. fd1d_burgers_leap_test
  163. fd1d_bvp, a FORTRAN90 code which applies the finite difference method (FDM) to a two point boundary value problem (BVP) in one spatial dimension.
  164. fd1d_bvp_test
  165. fd1d_heat_explicit, a FORTRAN90 code which implements a finite difference method (FDM), explicit in time, of the time dependent 1D heat equation;
  166. fd1d_heat_explicit_test
  167. fd1d_heat_implicit, a FORTRAN90 code which implements a finite difference method (FDM), implicit in time, of the time dependent 1D heat equation;
  168. fd1d_heat_implicit_test
  169. fd1d_heat_steady, a FORTRAN90 code which implements a finite difference method (FDM) for the steady time-independent 1D heat equation;
  170. fd1d_heat_steady_test
  171. fd1d_predator_prey, a FORTRAN90 code which implements the finite difference method (FDM) for a 1D predator-prey system, creating graphics files for processing by gnuplot(), by Marcus Garvie.
  172. fd1d_predator_prey_test
  173. fd1d_wave, a FORTRAN90 code which applies the finite difference method (FDM) to solve the time-dependent wave equation utt = c * uxx in one spatial dimension.
  174. fd1d_wave_test
  175. fd2d_heat_steady, a FORTRAN90 code which implements a finite difference method (FDM) for the steady time-independent 2D heat equation;
  176. fd2d_heat_steady_test
  177. fd2d_predator_prey, a FORTRAN90 code which implements the finite difference method (FDM) for a 2D predator-prey system, by Marcus Garvie.
  178. fd2d_predator_prey_test
  179. fem_basis, a FORTRAN90 code which defines and evaluates 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.)
  180. fem_basis_test
  181. fem_io, a FORTRAN90 code which reads or writes FEM files, which describe the nodes, elements, and function values associated with a finite element method (FEM) model;
  182. fem_io_test
  183. fem_to_gmsh, a FORTRAN90 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.
  184. fem_to_gmsh_test
  185. fem_to_mesh, a FORTRAN90 code which reads FEM files defining the node coordinates, boundary nodes, and elements of a finite element mesh, and rewrites the data as a MESH file.
  186. fem_to_mesh_test
  187. fem_to_triangle, a FORTRAN90 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 the triangle() code of Jonathan Shewchuk
  188. fem_to_triangle_test
  189. 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().
  190. fem_to_xml_test
  191. fem1d, a FORTRAN90 code which applies the finite element method (FEM), using piecewise linear basis functions, to a linear two point boundary value problem (BVP) in 1D;
  192. fem1d_test
  193. fem1d_adaptive, a FORTRAN90 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;
  194. fem1d_adaptive_test
  195. fem1d_bvp_linear, a FORTRAN90 code which applies the finite element method (FEM), with piecewise linear 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.
  196. fem1d_bvp_linear_test
  197. fem1d_bvp_quadratic, a FORTRAN90 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.
  198. fem1d_bvp_quadratic_test
  199. fem1d_heat_steady, a FORTRAN90 code which implements the finite element method (FEM) for the steady time-independent 1D heat equation;
  200. fem1d_heat_steady_test
  201. fem1d_lagrange, a FORTRAN90 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.
  202. fem1d_lagrange_test
  203. fem1d_nonlinear, a FORTRAN90 code which applies the finite element method (FEM), with piecewise linear basis functions, to a nonlinear two point boundary value problem (BVP) in 1D;
  204. fem1d_nonlinear_test
  205. fem1d_pack, a FORTRAN90 code which contains utilities for 1D finite element method (FEM) calculations.
  206. fem1d_pack_test
  207. fem1d_pmethod, a FORTRAN90 code which applies the p-method version of the finite element method (FEM) to a linear two point boundary value problem (BVP) in 1D;
  208. fem1d_pmethod_test
  209. fem1d_project, a FORTRAN90 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.
  210. fem1d_project_test
  211. fem1d_sample, a FORTRAN90 code which samples a scalar or vector finite element function of one variable, defined by FEM files, returning interpolated values at the sample points.
  212. fem1d_sample_test
  213. fem2d_bvp_linear, a FORTRAN90 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.
  214. fem2d_bvp_linear_test
  215. fem2d_bvp_quadratic, a FORTRAN90 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.
  216. fem2d_bvp_quadratic_test
  217. fem2d_bvp_serene, a FORTRAN90 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.
  218. fem2d_bvp_serene_test
  219. fem2d_heat, a FORTRAN90 code which uses the finite element method (FEM) and the backward Euler method to solve the time-dependent heat equation on an arbitrary triangulated region in 2D. The user supplies some information in some problem-dependent subroutines.
  220. fem2d_heat_test
  221. fem2d_heat_rectangle, a FORTRAN90 code which implements the finite element method (FEM) for the time dependent heat equation on a triangulated square in 2D;
  222. fem2d_heat_rectangle_test
  223. fem2d_pack, a FORTRAN90 code which implements simple 2D finite element method (FEM) calculations;
  224. fem2d_pack_test
  225. fem2d_poisson_rectangle, a FORTRAN90 code which solves the 2D Poisson equation on a rectangle, using the finite element method (FEM), and piecewise quadratic triangular elements.
  226. fem2d_poisson_rectangle_test
  227. fem2d_poisson_rectangle_linear, a FORTRAN90 code which solves the 2D Poisson equation on a rectangle, using the finite element method (FEM), and piecewise linear triangular elements.
  228. fem2d_poisson_rectangle_linear_test
  229. fem2d_sample, a FORTRAN90 code which samples at arbitray points a finite element function, defined by FEM files, three text files describing the nodes, triangles, and coefficients.
  230. fem2d_sample_test
  231. fem3d_pack, a FORTRAN90 code which contains utilities for 3D finite element method (FEM) calculations.
  232. fem3d_pack_test
  233. fem3d_sample, a FORTRAN90 code which evaluates a finite element function defined on a 3D tetrahedral mesh.
  234. fem3d_sample_test
  235. file_name_sequence, a FORTRAN90 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.
  236. file_name_sequence_test
  237. filum, a FORTRAN90 code which performs various operations on files;
  238. filum_test
  239. freefem_msh_io, a FORTRAN90 code which reads and writes files used by FreeFem++ to store mesh information for the finite element method (FEM).
  240. freefem_msh_io_test
  241. fsolve, a FORTRAN90 code which solves systems of nonlinear equations, inspired by the fsolve() function in MATLAB, and based on the minpack() minimization package.
  242. fsolve_test
  243. geometry, a FORTRAN90 code which performs geometric calculations in 2, 3 and M dimensional space, including the computation of angles, areas, containment, distances, intersections, lengths, and volumes.
  244. geometry_test
  245. glomin, a FORTRAN90 code which finds a global minumum of a scalar function of a scalar variable, without the use of derivative information, by Richard Brent.
  246. glomin_test
  247. gmsh_io, a FORTRAN90 code which reads or writes some of the files created by gmsh() for 1D, 2D or 3D meshes used by the finite element method (FEM).
  248. gmsh_io_test
  249. gmsh_to_fem, a FORTRAN90 code which reads a mesh data file created by gmsh() and writes a pair of node and element files that correspond to the FEM format.
  250. gmsh_to_fem_test
  251. graph_paper, a FORTRAN90 code which makes PostScript (PS) graph paper;
  252. graph_paper_test
  253. hello, a FORTRAN90 code which prints out "Hello, world!".
  254. hello_test
  255. hermite_cubic, a FORTRAN90 code which computes the value, derivatives or integral of a Hermite cubic polynomial, or manipulate an interpolating function made up of piecewise Hermite cubic polynomials.
  256. hermite_cubic_test
  257. hermite_integrands, a FORTRAN90 code which defines test integrands for Hermite integrals with density exp(-x^2) over the interval (-oo,+oo).
  258. hermite_integrands_test
  259. hermite_interpolant, a FORTRAN90 code which computes the Hermite interpolant, a polynomial that matches function values and derivatives.
  260. hermite_interpolant_test
  261. hermite_polynomial, a FORTRAN90 code which evaluates the physicist's Hermite polynomial, the probabilist's Hermite polynomial, the Hermite function, and related functions.
  262. hermite_polynomial_test
  263. hermite_product_polynomial, a FORTRAN90 code which defines Hermite product polynomials, creating a multivariate polynomial as the product of univariate Hermite polynomials.
  264. hermite_product_polynomial_test
  265. humps, a FORTRAN90 code which evaluates the humps function, its first and second derivatives, and its antiderivative.
  266. humps_test
  267. hyperball_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of the unit hyperball in M dimensions.
  268. hyperball_integrals_test
  269. hyperball_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit ball in M dimensions;
  270. hyperball_monte_carlo_test
  271. hypercube_grid, a FORTRAN90 code which computes a grid of points over the interior of a hypercube in M dimensions.
  272. hypercube_grid_test
  273. hypercube_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of the unit hypercube in M dimensions.
  274. hypercube_integrals_test
  275. hypercube_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit hypercube in M dimensions.
  276. hypercube_monte_carlo_test
  277. hypersphere_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the surface of the unit hypersphere in M dimensions.
  278. hypersphere_integrals_test
  279. hypersphere_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate the integral of a function on the surface of the unit sphere in M dimensions;
  280. hypersphere_monte_carlo_test
  281. hypersphere_properties, a FORTRAN90 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.
  282. hypersphere_properties_test
  283. i4lib, a FORTRAN90 code which contains utilities which use single precision integer (I4) arithmetic.
  284. i4lib_test
  285. i8lib, a FORTRAN90 code which contains many utility routines, using double precision integer (I8) arithmetic.
  286. i8lib_test
  287. interp, a FORTRAN90 code which parameterizies and interpolates data;
  288. interp_test
  289. intlib, a FORTRAN90 code which carries out approximate integration (quadrature) in one dimension;
  290. intlib_test
  291. jacobi, a FORTRAN90 code which implements the Jacobi method for the iterative solution of linear systems.
  292. jacobi_test
  293. jacobi_eigenvalue, a FORTRAN90 code which implements the Jacobi iteration for the determination of the eigenvalues and eigenvectors of a real symmetric matrix.
  294. jacobi_eigenvalue_test
  295. jacobi_polynomial, a FORTRAN90 code which evaluates the Jacobi polynomial and associated functions.
  296. jacobi_polynomial_test
  297. ketel_one, a FORTRAN90 code which finds all words formed from the letters in "ketel one vodka";
  298. ketel_one_test
  299. kmeans, a FORTRAN90 code which handles the K-Means problem, which organizes N points in M dimensions into K clusters;
  300. kmeans_test
  301. kronrod, a FORTRAN90 code which computes a Gauss and Gauss-Kronrod pair of quadrature rules of arbitrary order, by Robert Piessens, Maria Branders.
  302. kronrod_test
  303. lagrange_approx_1d, a FORTRAN90 code which evaluates the Lagrange polynomial p(x) of degree m which approximates n data points (x(i),y(i)).
  304. lagrange_approx_1d_test
  305. lagrange_interp_1d, a FORTRAN90 code which evaluates the Lagrange polynomial p(x) which interpolates data depending on a 1D argument, so that p(x(i)) = y(i).
  306. lagrange_interp_1d_test
  307. lagrange_interp_2d, a FORTRAN90 code which evaluates the Lagrange polynomial p(x,y) which interpolates data depending on a 2D argument that was evaluated on a product grid, so that p(x(i),y(j)) = z(i,j).
  308. lagrange_interp_2d_test
  309. lagrange_interp_nd, a FORTRAN90 code which evaluates the Lagrange polynomial p(x) which interpolates data depending on a multidimensional argument that was evaluated on a product grid, so that p(x(i)) = z(i).
  310. lagrange_interp_nd_test
  311. lagrange_nd, a FORTRAN90 code which implements several multivariate Lagrange interpolation schemes developed by Tomas Sauer.
  312. lagrange_nd_test
  313. laguerre_integrands, a FORTRAN90 code which implements test problems for Gauss-Laguerre quadrature rules for estimating the integral of a function with density exp(-x) over the interval [0,+oo).
  314. laguerre_integrands_test
  315. laguerre_polynomial, a FORTRAN90 code which evaluates the Laguerre polynomial, the generalized Laguerre polynomials, and the Laguerre function.
  316. laguerre_polynomial_test
  317. lapack_d, a FORTRAN90 code which is the double precision real version of the LAPACK linear algebra code.
  318. lapack_d_test
  319. laplacian, a FORTRAN90 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 data samples, solution of associated linear systems, eigenvalues and eigenvectors, and extension to 2D and 3D geometry.
  320. laplacian_test
  321. legendre_polynomial, a FORTRAN90 code which evaluates the Legendre polynomial and associated functions.
  322. legendre_polynomial_test
  323. legendre_product_polynomial, a FORTRAN90 code which defines Legendre product polynomials, creating a multivariate polynomial as the product of univariate Legendre polynomials.
  324. legendre_product_polynomial_test
  325. levenshtein, a FORTRAN90 code which returns the Levenshtein distance between two strings.
  326. levenshtein_test
  327. line_cvt_lloyd, a FORTRAN90 code which applies the Lloyd iteration repeatedly to N points, to compute a Centroidal Voronoi Tessellation (CVT) over the interior of a line segment in 1D.
  328. line_cvt_lloyd_test
  329. line_grid, a FORTRAN90 code which computes a grid of points over the interior of a line segment in 1D.
  330. line_grid_test
  331. line_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the length of the unit line in 1D.
  332. line_integrals_test
  333. line_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate the integral of a function over the length of the unit line in 1D.
  334. line_monte_carlo_test
  335. llsq, a FORTRAN90 code which solves the simple linear least squares (LLS) problem of finding the formula of a straight line y=a*x+b which minimizes the root mean square error to N data points.
  336. llsq_test
  337. local_min, a FORTRAN90 code which finds a local minimum of a scalar function of a scalar variable, without the use of derivative information, by Richard Brent.
  338. local_min_test
  339. local_min_rc, a FORTRAN90 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.
  340. local_min_rc_test
  341. log_normal, a FORTRAN90 code which returns quantities related to the log normal Probability Distribution Function (PDF).
  342. log_normal_test
  343. log_normal_truncated_ab, a FORTRAN90 code which returns quantities related to the log normal Probability Distribution Function (PDF) truncated to the interval [A,B].
  344. log_normal_truncated_ab_test
  345. lorenz_ode, a FORTRAN90 code which approximates solutions to the Lorenz system of ordinary differential equations (ODE), creating output files that can be displayed by gnuplot().
  346. lorenz_ode_test
  347. machar, a FORTRAN90 code which dynamically computes the values of various machine characteristic constants by William Cody;
  348. machar_test
  349. machine, a FORTRAN90 code which returns tabulated values of the constants associated with computer arithmetic;
  350. machine_test
  351. matrix_exponential, a FORTRAN90 code which demonstrates some simple approaches to the problem of computing the exponential of a matrix;
  352. matrix_exponential_test
  353. mgmres, a FORTRAN90 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.
  354. mgmres_test
  355. midpoint_explicit, a FORTRAN90 code which solves one or more ordinary differential equations (ODE) using the (explicit) midpoint method, also called the modified Euler method.
  356. midpoint_explicit_test
  357. midpoint_fixed, a FORTRAN90 code which solves one or more ordinary differential equations (ODE) using the (implicit) midpoint method, using a fixed point iteration for the nonlinear equation.
  358. midpoint_fixed_test
  359. minpack, a FORTRAN90 code which solves systems of nonlinear equations, or the least squares minimization of the residual of linear or nonlinear equations, by Jorge More, Danny Sorenson, Burton Garbow, Kenneth Hillstrom.
  360. minpack_test
  361. monomial, a FORTRAN90 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.
  362. monomial_test
  363. monomial_value, a FORTRAN90 code which evaluates a monomial in M dimensions.
  364. monomial_value_test
  365. muller, a FORTRAN90 code which seeks a root of a nonlinear equation using the Muller method, with complex arithmetic.
  366. muller_test
  367. navier_stokes_2d_exact, a FORTRAN90 code which evaluates an exact solution to the incompressible time-dependent Navier-Stokes equations (NSE) over an arbitrary domain in 2D.
  368. navier_stokes_2d_exact_test
  369. navier_stokes_3d_exact, a FORTRAN90 code which evaluates an exact solution to the incompressible time-dependent Navier-Stokes equations (NSE) over an arbitrary domain in 3D.
  370. navier_stokes_3d_exact_test
  371. nearest_interp_1d, a FORTRAN90 code which interpolates data using a piecewise constant interpolant defined by the nearest neighbor criterion, creating graphics files for processing by gnuplot().
  372. nearest_interp_1d_test
  373. newton_interp_1d, a FORTRAN90 code which finds a polynomial interpolant to data using Newton divided differences.
  374. newton_interp_1d_test
  375. newton_rc, a FORTRAN90 code which solves a system of nonlinear equations by Newton's method, using reverse communication (RC).
  376. newton_rc_test
  377. nms, a FORTRAN90 code which includes a wide variety of numerical software, including solvers for linear systems of equations, interpolation of data, numerical quadrature, linear least squares (LLS) data fitting, the solution of nonlinear equations, ordinary differential equations (ODE), optimization and nonlinear least squares (NLS), simulation and random numbers, trigonometric approximation and Fast Fourier Transforms (FFT).
  378. nms_test
  379. normal, a FORTRAN90 code which implements a random number generator (RNG) for normally distributed values;
  380. normal_test
  381. ode, a FORTRAN90 code which solves a system of ordinary differential equations (ODE), by Shampine and Gordon;
  382. ode_test
  383. pdflib, a FORTRAN90 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.
  384. pdflib_test
  385. persistence, a FORTRAN90 code which demonstrates how to initialize, get, or set data stored within a function, using static/persistent/saved/local memory.
  386. persistence_test
  387. polpak, a FORTRAN90 code which evaluates a variety of mathematical functions, including Chebyshev, Gegenbauer, Hermite, Jacobi, Laguerre, Legendre polynomials, and the Collatz sequence.
  388. polpak_test
  389. polygon_grid, a FORTRAN90 code which generates a grid of points over the interior of a polygon in 2D.
  390. polygon_grid_test
  391. polygon_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of a polygon in 2D.
  392. polygon_integrals_test
  393. polygon_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate the integral of a function over the interior of a polygon in 2D.
  394. polygon_monte_carlo_test
  395. polygon_properties, a FORTRAN90 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.
  396. polygon_properties_test
  397. polygon_triangulate, a FORTRAN90 code which triangulates a possibly nonconvex polygon in 2D, and which uses gnuplot() to display the external edges and internal diagonals of the triangulation.
  398. polygon_triangulate_test
  399. polynomial, a FORTRAN90 code which adds, multiplies, differentiates, evaluates and prints multivariate polynomials in a space of M dimensions.
  400. polynomial_test
  401. polynomials, a FORTRAN90 code which defines multivariate polynomials over rectangular domains, for which certain information is to be determined, such as the maximum and minimum values.
  402. polynomials_test
  403. polyominoes, a FORTRAN90 code which manipulates polyominoes and tilings.
  404. polyominoes_test
  405. power_method, a FORTRAN90 code which carries out the power method for finding a dominant eigenvalue and its eigenvector.
  406. power_method_test
  407. praxis, a FORTRAN90 code which minimizes a scalar function of several variables, without requiring derivative information, by Richard Brent.
  408. praxis_test
  409. predator_prey_ode, a FORTRAN90 code which solves a time-dependent predator-prey system of ordinary differential equations (ODE).
  410. predator_prey_ode_test
  411. pwl_approx_1d, a FORTRAN90 code which approximates data using a piecewise linear function.
  412. pwl_approx_1d_test
  413. pwl_interp_1d, a FORTRAN90 code which interpolates data using a piecewise linear function.
  414. pwl_interp_1d_test
  415. pwl_interp_2d, a FORTRAN90 code which evaluates a piecewise linear interpolant to data defined on a regular 2D grid.
  416. pwl_interp_2d_test
  417. pwl_interp_2d_scattered, a FORTRAN90 code which evaluates a piecewise linear interpolant to data which is available at an irregularly arranged set of points.
  418. pwl_interp_2d_scattered_test
  419. pwl_product_integral, a FORTRAN90 code which calculates the exact value of the integral of the product of two piecewise linear functions f(x) and g(x).
  420. pwl_product_integral_test
  421. pyramid_grid, a FORTRAN90 code which computes a grid of points over the interior of the unit pyramid in 3D;
  422. pyramid_grid_test
  423. pyramid_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of the unit pyramid in 3D.
  424. pyramid_integrals_test
  425. pyramid_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit pyramid in 3D;
  426. pyramid_monte_carlo_test
  427. qr_solve, a FORTRAN90 code which computes the linear least squares (LLS) solution of a system A*x=b.
  428. qr_solve_test
  429. quad_mesh, a FORTRAN90 code which handles meshes of quadrilaterals over a 2D region;
  430. quad_mesh_test
  431. quad_mesh_rcm, a FORTRAN90 code which computes the Reverse Cuthill McKee (RCM) reordering for nodes in a mesh of 4-node quadrilaterals.
  432. quad_mesh_rcm_test
  433. quadrule, a FORTRAN90 code which implements rules for approximate integration (quadrature) in one dimension;
  434. quadrule_test
  435. quality, a FORTRAN90 code which computes quality of distribution measures for pointsets in M dimensions;
  436. quality_test
  437. quotes, a FORTRAN90 code which prints a random quote from a file;
  438. quotes_test
  439. r83, a FORTRAN90 code which contains linear algebra routines for r83 matrices (real, 64 bit, tridiagonal 3xN format).
  440. r83_test
  441. r8col, a FORTRAN90 code which contains utility routines for an R8COL, that is, a double precision real MxN array, considered as N column vectors, each of length M. The data may be thought of as a matrix of multiple columns, and many operations will be carried out columnwise.
  442. r8col_test
  443. r8ge, a FORTRAN90 code which contains linear algebra routines for R8GE matrices (real, 64 bit, General format).
  444. r8ge_test
  445. r8lib, a FORTRAN90 code which contains many utility routines, using double precision real (R8) arithmetic.
  446. r8lib_test
  447. r8lt, a FORTRAN90 code which contains linear algebra routines for R8LT matrices (real, 64 bit, Lower Triangular).
  448. r8lt_test
  449. r8poly, a FORTRAN90 code which contains utilities for polynomials with R8 coefficients, that is, using double precision or 64 bit real arithmetic.
  450. r8poly_test
  451. r8row, a FORTRAN90 code which contains utilities for an R8ROW, that is, a double precision real MxN array, considered as M row vectors, each of length N. The data may be thought of as a matrix of multiple rows, and many operations will be carried out rowwise.
  452. r8row_test
  453. r8st, a FORTRAN90 code which contains linear algebra routines for R8ST matrices (real, 64 bit, Sparse Triplet).
  454. r8st_test
  455. r8ut, a FORTRAN90 code which contains linear algebra routines for R8UT matrices (real, 64 bit, Upper Triangular).
  456. r8ut_test
  457. random_data, a FORTRAN90 code which uses a random number generator (RNG) to sample points distributed according to various probability density functions (PDF), spatial dimensions, and geometries, including the M-dimensional cube, ellipsoid, simplex and sphere.
  458. random_data_test
  459. rbf_interp_1d, a FORTRAN90 code which defines and evaluates radial basis function (RBF) interpolants to 1D data.
  460. rbf_interp_1d_test
  461. rbf_interp_2d, a FORTRAN90 code which defines and evaluates radial basis function (RBF) interpolants to 2D data.
  462. rbf_interp_2d_test
  463. rbf_interp_nd, a FORTRAN90 code which defines and evaluates radial basis function (RBF) interpolants to multidimensional data.
  464. rbf_interp_nd_test
  465. rk4, a FORTRAN90 code which applies the fourth order Runge-Kutta (RK) algorithm to estimate the solution of an ordinary differential equation (ODE).
  466. rk4_test
  467. rkf45, a FORTRAN90 code which applies a Runge-Kutta-Fehlberg (RKF) solver to a system of ordinary differential equations (ODE);
  468. rkf45_test
  469. rnglib, a FORTRAN90 code which implements a random number generator (RNG) with splitting facilities, allowing multiple independent streams to be computed, by L'Ecuyer and Cote.
  470. rnglib_test
  471. row_echelon_integer, a FORTRAN90 code which carries out the exact computation of the integer row echelon form (IREF) and integer reduced row echelon form (IRREF) of an integer matrix.
  472. row_echelon_integer_test
  473. sde, a FORTRAN90 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;
  474. sde_test
  475. sftpack, a FORTRAN90 code which implements the slow Fourier transform, intended as a teaching tool and comparison with the Fast Fourier Transform (FFT).
  476. sftpack_test
  477. shallow_water_1d, a FORTRAN90 code which simulates the evolution of a 1D fluid governed by the time-dependent shallow water equations.
  478. shallow_water_1d_test
  479. shepard_interp_1d, a FORTRAN90 code which defines and evaluates Shepard interpolants to 1D data, based on inverse distance weighting.
  480. shepard_interp_1d_test
  481. shepard_interp_2d, a FORTRAN90 code which defines and evaluates Shepard interpolants to 2D data, based on inverse distance weighting.
  482. shepard_interp_2d_test
  483. shepard_interp_nd, a FORTRAN90 code which defines and evaluates Shepard interpolants to multidimensional data, based on inverse distance weighting.
  484. shepard_interp_nd_test
  485. simplex_coordinates, a FORTRAN90 code which computes the Cartesian coordinates of the vertices of a regular simplex in M dimensions.
  486. simplex_coordinates_test
  487. simplex_grid, a FORTRAN90 code which generates a regular grid of points over the interior of an arbitrary simplex in M dimensions.
  488. simplex_grid_test
  489. simplex_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of the unit simplex in M dimensions.
  490. simplex_integrals_test
  491. simplex_monte_carlo, a FORTRAN90 code which uses the Monte Carlo method to estimate an integral over the interior of the unit simplex in M dimensions.
  492. simplex_monte_carlo_test
  493. sine_transform, a FORTRAN90 code which demonstrates some simple properties of the discrete sine transform (DST).
  494. sine_transform_test
  495. snakes_and_ladders, FORTRAN90 codes which simulate and investigate a one-player version of the game of Snakes and Ladders.
  496. snakes_and_ladders_test
  497. solve, a FORTRAN90 code which demonstrates how Gauss elimination can be used to solve a linear system A*x=b.
  498. solve_test
  499. sort_rc, a FORTRAN90 code which sorts a list of any kind of objects, using reverse communication (RC).
  500. sort_rc_test
  501. sparse_interp_nd, a FORTRAN90 code which defines a sparse interpolant to a function f(x) of a multidimensional argument.
  502. sparse_interp_nd_test
  503. sphere_cubed_grid, a FORTRAN90 code which uses the projection of a cube to create grids of points, lines, and quadrilaterals on the surface of the unit sphere in 3D.
  504. sphere_cubed_grid_test
  505. sphere_cvt, a FORTRAN90 code which uses a Centroidal Voronoi Tessellation (CVT) to generate a mesh of well-separated points on the surface of the unit sphere in 3D.
  506. sphere_cvt_test
  507. sphere_delaunay, a FORTRAN90 code which reads a file containing the coordinates of points on the surface of the unit sphere in 3D, computes the Delaunay triangulation, and outputs a PostScript (PS) file of the image;
  508. sphere_delaunay_test
  509. sphere_fibonacci_grid, a FORTRAN90 code which uses a Fibonacci spiral to create a grid of points on the surface of the unit sphere in 3D.
  510. sphere_fibonacci_grid_test
  511. sphere_grid, a FORTRAN90 code which generates grids of points, or of points and lines, or of points and lines and faces, on the surface of the unit sphere in 3D.
  512. sphere_grid_test
  513. sphere_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the surface of the unit sphere in 3D.
  514. sphere_integrals_test
  515. sphere_llq_grid, a FORTRAN90 code which uses longitudes and latitudes to create grids of points, lines, and quadrilaterals on the surface of the unit sphere in 3D.
  516. sphere_llq_grid_test
  517. sphere_llt_grid, a FORTRAN90 code which uses longitudes and latitudes to create grids of points, lines, and triangles on the surface of the unit sphere in 3D.
  518. sphere_llt_grid_test
  519. sphere_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate the integral of a function on the surface of the unit sphere in 3D;
  520. sphere_monte_carlo_test
  521. sphere_quad, a FORTRAN90 code which uses triangulation to approximate an integral on the surface of the unit sphere in 3D;
  522. sphere_quad_test
  523. sphere_stereograph, a FORTRAN90 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.
  524. sphere_stereograph_test
  525. sphere_voronoi, a FORTRAN90 code which reads a file containing the coordinates of points on the surface of the unit sphere in 3D, computes the Voronoi diagram, and outputs a PostScript (PS) file of the image;
  526. sphere_voronoi_test
  527. spline, a FORTRAN90 code which interpolates and approximates via splines;
  528. spline_test
  529. square_grid, a FORTRAN90 code which computes a grid of points over the interior of a square in 2D.
  530. square_grid_test
  531. square_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of the unit square or symmetric unit square in 2D.
  532. square_integrals_test
  533. square_monte_carlo, a FORTRAN90 code which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit square in 2D.
  534. square_monte_carlo_test
  535. st_io, a FORTRAN90 code which reads and writes sparse linear systems stored in the Sparse Triplet (ST) format.
  536. st_io_test
  537. st_to_ccs, a FORTRAN90 code which converts sparse matrix data from Sparse Triplet (ST) format to Compressed Column Storage (CCS) format;
  538. st_to_ccs_test
  539. stiff_ode, a FORTRAN90 code which considers an ordinary differential equation (ODE) which is an example of a stiff ODE.
  540. stiff_ode_test
  541. stla_io, a FORTRAN90 code which reads and writes the 3D graphics information in an ASCII stereolithography (STL) file;
  542. stla_io_test
  543. stokes_2d_exact, a FORTRAN90 code which evaluates exact solutions to the incompressible steady Stokes equations over the unit square in 2D.
  544. stokes_2d_exact_test
  545. string_pde, a FORTRAN90 code which sets up and solves the partial differential equations (PDE) describing a vibrating string, creating files that can be displayed by gnuplot().
  546. string_pde_test
  547. stroud, a FORTRAN90 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.
  548. stroud_test
  549. subset, a FORTRAN90 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.
  550. subset_test
  551. svd_basis, a FORTRAN90 code which applies the singular value decomposition (SVD) to a collection of data vectors, extracting dominant modes;
  552. svd_basis_test
  553. svd_basis_weight, a FORTRAN90 code which applies the singular value decomposition (SVD) to a collection of weighted data vectors, extracting dominant modes;
  554. svd_basis_weight_test
  555. svd_snowfall, a FORTRAN90 code which reads a file containing historical snowfall data and analyzes the data with the Singular Value Decomposition (SVD), displaying the results using gnuplot().
  556. svd_snowfall_test
  557. svd_test, a FORTRAN90 code which demonstrates the Singular Value Decomposition (SVD).
  558. svd_truncated, a FORTRAN90 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.
  559. svd_truncated_test
  560. table_io, a FORTRAN90 code which reads and writes data as a table file.
  561. table_io_test
  562. table_quality, a FORTRAN90 code which reads a table file of N points in M dimensions and computes the uniformity of the placement of the points;
  563. table_quality_test
  564. test_approx, a FORTRAN90 code which implements test problems for approximation, provided as (x,y) data.
  565. test_approx_test
  566. test_eigen, a FORTRAN90 code which implements test matrices for eigenvalue analysis.
  567. test_eigen_test
  568. test_int, a FORTRAN90 code which implements test problems for approximate integration in one dimension.
  569. test_int_test
  570. test_int_2d, a FORTRAN90 code which implements test problems for approximate integration in two dimensions.
  571. test_int_2d_test
  572. test_interp, a FORTRAN90 code which defines test problems for interpolation, provided as (x,y(x)) data.
  573. test_interp_test
  574. test_interp_1d, a FORTRAN90 code which defines test problems for interpolation of data y(x), which depends on a 1D argument.
  575. test_interp_1d_test
  576. test_interp_2d, a FORTRAN90 code which defines test problems for interpolation of data z(x,y), depending on a 2D argument.
  577. test_interp_2d_test
  578. test_interp_nd, a FORTRAN90 code which defines test problems for interpolation of data z(x), depending on an M-dimensional argument.
  579. test_interp_nd_test
  580. test_lls, a FORTRAN90 code which implements linear least squares (LLS) test problems of the form A*x=b.
  581. test_lls_test
  582. test_mat, a FORTRAN90 code which defines test matrices for which the condition number, determinant, eigenvalues, eigenvectors, inverse, null vectors, P*L*U factorization or linear system solution are known. Examples include the Fibonacci, Hilbert, Redheffer, Vandermonde, Wathen and Wilkinson matrices.
  583. test_mat_test
  584. test_matrix_exponential, a FORTRAN90 code which defines test cases for computing the matrix exponential.
  585. test_matrix_exponential_test
  586. test_mesh, a FORTRAN90 code which implements some sample 2D meshes.
  587. test_mesh_test
  588. test_min, a FORTRAN90 code which implements test problems for minimization of a scalar function of a scalar variable.
  589. test_min_test
  590. test_nearest, a FORTRAN90 code which tests the time complexity of various procedures for solving the nearest neighbor problem.
  591. test_nearest_test
  592. test_nint, a FORTRAN90 code which implements test problems for approximate integration (quadrature) in M dimensions.
  593. test_nint_test
  594. test_nls, a FORTRAN90 code which implements nonlinear least squares (NLS) test problems.
  595. test_nls_test
  596. test_nonlin, a FORTRAN90 code which implements test problems for the solution of systems of nonlinear equations.
  597. test_nonlin_test
  598. test_opt, a FORTRAN90 code which implements test problems for optimization of a scalar function of several variables.
  599. test_opt_test
  600. test_opt_con, a FORTRAN90 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.
  601. test_opt_con_test
  602. test_optimization, a FORTRAN90 code which implements test problems for optimization of a scalar function of several variables, as described by Molga and Smutnicki.
  603. test_optimization_test
  604. test_partial_digest, a FORTRAN90 code which generates cases of the partial digest problem.
  605. test_partial_digest_test
  606. test_tet_mesh, a FORTRAN90 code which implements test problems for tetrahedralization or meshing of arbitrary regions in 3 dimensions.
  607. test_tet_mesh_test
  608. test_triangulation, a FORTRAN90 code which implements test problems for triangularization or meshing of arbitrary regions in 2 dimensions.
  609. test_triangulation_test
  610. test_values, a FORTRAN90 code which stores a small set of values for a variety of mathematical functions, suitable for a rough test of accuracy for algorithms.
  611. test_values_test
  612. test_zero, a FORTRAN90 code which implements test problems for the solution of a single nonlinear equation in one variable.
  613. test_zero_test
  614. tester, a BASH script which runs the test codes.
  615. tet_mesh, a FORTRAN90 code which carries out various tasks associated with tetrahedral meshes in 3D;
  616. tet_mesh_test
  617. tet_mesh_quad, a FORTRAN90 code which estimates the integral of a function over a region defined by a tetrahedral mesh.
  618. tet_mesh_quad_test
  619. tet_mesh_quality, a FORTRAN90 code which reads information about a tet mesh of points in 3D and computes various quality measures;
  620. tet_mesh_quality_test
  621. tet_mesh_to_gmsh, a FORTRAN90 code which writes a tetrahedral mesh to a gmsh() file.
  622. tet_mesh_to_gmsh_test
  623. tet_mesh_to_xml, a FORTRAN90 code which writes a tetrahedral mesh to an XML file.
  624. tet_mesh_to_xml_test
  625. tetrahedron_grid, a FORTRAN90 code which computes a grid of points over the interior of a tetrahedron in 3D.
  626. tetrahedron_grid_test
  627. tetrahedron_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of the unit tetrahedron in 3D.
  628. tetrahedron_integrals_test
  629. tetrahedron_monte_carlo, a FORTRAN90 code which uses the Monte Carlo method to estimate an integral over the interior of a general tetrahedron in 3D.
  630. tetrahedron_monte_carlo_test
  631. tetrahedron_properties, a FORTRAN90 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.
  632. tetrahedron_properties_test
  633. tetrahedron01_monte_carlo, a FORTRAN90 code which uses the Monte Carlo method to estimate an integral over the interior of the unit tetrahedron in 3D.
  634. tetrahedron01_monte_carlo_test
  635. three_body_ode, a FORTRAN90 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.
  636. three_body_ode_test
  637. timer_test, a FORTRAN90 code which tests various timing functions.
  638. timestamp, a FORTRAN90 code which prints the current YMDHMS date as a timestamp.
  639. timestamp_test
  640. toeplitz, a FORTRAN90 code which implements Toeplitz matrix system solvers.
  641. toeplitz_test
  642. toeplitz_cholesky, a FORTRAN90 code which computes the Cholesky factorization of a nonnegative definite symmetric Toeplitz matrix.
  643. toeplitz_cholesky_test
  644. triangle_analyze, a FORTRAN90 code which reads a triangle defined in a file, and uses triangle_properties() to compute angles, area, centroid, circumcircle, edge lengths, incircle, orientation, orthocenter, and quality.
  645. triangle_analyze_test
  646. triangle_grid, a FORTRAN90 code which computes a grid of points over the interior of a triangle in 2D.
  647. triangle_grid_test
  648. triangle_histogram, a FORTRAN90 code which computes histograms of data over the interior of the unit triangle in 2D.
  649. triangle_histogram_test
  650. triangle_integrals, a FORTRAN90 code which returns the exact value of the integral of any polynomial over the interior of an arbitrary triangle in 2D.
  651. triangle_integrals_test
  652. triangle_interpolate, a FORTRAN90 code which shows how vertex data can be interpolated at any point in the interior of a triangle.
  653. triangle_interpolate_test
  654. triangle_io, a FORTRAN90 code which reads or writes some of the files created by the triangle() code of Jonathan Shewchuk.
  655. triangle_io_test
  656. triangle_monte_carlo, a FORTRAN90 code which uses the Monte Carlo method to estimate an integral over the interior of a general triangle in 2D.
  657. triangle_monte_carlo_test
  658. triangle_properties, a FORTRAN90 code which computes properties, including angles, area, centroid, circumcircle, edge lengths, incircle, orientation, orthocenter, and quality, of a triangle in 2D.
  659. triangle_properties_test
  660. triangle_svg, a FORTRAN90 code which uses Scalable Vector Graphics (SVG) to plot a triangle and any number of points, to illustrate quadrature rules and sampling techniques.
  661. triangle_svg_test
  662. triangle_to_fem, a FORTRAN90 code which reads the NODE and ELE files created by the triangle() code to describe a triangular mesh, and writes a corresponding pair of node and element files in the 2D FEM format.
  663. triangle_to_fem_test
  664. triangle_to_xml, a FORTRAN90 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.
  665. triangle_to_xml_test
  666. triangle01_integrals, a FORTRAN90 code which returns the integral of any monomial over the interior of the unit triangle in 2D.
  667. triangle01_integrals_test
  668. triangle01_monte_carlo, a FORTRAN90 code which uses the Monte Carlo method to estimate an integral over the interior of the unit triangle in 2D.
  669. triangle01_monte_carlo_test
  670. triangulation, a FORTRAN90 code which computes the triangulation 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.
  671. triangulation_test
  672. triangulation_l2q, a FORTRAN90 code which reads information about a 3-node (linear) triangulation and creates data defining a corresponding 6-node (quadratic) triangulation;
  673. triangulation_l2q_test
  674. triangulation_plot, a FORTRAN90 code which plots the nodes and elements of a triangulation as a PostScript (PS) file;
  675. triangulation_plot_test
  676. triangulation_q2l, a FORTRAN90 code which reads information about a 6-node triangulation and creates data defining a corresponding 3-node triangulation;
  677. triangulation_q2l_test
  678. triangulation_quad, a FORTRAN90 code which reads information about a triangulation and the value of a function at the nodes and estimates the integral of the function over the triangulated region.
  679. triangulation_quad_test
  680. triangulation_quality, a FORTRAN90 code which reads information about a triangulation and computes various quality measures;
  681. triangulation_quality_test
  682. triangulation_svg, a FORTRAN90 code which creates an SVG image of a triangulation, which can be displayed by a web browser.
  683. triangulation_svg_test
  684. truncated_normal, a FORTRAN90 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.
  685. truncated_normal_test
  686. uniform, a FORTRAN90 code which implements random number generators (RNG) for a variety of arithmetic types.
  687. uniform_test
  688. vandermonde, a FORTRAN90 code which implements the Bjork-Pereyra algorithm for accurate solution of linear systems involving the Vandermonde matrix.
  689. vandermonde_test
  690. vandermonde_approx_1d, a FORTRAN90 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.
  691. vandermonde_approx_1d_test
  692. vandermonde_approx_2d, a FORTRAN90 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.
  693. vandermonde_approx_2d_test
  694. vandermonde_interp_1d, a FORTRAN90 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().
  695. vandermonde_interp_1d_test
  696. vandermonde_interp_2d, a FORTRAN90 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.
  697. vandermonde_interp_2d_test
  698. wathen, a FORTRAN90 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).
  699. wathen_test
  700. wedge_grid, a FORTRAN90 code which computes a grid of points over the interior of the unit wedge in 3D.
  701. wedge_grid_test
  702. wedge_integrals, a FORTRAN90 code which returns the exact value of the integral of any monomial over the interior of the unit wedge in 3D.
  703. wedge_integrals_test
  704. wedge_monte_carlo, a FORTRAN90 code which uses the Monte Carlo method to estimate an integral over the interior of the unit wedge in 3D.
  705. wedge_monte_carlo_test
  706. wtime, a FORTRAN90 code which returns a reading of the wall clock time in seconds.
  707. wtime_test
  708. zero, a FORTRAN90 code which seeks a solution of a scalar nonlinear equation f(x)=0, by Richard Brent.
  709. zero_test
  710. zero_rc, a FORTRAN90 code which seeks a solution of a scalar nonlinear equation f(x)=0, using reverse communication (RC), by Richard Brent.
  711. zero_rc_test


Last revised on 08 September 2021.