MATLAB Source Codes


In many cases, the software is available in a program directory, while an accompanying test case is provided in a program_test directory.

  1. alpert_rule, a library which can set up an Alpert quadrature rule for functions which are regular, log(x) singular, or 1/sqrt(x) singular.
  2. alpert_rule_test
  3. analemma, a program which evaluates the equation of time, a formula for the difference between the uniform 24 hour day and the actual position of the sun, based on a C program by Brian Tung.
  4. analemma_test
  5. annulus_monte_carlo, a library which uses the Monte Carlo method to estimate the integral of a function over the interior of a circular annulus in 2D.
  6. annulus_monte_carlo_test
  7. annulus_rule, a library which computes a quadrature rule for estimating integrals of a function over the interior of a circular annulus in 2D.
  8. annulus_rule_test
  9. area_under_curve, a function which displays the area under a curve, that is, the points (x,y) between the x axis and the curve y=f(x).
  10. area_under_curve_test
  11. args, a function which shows how to count and report command line arguments;
  12. args_test
  13. arpack_test
  14. asa005, a library which evaluates the lower tail of the noncentral Student's T distribution, by BE Cooper. This is a version of Applied Statistics Algorithm 5;
  15. asa005_test
  16. asa006, a library which computes the Cholesky factor of a positive definite symmetric matrix, by Michael Healy; This is a version of Applied Statistics Algorithm 6;
  17. asa006_test
  18. asa007, a library which computes the inverse of a positive definite symmetric matrix, by Michael Healy; This is a version of Applied Statistics Algorithm 7.
  19. asa007_test
  20. asa032, a library which evaluates the incomplete Gamma function, by G Bhattacharjee. This is a version of Applied Statistics Algorithm 32;
  21. asa032_test
  22. asa047, a library 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;
  23. asa047_test
  24. asa053, a library which produces sample matrices from the Wishart distribution, by William Smith and Ronald Hocking. This is a version of Applied Statistics Algorithm 53.
  25. asa053_test
  26. asa058, a library which carries out clustering of data, by David Sparks. This is a version of Applied Statistics Algorithm 58;
  27. asa058_test
  28. asa063, a library which evaluates the incomplete Beta function, by KL Majumder and G Bhattacharjee. This is a version of Applied Statistics Algorithm 63;
  29. asa063_test
  30. asa066, a library which computes the cumulative density function (CDF) of the standard normal distribution, by David Hill. This is a version of Applied Statistics Algorithm 66;
  31. asa066_test
  32. asa076, a library which evaluates Owen's T function, by Young and Minder. This is a version of Applied Statistics Algorithm 76;
  33. asa076_test
  34. asa091, a library which computes the percentage points of the Chi-square distribution, by Best and Roberts. This is a version of Applied Statistics Algorithm 91;
  35. asa091_test
  36. asa103, a library which evaluates the digamma or psi function, by Jose Bernardo. This is a version of Applied Statistics Algorithm 103;
  37. asa103_test
  38. asa109 a library which inverts the incomplete Beta function, by Cran, Martin and Thomas. This is a version of Applied Statistics Algorithm 109;
  39. asa109_test
  40. asa111 a library which evaluates the percentage points of the normal distribution, by Beasley and Springer. This is a version of Applied Statistics Algorithm 111;
  41. asa111_test
  42. asa113 a library which clusters data using a transfer and swap algorithm, by Banfield and Bassill; This is a version of Applied Statistics Algorithm 113;
  43. asa113_test
  44. asa121, a library which evaluates the trigamma function, by BE Schneider. This is a version of Applied Statistics Algorithm 121;
  45. asa121_test
  46. asa136, a library which implements a clustering algorithm, by Hartigan and Wong. This is a version of Applied Statistics Algorithm 136;
  47. asa136_test
  48. asa144, a library which randomly generates tables with given row and column sums, by James Boyett. This is a version of Applied Statistics Algorithm 144;
  49. asa144_test
  50. asa147, a library which evaluates the incomplete Gamma function, by Chi Leung Lau. This is a version of Applied Statistics Algorithm 147;
  51. asa147_test
  52. asa152, a library 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;
  53. asa152_test
  54. asa159, a library which computes a random table with given row and column sums, by Michael Patefield; This is a version of Applied Statistics Algorithm 159;
  55. asa159_test
  56. asa172, a library 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;
  57. asa172_test
  58. asa183, a library which implements a random number generator (RNG), by Wichman and Hill; this is a version of Applied Statistics Algorithm 183;
  59. asa183_test
  60. asa226, a library which evaluates the noncentral incomplete Beta function, by Russell Lenth; this is a version of Applied Statistics Algorithm 226;
  61. asa226_test
  62. asa239, a library which evaluates the incomplete Gamma function, by Shea; this is a version of Applied Statistics Algorithm 239;
  63. asa239_test
  64. asa241, a library which computes the inverse of the normal cumulative density function (CDF), by Michael Wichura; this is a version of Applied Statistics Algorithm 241;
  65. asa241_test
  66. asa243, a library which evaluates the lower tail of the noncentral Student's T distribution, by Russell Lenth; this is a version of Applied Statistics Algorithm 243;
  67. asa243_test
  68. asa245, a library which evaluates the logarithm of the Gamma function, by Allan Mcleod; this is a version of Applied Statistics Algorithm 245;
  69. asa245_test
  70. asa266, a library which evaluates various properties of the Dirichlet probability density function (PDF); this is a version of Applied Statistics Algorithm 266;
  71. asa266_test
  72. asa299, a library which computes the lattice points (integer coordinates) in an M dimensional simplex, by Chasalow and Brand; this is a version of Applied Statistics Algorithm 299;
  73. asa299_test
  74. asa310, a library which evaluates the noncentral incomplete Beta function, by Chattamvelli and Shanmugam. This is a version of Applied Statistics Algorithm 310;
  75. asa310_test
  76. asa314, a library 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.
  77. asa314_test
  78. atbash, a library which applies the Atbash substitution cipher to a string of text.
  79. atbash_test
  80. backtrack_binary_rc, a library which carries out a backtrack search for a set of binary decisions, using reverse communication (RC).
  81. backtrack_binary_rc_test
  82. ball_and_stick_display, a program which demonstrates the creation of a 3D image constructed from balls and sticks;
  83. ball_and_stick_display_test
  84. ball_distance, a library which considers the problem of describing the typical value of the distance between a pair of points randomly selected in the unit ball in 3D.
  85. ball_distance_test
  86. ball_grid, a library which computes a grid of points over the interior of the unit ball in 3D.
  87. ball_grid_test
  88. ball_integrals, a library which returns the exact value of the integral of any monomial over the interior of the unit ball in 3D.
  89. ball_integrals_test
  90. ball_monte_carlo, a library which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit ball in 3D;
  91. ball_monte_carlo_test
  92. bank, a library which computes the check digit associated with a US Bank Routing Number check digit, or reports whether a 9-digit code is actually valid.
  93. bank_test
  94. barycentric_interp_1d, a library 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.
  95. barycentric_interp_1d_test
  96. bellman_ford, a library 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.
  97. bellman_ford_test
  98. bernstein_approximation, a library which looks at some simple cases of approximation of a function f(x) by a Bernstein polynomial.
  99. bernstein_approximation_test
  100. bernstein_polynomial, a library which evaluates the Bernstein polynomials;
  101. bernstein_polynomial_test
  102. besselj, a library which evaluates Bessel J functions of noninteger order;
  103. besselj_test
  104. beta_nc, a library which evaluates the cumulative density function (CDF) of the noncentral Beta distribution;
  105. beta_nc_test
  106. bezier_surface, a library which reads, writes, prints and manipulates the data that defines a Bezier surface;
  107. bezier_surface_test
  108. bezier_surface_display, a program which displays a Bezier surface;
  109. bezier_surface_display_test
  110. bicycle_lock, a library which simulates the process of determining the secret combination of a bicycle lock, an integer between 000 and 999.
  111. bicycle_lock_test
  112. bisection_integer, a library which seeks an integer solution to the equation F(X)=0, using bisection within a user-supplied change of sign interval [A,B].
  113. bisection_integer_test
  114. bisection_rc, a library 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).
  115. bisection_rc_test
  116. black_scholes, a library which implements some simple approaches to the Black-Scholes option valuation theory, by Desmond Higham.
  117. black_scholes_test
  118. blas, a library 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.
  119. blas0, a library which contains auxilliary functions for the Basic Linear Algebra Subprograms (BLAS).
  120. blas0_test
  121. blas1_c, a library which implements the Level 1 Basic Linear Algebra Subprograms (BLAS), using single precision complex arithmetic;
  122. blas1_c_test
  123. blas1_d, a library which implements the Level 1 Basic Linear Algebra Subprograms (BLAS), using double precision real arithmetic;
  124. blas1_d_test
  125. blas1_s, a library which implements the Level 1 Basic Linear Algebra Subprograms (BLAS), using single precision real arithmetic;
  126. blas1_s_test
  127. blas1_z, a library which implements the Level 1 Basic Linear Algebra Subprograms (BLAS), using double precision complex arithmetic;
  128. blas1_z_test
  129. blas2_d, a library which contains the Level 2 Basic Linear Algebra Subprograms (BLAS) for matrix-vector operations, using double precision real arithmetic.
  130. blas2_d_test
  131. blas2_s, a library which contains the Level 2 Basic Linear Algebra Subprograms (BLAS) for matrix-vector operations, using single precision real arithmetic.
  132. blas2_s_test
  133. blas3_d, a library which constitutes the Level 3 Basic Linear Algebra Subprograms (BLAS), for matrix-matrix operations using double precision real arithmetic.
  134. blas3_d_test
  135. blas3_s, a library which constitutes the Level 3 Basic Linear Algebra Subprograms (BLAS), for matrix-matrix operations using single precision real arithmetic.
  136. blas3_s_test
  137. blend, a library which carries out 1D/2D/3D blending interpolation;
  138. blend_test
  139. blsprice_test
  140. box_behnken, a library which computes a Box-Behnken design, that is, a set of arguments to sample the behavior of a function of multiple parameters;
  141. box_behnken_test
  142. box_display, a program which displays a box plot, over integer pairs of data, of a function defined by two formulas.
  143. box_display_test
  144. box_flow, a program which solves the Navier Stokes equations (NSE), replacing the continuity equation with a pressure Poisson equation (PPE), by John Cornthwaite.
  145. box_flow_test
  146. box_games, a library which assists in the display of game boards (checkers, cellular automatons, life);
  147. box_games_test
  148. box_plot, a program which displays a box plot of data that consists of pairs of integers;
  149. box_plot_test
  150. brain_sensor_pod, a program which applies the method of Proper Orthogonal Decomposition (POD) to seek underlying patterns in sets of 40 sensor readings of brain activity.
  151. brain_sensor_pod_test
  152. brent, a library which contains routines for finding zeroes or minima of a scalar function of a scalar variable, without the use of derivative information, including a reverse communication (RC) option, by Richard Brent.
  153. brent_test
  154. brownian_motion_simulation, a library which simulates Brownian motion in an M dimensional region.
  155. brownian_motion_simulation_test
  156. buckling_spring, a program which plots solutions of the buckling spring equations.
  157. buckling_spring_test
  158. burgers_solution, a library which evaluates exact solutions of the time-dependent 1D viscous Burgers equation.
  159. burgers_solution_test
  160. burgers_steady_viscous, a library which solves the steady (time-independent) viscous Burgers equation using the finite difference method (FDM) applied to the conservative form of the equation, using Newton's method to solve the resulting nonlinear system.
  161. burgers_steady_viscous_test
  162. burgers_time_inviscid, a library which solves the time-dependent inviscid Burgers equation using the finite difference method (FDM), and one of six solution methods selected by the user.
  163. burgers_time_inviscid_test
  164. burgers_time_viscous, a library which solves the time-dependent viscous Burgers equation using the finite difference method (FDM) applied to the conservative form of the equation.
  165. burgers_time_viscous_test
  166. bvec, a library which demonstrates how signed integers can be stored as binary vectors, and arithmetic can be performed on them.
  167. bvec_test
  168. bvp4c_test
  169. c4lib, a library which implements certain elementary functions for single precision complex ("C4") variables;
  170. c4lib_test
  171. c8lib, a library which implements certain elementary functions for double precision complex ("C8") variables;
  172. c8lib_test
  173. caesar, a library which can apply a Caesar Shift Cipher to a string of text.
  174. caesar_test
  175. calendar_nyt, a library which shows the correspondence between dates and the New York Times volume and issue number;
  176. calendar_nyt_test
  177. calpak, a library which makes various calendar calculations;
  178. calpak_test
  179. cauchy_principal_value, a library which uses Gauss-Legendre quadrature to estimate the Cauchy Principal Value (CPV) of certain singular integrals.
  180. cauchy_principal_value_test
  181. cavity_flow_display, a library which displays a single velocity field solution for the driven cavity;
  182. cavity_flow_display_test
  183. cavity_flow_movie, a library which animates the velocity solutions for the driven cavity;
  184. cc_display, a program which displays the points used in a 2D Clenshaw-Curtis quadrature rule;
  185. cc_display_test
  186. cc_io a library which reads and writes sparse linear systems stored in the Compressed Column (CC) format.
  187. cc_io_test
  188. cc_project, a library which investigates generalized Clenshaw-Curtis quadrature rules for semi-infinite and infinite intervals, by John Boyd.
  189. cc_project_test
  190. cc_to_st a library which converts a sparse matrix from compressed column (CC) to sparse triplet (ST) format.
  191. cc_to_st_test
  192. ccl_test
  193. ccn_rule, a program which defines a Clenshaw Curtis Nested (CCN) quadrature rule.
  194. ccn_rule_test
  195. ccvt_box, a program which calculates a Constrained Centroidal Voronoi Tessellation (CCVT) for points constrained to lie in a box, with some points moved to the boundary;
  196. ccn_box_test
  197. ccvt_reflect, a program which calculates a Constrained Centroidal Voronoi Tessellation (CCVT) for points constrained to lie in a box, with some points pushed towards the boundary;
  198. ccn_reflect_test
  199. cell, a library 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.
  200. cell_test
  201. cellular_automaton, a program which demonstrates the 1D Cellular Automaton known as rule #30.
  202. cellular_automaton_test
  203. cg, a library 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.
  204. cg_test
  205. cg_lab_triangles, a collection of programs associated with a computer lab assignment on computational geometry and triangles;
  206. cg_rc, a library which implements the conjugate gradient (CG) method for solving a positive definite sparse linear system A*x=b, using reverse communication (RC).
  207. cg_rc_test
  208. chain_letter_tree, a program which analyzes a similarity matrix for 11 versions of a single chain letter and produces a dendrogram or tree diagram that suggests the degrees of relatedness and the evolutionary history of the letters.
  209. change_making, a library which considers the change making problem, in which a given sum is to be formed using coins of various denominations.
  210. change_making_test
  211. chebyshev, a library which computes the Chebyshev interpolant/approximant to a given function over an interval.
  212. chebyshev_test
  213. chebyshev_interp_1d, a library which determines the combination of Chebyshev polynomials which interpolates a set of data, so that p(x(i)) = y(i).
  214. chebyshev_interp_1d_test
  215. chebyshev_polynomial, a library which considers the Chebyshev polynomials T(i,x), U(i,x), V(i,x) and W(i,x).
  216. chebyshev_polynomial_test
  217. chebyshev_series, a library 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.
  218. chebyshev_series_test
  219. chebyshev1_rule, a program which computes and writes out a Gauss-Chebyshev type 1 quadrature rule of given order.
  220. chebyshev1_rule_test
  221. chebyshev2_rule, a program which computes and writes out a Gauss-Chebyshev type 2 quadrature rule of given order.
  222. chebyshev2_rule_test
  223. chrpak, a library which manipulates characters and strings;
  224. chrpak_test
  225. circle_arc_grid, a program which computes grid points along a circular arc.
  226. circle_arc_grid_test
  227. circle_distance, a library which considers the problem of describing the typical value of the distance between a pair of points randomly selected on the unit circle.
  228. circle_distance_test
  229. circle_grid_display a program which reads a matrix of integers, and draws a corresponding grid of circles filled with color.
  230. circle_grid_display_test
  231. circle_integrals, a library which returns the exact value of the integral of any monomial over the circumference of the unit circle in 2D.
  232. circle_integrals_test
  233. circle_monte_carlo, a library which applies a Monte Carlo method to estimate the integral of a function along the circumference of the unit circle in 2D;
  234. circle_monte_carlo_test
  235. circle_rule, a library which computes quadrature rules for the unit circle in 2D, that is, the circumference of the circle of radius 1 and center (0,0).
  236. circle_rule_test
  237. circle_segment, a library which carries out computations associated with a circle segment, including height, angle, area, centroid, sampling, and quadrature.
  238. circle_segment_test
  239. circles, a library which can be used, when creating graphics, to draw one or more circles, while controlling the center locations, radii, colors, edge colors, and transparency, by Chad Greene.
  240. circles_test
  241. cities, a library which works with city-to-city distance matrices;
  242. cities_test
  243. clausen, a library which evaluates a Chebyshev interpolant to the Clausen function Cl2(x).
  244. clausen_test
  245. clenshaw_curtis_rule, a program which implements a Clenshaw Curtis quadrature rule;
  246. clenshaw_curtis_rule_test
  247. cnoise, a library which generates samples of noise obeying a 1/f^alpha power law, by Miroslav Stoyanov.
  248. cnoise_test
  249. coin_simulation, a library which looks at ways of simulating or visualizing the results of many tosses of a fair or biased coin.
  250. coin_simulation_test
  251. collatz, a library which computes and analyzes the Collatz sequence, also known as the hailstone sequence or 3n+1 sequence;
  252. collatz_test
  253. collatz_recursive, a library which demonstrates recursive programming by considering the simple Collatz 3n+1 problem.
  254. collatz_recursive_test
  255. collocation, a library which demonstrates the use of collocation to produce a function g(x) that satisfies the same constraints as a function f(x), but only at a discrete set of points.
  256. collocation_test
  257. colored_noise, a library which generates samples of noise obeying a 1/f^alpha power law.
  258. colored_noise_test
  259. combination_lock, a program which simulates the process of determining the secret combination of a lock.
  260. combination_lock_test
  261. combo, a library 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.
  262. combo_test
  263. compass_search, a library which seeks the minimizer of a scalar function of several variables using compass search, a direct search algorithm that does not use derivatives.
  264. compass_search_test
  265. complex_numbers_test
  266. complexity_test
  267. condition, a library which implements methods of computing or estimating the condition number of a matrix.
  268. condition_test
  269. continuation, a library which implements the continuation method for a simple 2D problem.
  270. continuation_test
  271. continued_fraction a library which implements some simple algorithms for dealing with simple and generalized continued fractions.
  272. continued_fraction_test
  273. contour_gradient, a program which displays contours and gradient vectors for a function f(x,y).
  274. contour_gradient_test
  275. contour_gradient_3d, a program which displays contours and gradient vectors for a function f(x,y) in a 3D display.
  276. contour_gradient_3d_test
  277. contour_sequence4, a program which creates images suitable for animation from one XY file and a sequence of u(x,y) data files;
  278. contour_sequence4_test
  279. convex_hull, a program which demonstrates the computation of the convex hull of a set of 2D points.
  280. convex_hull_test
  281. coordinate_search, a program which seeks the minimizer of a scalar function of several variables, by Jeff Borggaard.
  282. coordinate_search_test
  283. cordic, a library which computes a few special functions using the CORDIC algorithm.
  284. cordic_test
  285. correlation, a library which contains statistical correlation functions.
  286. correlation_test
  287. cosine_transform, a library which demonstrates some simple properties of the discrete cosine transform (DCT).
  288. cosine_transform_test
  289. cplex_solution_read, a program which extracts solution data from a CPLEX result file.
  290. cplex_solution_read_test
  291. cube_arbq_rule, a library 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.
  292. cube_arbq_rule_test
  293. cube_display, a program which displays a cube plot, over integer triples of data, of a function defined by two formulas, using plotcube.m, by Thomas Montagnon.
  294. cube_display_test
  295. cube_distance, a library which considers the problem of describing the typical value of the distance between a pair of points randomly selected in the unit cube in 3D.
  296. cube_distance_test
  297. cube_exactness, a library which investigates the polynomial exactness of quadrature rules over the interior of a cube in 3D.
  298. cube_exactness_test
  299. cube_felippa_rule, a library which returns Felippa's quadratures rules for approximating integrals over the interior of a cube in 3D.
  300. cube_felippa_rule_test
  301. cube_grid, a library which computes a grid of points over the interior of a cube in 3D.
  302. cube_grid_test
  303. cube_integrals, a library which returns the exact value of the integral of any monomial over the interior of the unit cube in 3D.
  304. cube_integrals_test
  305. cube_monte_carlo, a library which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit cube in 3D.
  306. cube_monte_carlo_test
  307. cuda_loop, a library which shows how, in a CUDA program, the user's choice of block and thread factors determines the allocation of tasks to processors.
  308. cuda_loop_test
  309. cvt, a library which computes an N-point Centroidal Voronoi Tessellation (CVT) in M dimensions;
  310. cvt_1d_lloyd, a program which computes an N-point Centroidal Voronoi Tessellation (CVT) within the interval [0,1], under a uniform density, using Lloyd's method to compute the Voronoi regions exactly.
  311. cvt_1d_lloyd_test
  312. cvt_1d_lumping, a program which allows the user to carry out a lumped version of Lloyd's iterative algorithm for a centroidal Voronoi Tessellation (CVT() in the interval [-1,+1], and is applied to investigate a relationship between CVT's and the Chebyshev Zero nodes.
  313. cvt_1d_lumping_test
  314. cvt_1d_nonuniform, a program which computes an N-point Centroidal Voronoi Tessellation (CVT) in 1 dimension, under a nonuniform density, and plots the evolution of the locations of the generators during the iteration;
  315. cvt_1d_nonuniform_test
  316. cvt_1d_sampling, a program which computes an N-point Centroidal Voronoi Tessellation (CVT) within the interval [0,1], under a uniform density, using sampling to estimate the Voronoi regions.
  317. cvt_1d_sampling_test
  318. cvt_2d_lumping, a program which computes an N-point Centroidal Voronoi Tessellation (CVT) within the unit square [-1,1]^2, under a Chebyshev density, using weighted sampling ("lumping") to estimate the Voronoi regions.
  319. cvt_2d_sampling, a program which computes an N-point Centroidal Voronoi Tessellation (CVT) within the unit square [0,1]x[0,1], under a uniform density, using sampling to estimate the Voronoi regions.
  320. cvt_2d_sampling_test
  321. cvt_3d_lumping, a program which computes an N-point Centroidal Voronoi Tessellation (CVT) within the unit cube [-1,1]^3, under a Chebyshev density, using weighted sampling ("lumping") to estimate the Voronoi regions.
  322. cvt_3d_sampling, a program which computes an N-point Centroidal Voronoi Tessellation (CVT) within the unit cube [0,1]x[0,1]x[0,1], under a uniform density, using sampling to estimate the Voronoi regions.
  323. cvt_circle_nonuniform, a program which demonstrates the computation of a centroidal Voronoi Tessellation (CVT) over a circular region, using a nonuniform density.
  324. cvt_circle_nonuniform_test
  325. cvt_circle_uniform, a program which demonstrates the computation of a centroidal Voronoi Tessellation (CVT) over a circular region, using a uniform density.
  326. cvt_circle_uniform_test
  327. cvt_corn, a program which studies a 2D model of the growth of a corn kernel, by treating the surface and interior biological cells as points to be organized by a Centroidal Voronoi Tessellation (CVT) with a nonuniform density; during a sequence of growth steps, new biological cells are randomly added to the surface and interior.
  328. cvt_dataset, a program which creates a Centroidal Voronoi Tessellation (CVT) dataset;
  329. cvt_ellipse_uniform, a program which iteratively calculates a Centroidal Voronoi Tessellation (CVT) over an ellipse, with a uniform density.
  330. cvt_ellipse_uniform_test
  331. cvt_example_fifty_points, a program which illustrates the steps involved in the calculation of a Centroidal Voronoi Tessellation (CVT) of the unit square, with 50 generator points.
  332. cvt_example_five_points, a program which illustrates the steps involved in the calculation of a Centroidal Voronoi Tessellation (CVT) of the unit square, with 5 generator points.
  333. cvt_metric, a program which computes a Centroidal Voronoi Tessellation (CVT) under a spatially varying metric;
  334. cvt_movie, a program which creates an animation of the evolution of a Centroidal Voronoi Tessellation (CVT);
  335. cvt_movie2, a program which creates a Centroidal Voronoi Tessellation (CVT) movie;
  336. cvt_movie3, a program which creates a Centroidal Voronoi Tessellation (CVT) movie in a region of unusual shape;
  337. cvt_movie4, a program which creates a Centroidal Voronoi Tessellation (CVT) movie in a square, with a density function that drives points to the corners;
  338. cvt_movie5, a program which repeats cvt_movie3, but with hexagonal grid initialization, fixed points, and boundary projection;
  339. cvt_square_nonuniform, a program which iteratively calculates a Centroidal Voronoi Tessellation (CVT) over a square, with a nonuniform density.
  340. cvt_square_nonuniform_test
  341. cvt_square_pdf_discrete, a program which iteratively calculates a Centroidal Voronoi Tessellation (CVT) over a square, with a density determined from a discrete PDF.
  342. cvt_square_pdf_discrete_test
  343. cvt_square_uniform, a program which iteratively calculates a Centroidal Voronoi Tessellation (CVT) over a square, with a uniform density.
  344. cvt_square_uniform_test
  345. cvt_triangle_uniform, a program which iteratively calculates a Centroidal Voronoi Tessellation (CVT) over a triangle, with a uniform density.
  346. cvt_triangle_uniform_test
  347. cvtm_1d, a program which estimates a mirror-periodic centroidal Voronoi Tessellation (CVTM) in the periodic interval [0,1], using a version of Lloyd's iteration.
  348. cvtm_1d_test
  349. cvtp, a library which creates a CVTP dataset, that is, a Centroidal Voronoi Tessellation on a periodic region.
  350. cvtp_test
  351. cvtp_1d, a program which estimates a periodic centroidal Voronoi Tessellation (CVTP) in the periodic interval [0,1], using a version of Lloyd's iteration.
  352. cvtp_1d_test
  353. cycle_brent, a library 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.
  354. cycle_brent_test
  355. cycle_floyd, a library 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.
  356. cycle_floyd_test
  357. cyclic_reduction, a library which solves a tridiagonal linear system using cyclic reduction;
  358. cyclic_reduction_test
  359. dg1d_advection, a library which uses the Discontinuous Galerkin Method (DG) to approximate a solution of the advection equation. The original version of the code was written by Jan Hesthaven and Tim Warburton.
  360. dg1d_advection_test
  361. dg1d_burgers, a library which uses the Discontinuous Galerkin Method (DG) to approximate a solution of the unsteady 1D Burgers equation. The original version of the code was written by Jan Hesthaven and Tim Warburton.
  362. dg1d_burgers_test
  363. dg1d_heat, a library which uses the Discontinuous Galerkin Method (DG) to approximate a solution of the unsteady 1D heat equation. The original version of the code was written by Jan Hesthaven and Tim Warburton.
  364. dg1d_heat_test
  365. dg1d_maxwell, a library which uses the Discontinuous Galerkin Method (DG) to approximate a solution of Maxwell's equations. The original version of the code was written by Jan Hesthaven and Tim Warburton.
  366. dg1d_maxwell_test
  367. dg1d_poisson, a program which applies the discontinuous Galerkin method (DG) to a 1D version of the Poisson equation; the original version of the code was written by Beatrice Riviere.
  368. dg1d_poisson_test
  369. diaphony, a program which reads a file of N points in M dimensions and computes its diaphony, a measure of point dispersion.
  370. diaphony_test
  371. dice_simulation, a program which simulates N tosses of M dice, making a histogram of the results.
  372. dice_simulation_test
  373. dictionary_code, a library which demonstates how a text file can be compressed and decompressed using a dictionary code.
  374. dictionary_code_test
  375. differ, a library which 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.
  376. differ_test
  377. digital_dice, a library which contains the scripts used to carry out the probability simulations described in Paul Nahin's "Digital Dice";
  378. dijkstra, a library which implements a simple version of Dijkstra's minimum distance algorithm for graphs.
  379. dijkstra_test
  380. discrete_pdf_sample_2d, a program which demonstrates how to construct a Probability Density Function (PDF) from a table of sample data, and then to use that PDF to create new samples.
  381. discrete_pdf_sample_2d_test
  382. disk_distance, a library which considers the problem of describing the typical value of the distance between a pair of points randomly selected in the unit disk.
  383. disk_distance_test
  384. disk_grid, a library 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.
  385. disk_grid_test
  386. disk_monte_carlo, a library which applies a Monte Carlo method to estimate integrals of a function over the interior of the general disk in 2D.
  387. disk_monte_carlo_test
  388. disk_rule, a library which computes quadrature rules for the general disk in 2D.
  389. disk_rule_test
  390. disk01_integrals, a library which returns the exact value of the integral of any monomial over the interior of the unit disk in 2D.
  391. disk01_integrals_test
  392. disk01_monte_carlo, a library which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit disk in 2D;
  393. disk01_monte_carlo_test
  394. disk01_quarter_monte_carlo, a library which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit quarter disk in 2D;
  395. disk01_quarter_monte_carlo_test
  396. disk01_quarter_rule, a program which computes a quadrature rule for the unit quarter disk in 2D, that is, the interior of the circle of radius 1 and center (0,0).
  397. disk01_quarter_rule_test
  398. disk01_rule, a library which computes quadrature rules for the unit disk in 2D.
  399. disk01_rule_test
  400. dist_plot, a program which makes contour plots of the distance function, as defined and used in Persson and Strang's distmesh() code;
  401. dist_plot_test
  402. distance_to_position, a program which estimates the positions of cities which minimizes the discrepancy with a city-to-city distance table.
  403. distance_to_position_test
  404. distance_to_position_sphere, a program which estimates the positions of cities on a sphere (such as the earth) based on a city-to-city distance table.
  405. distance_to_position_sphere_test
  406. distmesh, a library which carries out a method of mesh generation; by Per-Olof Persson and Gilbert Strang.
  407. distmesh_test
  408. distmesh_3d, a library which carries out a method of mesh generation in 3D, by Per-Olof Persson and Gilbert Strang.
  409. distmesh_3d_test
  410. divdif, a library which uses divided differences to compute the polynomial interpolant to a given set of data.
  411. divdif_test
  412. dlap_io, a library which reads and writes DLAP sparse matrix files;
  413. dlap_io_test
  414. doomsday, a library 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.
  415. doomsday_test
  416. double_c_data, programs which generate, plot or write out 2D data that forms two interlocking "C" shapes.
  417. double_c_data_test
  418. dream, a program 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.
  419. dream_test
  420. drug_dosage, a program which simulates the variation in the blood levels of a medicinal drug being administered at specific dosages and times over a course of treatment. The level should rise about a given medicinal level for some time, but stay below the toxic level.
  421. drug_dosage_test
  422. duel_simulation, a program which simulates N repetitions of a duel between two players, each of whom has a known firing accuracy.
  423. duel_simulation_test
  424. dueling_idiots, a library which contains the scripts used to carry out the probability simulations described in Paul Nahin's "Dueling Idiots";
  425. earth_sphere, a program which can display a 3D image of the earth;
  426. edge, a library which defines some test functions in 1D, 2D and 3D for the detection of edges or discontinuities.
  427. edge_test
  428. eigenfaces, a MATLAB library which applies principal component analysis to a set of images.
  429. eigenfaces_test
  430. ellipse_grid, a library which computes a grid of points over the interior of an ellipse in 2D.
  431. ellipse_grid_test
  432. ellipse_monte_carlo, a library which uses the Monte Carlo method to estimate the value of integrals over the interior of an ellipse in 2D.
  433. ellipse_monte_carlo_test
  434. ellipsoid_grid, a library which computes a grid of points over the interior of an ellipsoid in 3D.
  435. ellipsoid_monte_carlo, a library which uses the Monte Carlo method to estimate the value of integrals over the interior of an ellipsoid in M dimensions.
  436. elliptic_integral, a library which evaluates complete elliptic integrals of first, second and third kind, using Carlson's elliptic integral functions.
  437. elliptic_integral_test
  438. entrust, a library which uses trust-region methods to solve problems in scalar optimization or nonlinear least squares (NLS), by Jeff Borggaard and Gene Cliff.
  439. epicycloid, a library which computes, plots and tabulates an epicycloid curve.
  440. epicycloid_test
  441. equidistribution, investigates equidistribution properties relating to density functions and point sets.
  442. errors, programs which illustrate the failure of numerical algorithms;
  443. exactness, a library 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).
  444. exm, a library which illustrates the computational experiments in "Experiments with Matlab", by Cleve Moler.
  445. faces_average, a program which averages several images of the same face;
  446. faces_average_test
  447. fair_dice_simulation, a program which simulates N tosses of 2 dice, making a histogram of the results.
  448. fastgl, a library which carries out the rapid computation of the Kth value and weight of an N point Gauss-Legendre quadrature rule, by Ignace Bogaert.
  449. faure, a library which computes the Faure M dimensional Quasi Mont Carlo (QMC) sequence;
  450. faure_dataset, a program which creates an M dimensional Faure Quasi Mont Carlo (QMC) dataset;
  451. fd_predator_prey, a program which solves a time-dependent predator prey system using the finite difference method (FDM).
  452. fd_to_tec, a program which converts FD files storing finite difference method (FDM) models into tecplot ASCII files.
  453. fd1d_advection_diffusion_steady, a program 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.
  454. fd1d_advection_ftcs, a program 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) difference scheme.
  455. fd1d_advection_lax, a program 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.
  456. fd1d_advection_lax_wendroff, a program 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.
  457. fd1d_burgers_lax, a program 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.
  458. fd1d_burgers_leap, a program which applies the finite difference method (FDM) and the leapfrog approach to solve the non-viscous time-dependent Burgers equation in one spatial dimension.
  459. fd1d_bvp, a program which applies the finite difference method (FDM) to a two point boundary value problem (BVP) in one spatial dimension.
  460. fd1d_display, a program which reads a pair of files defining a 1D model for the finite difference method (FDM), and plots the data.
  461. fd1d_heat_explicit, a library which implements a finite difference method (FDM), explicit in time, to solve the time dependent 1D heat equation;
  462. fd1d_heat_implicit, a program which implements a finite difference method (FDM), implicit in time, to solve the time dependent 1D heat equation;
  463. fd1d_heat_steady, a program which implements a finite difference method (FDM) for the steady (time independent) 1D heat equation;
  464. fd1d_predator_prey, a program which implements a finite difference method (FDM) for a time and 1D space dependent predator-prey system, by Marcus Garvie.
  465. fd1d_predator_prey_plot, a program which plots solutions from the fd1d_predator_prey program, by Marcus Garvie.
  466. fd1d_wave, a library which applies the finite difference method (FDM) to solve the time-dependent wave equation utt = c * uxx in one spatial dimension.
  467. fd2d_heat_steady, a program which implements a finite difference method (FDM) for the steady (time independent) 2D heat equation;
  468. fd2d_predator_prey, a program which implements a finite difference method (FDM) for a time and 2D space dependent predator-prey system, by Marcus Garvie.
  469. fe2d_predator_prey_fast, programs which implement a finite element method (FEM) for a time and 2D space dependent predator-prey system, on an arbitrary triangulated region, with a variety of possible boundary conditions, incorporating some Matlab optimizations, by Marcus Garvie.
  470. fem_basis, a library which can define and evaluate finite element method (FEM) basis functions for any degree in an M dimensional simplex (1D interval, 2D triangle, 3D tetrahedron, and higher dimensional generalizations.)
  471. fem_basis_q4_display, a program which displays any single finite element method (FEM) basis function associated with an arbitrary linear quadrilateral Q4 mesh;
  472. fem_basis_t3_display, a program which displays a basis function for the finite element method (FEM) associated with an arbitrary 3-node triangle T3 mesh;
  473. fem_basis_t4_display, a program which displays a basis function for the finite element method (FEM) associated with an arbitrary 4-node triangle T4 mesh;
  474. fem_basis_t6_display, a program which displays a basis function for the finite element method (FEM) associated with an arbitrary 6-node triangle T6 mesh;
  475. fem_io, a library which reads or writes FEM files, which describe the nodes, elements, and function values associated with a finite element method (FEM) model;
  476. fem_meshing, a library which looks at some simple issues in defining a geometric mesh for the finite element method (FEM) in 2D.
  477. fem_neumann, a program which sets up a time-dependent reaction-diffusion equation in 1D, with Neumann boundary conditions, discretized using the finite element method (FEM).
  478. fem_to_gmsh, a program 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.
  479. fem_to_medit, a program 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.
  480. fem_to_mesh, a program which reads a set of FEM files defining the node coordinates, boundary nodes, and elements of a finite element mesh, and rewrites the data as a MESH file.
  481. fem_to_triangle, a program 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.
  482. 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.
  483. fem_to_tec, a program which reads a set of FEM files, (three text files describing a finite element model), and writes a TECPLOT ASCII file.
  484. fem1d, a program which applies the finite element method (FEM), using piecewise linear basis functions, to a linear two point boundary value problem (BVP) in 1D;
  485. fem1d_adaptive, a program 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;
  486. fem1d_bvp_linear, a program 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.
  487. fem1d_bvp_quadratic, a program 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.
  488. fem1d_display, a program which reads three files defining a 1D arbitrary degree basis function associated with the finite element method (FEM), and displays a plot.
  489. fem1d_function_10_display, a program which reads three files defining a 1D piecewise linear finite element method (FEM) function and displays a plot.
  490. fem1d_heat_explicit, a program which uses the finite element method (FEM) and explicit time stepping to solve the time dependent heat equation in 1D.
  491. fem1d_heat_implicit, a program which uses the finite element method (FEM) and implicit time stepping to solve the time dependent heat equation in 1D.
  492. fem1d_heat_steady, a program which implements the finite element method (FEM) for the steady (time independent) 1D heat equation;
  493. fem1d_lagrange, a library 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.
  494. fem1d_nonlinear, a program which applies the finite element method (FEM), with piecewise linear basis functions, to a nonlinear two point boundary value problem (BVP) in 1D;
  495. fem1d_pack, a library which contains utilities for 1D finite element method (FEM) calculations.
  496. fem1d_pmethod, a program which applies the p-method version of the finite element method (FEM) to a linear two point boundary value problem (BVP) in 1D;
  497. fem1d_project, a program 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.
  498. fem1d_sample, a program which samples a scalar or vector finite element function of one variable, defined by FEM files, returning interpolated values at the sample points.
  499. fem1d_spectral_numeric, a program which applies the spectral finite element method (FEM) to solve the problem u'' = - pi^2 sin(x) over [-1,+1] with zero boundary conditions, using as basis elements the functions x^n*(x-1)*(x+1), and carrying out the integration numerically, using MATLAB's quad() function, by Miro Stoyanov.
  500. fem1d_spectral_symbolic, a program which applies the spectral finite element method (FEM) to solve the problem u'' = - pi^2 sin(x) over [-1,+1] with zero boundary conditions, using as basis elements the functions x^n*(x-1)*(x+1), and carrying out the integration using MATLAB's symbolic toolbox, by Miro Stoyanov.
  501. fem2d_bvp_linear, a program which applies the finite element method (FEM), with piecewise bilinear elements, to a 2D boundary value problem (BVP) in a rectangle, and compares the computed and exact solutions with the L2 and seminorm errors.
  502. fem2d_bvp_quadratic, a program 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.
  503. fem2d_bvp_serene, a program 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.
  504. fem2d_heat, a program which applies the finite element method (FEM) to the time dependent heat equation on an arbitrary triangulated region in 2D;
  505. fem2d_heat_rectangle, a program which applies the finite element method (FEM) for the time-dependent heat equation on a triangulated square in 2D;
  506. fem2d_heat_sparse, a program which applies the finite element method (FEM) to the heat equation on an arbitrary triangulated region in 2D, using MATLAB's sparse matrix features;
  507. fem2d_heat_sparse_square, a library which defines the geometry of a square region, as well as boundary and initial conditions for a given heat problem, so that fem2d_heat_sparse can be called for a solution.
  508. fem2d_heat_square, a library which defines the geometry of a square region, as well as boundary and initial conditions for a given heat problem, so that fem2d_heat can be called for a solution.
  509. fem2d_mesh_display, a program which reads a FEM model of a 2D mesh of elements of any uniform order and displays a plot of the elements and nodes, with optional numbering.
  510. fem2d_pack, a library which performs simple 2D finite element method (FEM) computations;
  511. fem2d_poisson_rectangle, a program which solves the 2D Poisson equation on a rectangle, using the finite element method (FEM), and piecewise quadratic triangular elements.
  512. fem2d_poisson_rectangle_linear, a program which solves the 2D Poisson equation on a rectangle, using the finite element method (FEM), and piecewise linear triangular elements.
  513. fem2d_poisson_sparse, a program which uses the finite element method to solve Poisson's equation on an arbitrary triangulated region in 2D; This is a version of fem2d_poisson which replaces the banded storage and direct solver by a sparse storage format.
  514. fem2d_poisson_sparse_baffle, a library which defines the geometry of a rectangular channel with 13 baffles, as well as boundary conditions for a given Poisson problem, and is called by fem2d_poisson_sparse as part of a solution procedure.
  515. fem2d_poisson_sparse_ell, a library which defines the geometry of an L-shaped region, as well as boundary conditions for a given Poisson problem, and is called by fem2d_poisson_sparse as part of a solution procedure.
  516. fem2d_poisson_sparse_lake, a library which defines the geometry of a lake-shaped region, as well as boundary conditions for a given Poisson problem, and is called by fem2d_poisson_sparse as part of a solution procedure.
  517. fem2d_project, a program which projects a function f(x,y), given as data, into a given finite element space of piecewise linear triangular elements.
  518. fem2d_project_function, a program which projects a function f(x,y), given as a formula, into a given finite element space of piecewise linear triangular elements.
  519. fem2d_sample, a program which samples a finite element function, defined by FEM files, (three text files describing the nodes, triangles, and coefficients); at arbitrary points.
  520. fem2d_scalar_display, a program which reads information about nodes, elements and nodal values for a 2D finite element method (FEM) and creates a surface plot of U(X,Y), using the MATLAB graphics system.
  521. fem2d_scalar_display_brief, a program which reads information about nodes, elements and nodal values for a 2D finite element method (FEM) and creates a surface plot of U(X,Y), using the MATLAB graphics system, in 5 lines of code.
  522. fem2d_scalar_display_gpl, a program which reads information about nodes, elements and nodal values for a 2D finite element method (FEM) and creates a GPL file describing a surface plot of U(X,Y), which can be displayed by GNUPLOT.
  523. fem2d_stokes_sparse, a program which is a finite element code for the steady incompressible Stokes equations on an arbitrary triangulated region in 2D, using MATLAB's sparse matrix features;
  524. fem2d_stokes_sparse_big_cavity, a library which contains the user-supplied routines necessary to run fem2d_stokes_sparse() on the big cavity problem.
  525. fem2d_stokes_sparse_cavity, a library which contains the user-supplied routines necessary to run fem2d_stokes_sparse on the cavity problem.
  526. fem2d_stokes_sparse_channel, a library which contains the user-supplied routines necessary to run fem2d_stokes_sparse on the channel problem.
  527. fem2d_stokes_sparse_inout, a library which contains the user-supplied routines necessary to run fem2d_stokes_sparse on the inout problem.
  528. fem2d_stokes_sparse_spiral, a library which contains the user-supplied routines necessary to run fem2d_stokes_sparse on the spiral problem.
  529. fem3d_pack, a library which contains utilities for 3D finite element method (FEM) calculations.
  530. fem3d_project, a program which projects a function f(x,y,z), given as a data, into a given space of piecewise linear tetrahedral elements for use in the finite element method (FEM).
  531. fem3d_sample, a program library which evaluates a function defined on a 3D tetrahedral mesh as part of the finite element method (FEM).
  532. fern, a program which uses MATLAB graphics to compute and display the Barnsley fractal fern.
  533. feynman_kac_1d, a program 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.
  534. feynman_kac_2d, a program 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.
  535. feynman_kac_3d, a program 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.
  536. fft_serial, a program which computes a Fast Fourier Transform (FFT), and is intended as a starting point for implementing a parallel version.
  537. fibonacci_spiral, a program which displays points on a Fibonacci spiral, suggesting the arrangement of seeds in a sunflower, for instance.
  538. file_increment, a program which makes a copy of a file containing an integer array, after incrementing each entry by a given value.
  539. file_name_sequence, a program which demonstrates ways to generate a sequence of filenames, which can be useful when generating a sequence of still snapshots to be animated later.
  540. files_multiple, a program which demonstrates how a program can open multiple output files at one time, and write data to any one specific file it chooses.
  541. filon, a library which can approximate integrals in which the integrand includes an oscillatory factor of sin(k*x) or cos(k*x).
  542. filum, a library which handles files and filenames;
  543. fire_serial, a program 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.
  544. flame_ode, a library which considers an ordinary differential equation (ODE) which models the growth of a ball of flame in a combustion process.
  545. florida_cvt_geo, programs which explore the creation of a centroidal Voronoi Tessellation (CVT) of the state of Florida, based solely on geometric considerations.
  546. florida_cvt_pop, programs which explore the creation of a centroidal Voronoi Tessellation (CVT) of the state of Florida, based on population considerations.
  547. floyd, a library which implements Floyd's algorithm for finding the shortest distance between pairs of nodes on a directed graph.
  548. fmincon_test, a MATLAB program which calls fmincon() from MATLAB's Optimization Toolbox, which seeks the minimizer of a scalar function of multiple variables, within a region specified by linear constraints and bounds.
  549. fn, a library which evaluates elementary and special functions using Chebyshev polynomials; functions include Airy, Bessel I, J, K and Y, beta, confluent hypergeometric, error, gamma, log gamma, Pochhammer, Spence; integrals include hyperbolic cosine, cosine, Dawson, exponential, logarithmic, hyperbolic sine, sine; by Wayne Fullerton.
  550. freefem++_msh_io, a library which can read and write files used by the FreeFem++ finite element program to store mesh information.
  551. gamblers_ruin_simulation, a program which simulates the game of gambler's ruin.
  552. gauss_seidel, a program which implements the Gauss-Seidel iteration for linear systems.
  553. gauss_seidel_poisson_1d, a program which demonstrates how the linear system for a discretized version of the steady 1D Poisson equation can be solved by the Gauss-Seidel iteration.
  554. gegenbauer_cc, a library which computes the Gegenbauer weighted integral of a function f(x) using a Clenshaw-Curtis approach.
  555. gegenbauer_exactness, a program which tests the polynomial exactness of Gauss-Gegenbauer quadrature rules.
  556. gegenbauer_polynomial, a library which evaluates the Gegenbauer polynomial and associated functions.
  557. gegenbauer_rule, a program which computes and writes out a Gauss-Gegenbauer quadrature rule of given order.
  558. gen_hermite_rule, a program which computes and writes out a generalized Gauss-Hermite quadrature rule of given order and parameter value.
  559. gen_laguerre_rule, a program which computes and writes out a generalized Gauss-Laguerre quadrature rule of given order and parameter value.
  560. geometry, a library which performs geometric calculations in 2, 3 and M dimensional space, including the computation of angles, areas, containment, distances, intersections, lengths, and volumes.
  561. gl_display, a program which displays the points used in a 2D Gauss-Legendre quadrature rule;
  562. gmsh_io, a library 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).
  563. gmsh_to_fem, a program 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.
  564. gnuplot_test, programs which illustrate how a program can write data and command files so that gnuplot can create plots of the program results.
  565. gpl_display, a library which tries to read the data in a typical gnuplot GPL file, and display it in a more attractive way than gnuplot is capable of.
  566. graph_representation, a library which can express the representation of an abstract mathematical graph in several ways.
  567. graphics_examples, programs which illustrate how various kinds of data can be displayed and analyzed graphically.
  568. gray_code_display, a program which computes the Hamming distance tables for both the binary and Gray codes, and displays 3D plots that illustrate how the Gray code does a better job of providing nearby representations for nearby numbers.
  569. grf_display, a program which reads a GRF file defining a mathematical graph and displays it in the MATLAB graphics window.
  570. grf_io, a library which reads or writes a GRF file;
  571. grid, a library which randomly selects N distinct points from a uniform grid in the unit hypercube in M-dimensional space.
  572. grid_display, a program which reads a file of points on a grid or sparse grid, displays the grid and saves the image in a png file;
  573. gridlines, a library which gives the user more control over drawing gridlines on a graph than the built in "grid on" command.
  574. grids_display, a program which reads two files of grids or sparse grids, displaying the first with hollow blue dots, the second with solid red dots.
  575. gurobi_solution_read, a program which reads a file created by the optimization package GUROBI, representing the solution of a polyomino tiling problem, and writes out a simple ASCII file that can be read by load().
  576. haar, a library which computes the Haar transform of data.
  577. halton, a library which computes elements of a Halton Quasi Monte Carlo (QMC) sequence, using a simple interface.
  578. halton_advanced, a library which calculates the Halton M dimensional Quasi Mont Carlo (QMC) sequence, using an advanced interface with many input quantities.
  579. halton_dataset, a program which creates N elements of an M dimensional Halton sequence and writes them to a file.
  580. hammersley, a library which computes elements of a Hammersley Quasi Monte Carlo (QMC) sequence, using a simple interface.
  581. hammersley_advanced, a library which computes the Hammersley M dimensional Quasi Mont Carlo (QMC) sequence using an advanced interface with many input options;
  582. hammersley_dataset, a program which creates N elements of an M dimensional Hammersley Quasi Monte Carlo (QMC) sequence and writes them to a file.
  583. hamming, a MATLAB library which implements some simple versions of Hamming codes which can detect and correct errors in data.
  584. hand_area, a program which estimates the area of a curve which outlines a person's hand.
  585. hand_data, programs which carry out some numerical exercises based on data that came from tracing several points on a person's hand.
  586. hankel_cholesky, a library which computes the upper Cholesky factor R of a nonnegative definite symmetric H matrix so that H = R' * R.
  587. hankel_pds, a library which can compute a lower triangular matrix L which is the Cholesky factor of a positive definite (symmetric) Hankel matrix H, that is, H = L * L'.
  588. hb_io, a library which reads and writes files in the Harwell Boeing (HB) sparse matrix format;
  589. hb_to_mm, a program which converts a sparse matrix stored in a Harwell Boeing (HB) file to Matrix Market (MM) format;
  590. hb_to_msm, a program which converts a sparse matrix stored in a Harwell Boeing (HB) file to MATLAB sparse matrix format;
  591. hb_to_st, a program which reads a sparse matrix in a Harwell Boeing (HB) file and writes an equivalent Sparse Triplet (ST) file.
  592. hcell_flow_display, a program which plots the physical data, pressures or velocities, from a run of the hcell program;
  593. heat_oned, a program which solves the time-dependent 1D heat equation, using the finite element method in space, and the backward Euler method in time, by Jeff Borggaard.
  594. heated_plate, a program which solves the steady state heat equation in a 2D rectangular region, and is intended as a starting point for a parallel version.
  595. hello, a program which prints out "Hello, world!".
  596. hermite, a library which computes the Hermite interpolant, a polynomial that matches function values and derivatives.
  597. hermite_cubic, a library 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.
  598. hermite_exactness, a program which tests the polynomial exactness of Gauss-Hermite quadrature rules to estimate the integral of a function with density exp(-x^2) over the interval (-oo,+oo).
  599. hermite_polynomial, a library which evaluates the physicist's Hermite polynomial, the probabilist's Hermite polynomial, the Hermite function, and related functions.
  600. hermite_product_display, a program which displays an image of a function created by the Cartesian product of two Hermite polynomials, such as f(x,y) = h(3,x) * h(1,y).
  601. hermite_product_polynomial, a library which defines Hermite product polynomials, creating a multivariate polynomial as the product of univariate Hermite polynomials.
  602. hermite_rule, a program which computes and writes out a Gauss-Hermite quadrature rule to estimate the integral of a function with density exp(-x^2) over the interval (-oo,+oo).
  603. hermite_test_int, a library which defines test integrands for Hermite integrals with density exp(-x^2) over the interval (-oo,+oo).
  604. high_card_simulation, a program 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.
  605. hilbert_curve, a library which computes the sequence of discrete Hilbert curves whose limit is a space-filling curve.
  606. hilbert_curve_display, a library which can plot a Hilbert curve of given order.
  607. histogram_data_2d_sample, a program 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.
  608. histogram_discrete, a library which tries to make a histogram of data without using bins.
  609. histogram_display, a program which makes a bar plot of a set of data stored as columns in a file; the first column is the X values, and all the other columns are Y values to be shown as a stack of bars;
  610. histogram_pdf_sample, a library which demonstrates how sampling can be done by starting with the formula for a PDF, creating a histogram, constructing a histogram for the CDF, and then sampling.
  611. histogram_pdf_2d_sample, a library which demonstrates how uniform sampling of a 2D region with respect to some known Probability Density Function (PDF) can be approximated by decomposing the region into rectangles, approximating the PDF by a piecewise constant function, constructing a histogram for the CDF, and then sampling.
  612. histogramize, a program which takes a vector of data and organizes it into a histogram of a given number of bins with given width and range, which can be displayed as a bar chart.
  613. hyperball_distance, a library which considers the problem of describing the typical value of the distance between a pair of points randomly selected in the unit hyperball in M dimensions.
  614. hyperball_integrals, a library which returns the exact value of the integral of any monomial over the interior of the unit hyperball in M dimensions.
  615. hyperball_monte_carlo, a library which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit ball in M dimensions;
  616. hyperball_volume_monte_carlo, a program which applies a Monte Carlo method to estimate the volume of the interior of the unit ball in M dimensions;
  617. hypercube_exactness, a program which tests the polynomial exactness of a quadrature rule over the interior of the unit hypercube in M dimensions.
  618. hypercube_grid, a library which computes a grid of points over the interior of a hypercube in M dimensions.
  619. hypercube_integrals, a library which returns the exact value of the integral of any monomial over the interior of the unit hypercube in M dimensions.
  620. hypercube_monte_carlo, a library which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit hypercube in M dimensions.
  621. hypersphere_distance, a library which considers the problem of describing the typical value of the distance between a pair of points randomly selected on the unit hypersphere in M dimensions.
  622. hypersphere_integrals, a library which returns the exact value of the integral of any monomial over the surface of the unit hypersphere in M dimensions.
  623. hypersphere_monte_carlo, a library which applies a Monte Carlo method to estimate the integral of a function on the surface of the unit sphere in M dimensions;
  624. hypersphere_properties, a library 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.
  625. hypersphere_surface, a library which illustrates a procedure for estimating the location of a hypersurface in M dimensional space defined by a characteristic function or a signed function.
  626. i4lib, a library which contains many utility routines, using single precision integer (I4) arithmetic.
  627. ihs, a library which generates the Improved Hypercube Sampling (IHS) M dimensional Quasi Mont Carlo (QMC) sequence;
  628. ihs_dataset, a program which creates an Improved Hypercube Sampling (IHS) dataset and writes it to a file;
  629. image_boundary, a library which reports the pixels which form the boundary between the black and white regions of a simple image.
  630. image_components, a library which seeks the connected nonzero or nonblack components of an image or an integer array.
  631. image_contrast, programs which applies image processing techniques to increase the contrast in an image.
  632. image_decimate, a library which drops the even rows and columns from an image.
  633. image_denoise, a library which applies simple filtering operations to a noisy image.
  634. image_diffuse, a library which uses diffusion to smooth out an image.
  635. image_double, a library which doubles the height and width of an image by repeating each row and column.
  636. image_edge, a library which demonstrates a simple procedure for edge detection in images.
  637. image_match_genetic, a program which tries to match a 256x256 JPEG image by blending 32 colored rectangles, using ideas from genetic algorithms, based on an program by Nick Berry.
  638. image_noise, programs which add noise to an image.
  639. image_normalize, a MATLAB program which reads image data from a file, converts it (if necessary) to grayscale, resizes it to H pixels by W pixels.
  640. image_normalize_test
  641. image_quantization, a library which demonstrates how the KMEANS algorithm can be used to reduce the number of colors or shades of gray in an image.
  642. image_rgb_to_gray, programs which makes a grayscale version of an RGB image.
  643. image_threshold, programs which make a black and white version of a grayscale image by setting all pixels below or above a threshold value to black or white.
  644. imshow_numeric, a program which accepts a numeric 2D array and displays it as a grayscale image.
  645. index, a library which converts an M dimensional 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.
  646. inout_flow_display, a library which displays a single velocity field solution for the inout cell flow;
  647. inout_flow_movie, a library which creates an animation of the velocity solutions for the inout cell flow;
  648. int_exactness_chebyshev1, a program which tests the polynomial exactness of Gauss-Chebyshev type 1 quadrature rules.
  649. int_exactness_chebyshev2, a program which tests the polynomial exactness of Gauss-Chebyshev type 2 quadrature rules.
  650. int_exactness_gen_hermite, a program which tests the polynomial exactness of generalized Gauss-Hermite quadrature rules.
  651. int_exactness_gen_laguerre, a program which tests the polynomial exactness of generalized Gauss-Laguerre quadrature rules.
  652. interp, a library which can be used for parameterizing and interpolating data;
  653. interp_trig, a library which can be used for trigonometric interpolation.
  654. isbn, a library which can determine the check digit for an International Standard Book Number or report whether a given ISBN is valid.
  655. ising_2d_simulation, a program 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.
  656. jacobi, a program which implements the Jacobi iteration for the iterative solution of linear systems.
  657. jacobi_eigenvalue, a library which implements the Jacobi iteration for the iterative determination of the eigenvalues and eigenvectors of a real symmetric matrix.
  658. jacobi_exactness, a program which tests the polynomial exactness of rules for integrals with a Jacobi weight function.
  659. jacobi_poisson_1d, a program which demonstrates how the linear system for a discretized version of the steady 1D Poisson equation can be solved by the Jacobi iteration.
  660. jacobi_polynomial, a library which evaluates the Jacobi polynomial and associated functions.
  661. jacobi_rule, a program which computes and writes out a Gauss-Jacobi quadrature rule of given order.
  662. kmeans, a library which handles the K-Means problem, which organizes a set of N points in M dimensions into K clusters;
  663. kmeans_fast, a library which contains several different algorithms for the K-Means problem, which organizes a set of N points in M dimensions into K clusters, by Charles Elkan.
  664. knapsack_01, a library which uses brute force to solve small versions of the 0/1 knapsack problem;
  665. kronrod, a library which can compute a Gauss and Gauss-Kronrod pair of quadrature rules of arbitrary order, by Robert Piessens, Maria Branders.
  666. l4lib, a library which contains many utility routines, using one byte logical (L4) variables.
  667. lagrange_approx_1d, a library which defines and evaluates the Lagrange polynomial p(x) of degree m which approximates a set of nd data points (x(i),y(i)).
  668. lagrange_basis_display, a library which displays the basis functions associated with a given set of nodes used with the Lagrange interpolation scheme.
  669. lagrange_interp_1d, a library 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).
  670. lagrange_interp_2d, a library 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).
  671. lagrange_interp_nd, a library which defines and evaluates the Lagrange polynomial p(x) which interpolates a set of data depending on an M dimensional argument that was evaluated on a product grid, so that p(x(i)) = z(i).
  672. lagrange_nd, a library which implements several multivariate Lagrange interpolation schemes developed by Tomas Sauer.
  673. laguerre_exactness, a program which tests the polynomial exactness of Gauss-Laguerre quadrature rules for integrating functions with density exp(-x) over [0,+oo).
  674. laguerre_polynomial, a library which evaluates the Laguerre polynomial, the generalized Laguerre polynomials, and the Laguerre function.
  675. laguerre_rule, a program which computes a Gauss-Laguerre quadrature rule of given order, and writes it to a file.
  676. laguerre_test_int, a library which implements test problems for approximate integration over a semi-infinite interval, often carried out using Gauss-Laguerre quadrature.
  677. laplacian, a library 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.
  678. latin_center, a library which computes N points in an M dimensional Latin Center square;
  679. latin_center_dataset, a program which creates a Latin Center Hypercube dataset;
  680. latin_cover, a library which produces N Latin squares which cover an NxN square, or NxN Latin cubes which cover an NxNxN cube.
  681. latin_edge, a library which returns N points in an M dimensional Latin Edge square;
  682. latin_edge_dataset, a program which creates an N-point M dimensional Latin Edge square dataset;
  683. latin_random, a library which returns N points in an M dimensional Latin Random square;
  684. latin_random_dataset, a program which creates a Latin Random Hypercube dataset;
  685. latinize, a program which adjusts N points in M dimensions to form a Latin hypercube;
  686. lattice_rule, a library which returns lattice rules for M dimensional integration;
  687. lcvt, a library which makes a sort of Latinized Centroidal Voronoi Tessellation (LCVT);
  688. lcvt_dataset, a program which creates a Latinized Centroidal Voronoi Tessellation (LCVT) dataset;
  689. least_squares_approx, a library which finds a polynomial approximant to data using the least squares method.
  690. lebesgue, a library 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.
  691. legendre_exactness, a program which tests the monomial exactness of quadrature rules for the Legendre problem of integrating a function with density 1 over the interval [-1,+1].
  692. legendre_polynomial, a library which evaluates the Legendre polynomial and associated functions.
  693. legendre_product_polynomial, a library which defines Legendre product polynomials, creating a multivariate polynomial as the product of univariate Legendre polynomials.
  694. legendre_rule, a program which writes out a Gauss-Legendre quadrature rule of given order.
  695. legendre_rule_fast, a program which uses a fast (order N) algorithm to compute a Gauss-Legendre quadrature rule of given order.
  696. legendre_shifted_polynomial, a library which evaluates the shifted Legendre polynomial, with the domain [0,1].
  697. levels, a library which makes a contour plot, choosing the contour levels using random sampling.
  698. levenshtein, a library which returns the Levenshtein distance between two strings.
  699. life_serial, a program 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.
  700. lights_out, a program which sets up the "Lights Out" game and allows a user to try to solve it.
  701. line_cvt_lloyd, a library 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.
  702. line_distance, a library which considers the problem of describing the typical value of the distance between a pair of points randomly selected in the unit line segment.
  703. line_fekete_rule, a library which estimates the location of N Fekete points, for polynomial interpolation or quadrature, over the interior of a line segment in 1D.
  704. line_felippa_rule, a library which returns Felippa's quadratures rules for approximating integrals over the interior of a line segment in 1D.
  705. line_grid, a library which computes a grid of points over the interior of a line segment in 1D.
  706. line_integrals, a library which returns the exact value of the integral of any monomial over the length of the unit line in 1D.
  707. line_monte_carlo, a library which applies a Monte Carlo method to estimate the integral of a function over the length of the unit line in 1D.
  708. line_ncc_rule, a library which computes a Newton Cotes Closed (NCC) quadrature rule, using equally spaced points, over the interior of a line segment in 1D.
  709. line_nco_rule, a library which computes a Newton Cotes Open (NCO) quadrature rule, using equally spaced points, over the interior of a line segment in 1D.
  710. linpack, a library which solves linear systems for a variety of matrix storage schemes, real or complex arithmetic, and single or double precision. The original version of this library is by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  711. linpack_bench, a program which is the linpack benchmark;
  712. linpack_bench_backslash, a program which is the linpack benchmark, using MATLAB's built-in backslash operator;
  713. linpack_c, a library 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.
  714. linpack_d, a library 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.
  715. linpack_s, a library 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.
  716. linpack_z, a library 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.
  717. linplus_c8, a library which carries out certain linear algebra operations, using complex double precision arithmetic, for matrices in tridiagonal and other formats.
  718. llsq, a library 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 a set of N data points.
  719. lobatto_polynomial, a library which evaluates Lobatto polynomials similar to Legendre polynomials except that they are 0 at both endpoints.
  720. local_min_rc, a library 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.
  721. log_normal, a library which returns quantities related to the log normal Probability Distribution Function (PDF).
  722. log_normal_truncated_ab, a library which returns quantities related to the log normal Probability Distribution Function (PDF) truncated to the interval [A,B].
  723. lorenz_cluster, a library which takes a set of N points on a trajectory of solutions to the Lorenz equations, and applies the K-means algorithm to organize the data into K clusters.
  724. lorenz_ode, a program which approximates solutions to the Lorenz system, creating output files that can be displayed by Gnuplot.
  725. lorenz_simulation, a program which computes and displays solutions of the Lorenz equations for various initial conditions.
  726. luhn, a library which can compute the Luhn check digit for a string, or verify a string, as used for error detection in credit card numbers.
  727. machar, a library which dynamically computes the values of various machine characteristic constants, by William Cody;
  728. machine, a library which returns tabulated values of the constants associated with computer arithmetic;
  729. mandelbrot, a program which generates an image of the Mandelbrot set;
  730. maple_area, a library which takes the list of pixels that form the boundary of the image of a maple leaf within a picture, and uses grid, Monte Carlo, and Quasi Monte Carlo sampling to estimate the area of the leaf.
  731. maple_boundary, a library which reads an image of a maple leaf and extracts the list of pixels that form the boundary.
  732. mario, a program which creates a sort of "needlepoint" image of Mario, as an array of colored squares.
  733. matlab, programs which illustrate the use of MATLAB scripts and M-files;
  734. matlab_calls_c, programs which illustrate how C functions can be written, compiled, and called from MATLAB using the mex facility;
  735. matlab_calls_c++, programs which illustrate how C++ functions can be written, compiled, and called from MATLAB using the mex facility;
  736. matlab_calls_f77, programs which illustrate how FORTRAN77 functions can be written, compiled, and called from MATLAB using the mex facility;
  737. matlab_calls_f90, programs which illustrate how FORTRAN90 functions can be written, compiled, and called from MATLAB using the mex facility;
  738. matlab_commandline, programs which illustrate how MATLAB can be run from the UNIX command line, that is, not with the usual MATLAB command window.
  739. matlab_compiler, programs which illustrate the use of the Matlab compiler, which allows you to run a Matlab application outside the Matlab environment.
  740. matlab_condor, programs which illustrate how MATLAB can be run in batch mode using the condor queueing system.
  741. matlab_graphics, programs which demonstrate a few issues that arise when producing graphic images with MATLAB.
  742. matlab_kmeans, programs which illustrate the use of Matlab's kmeans() function for clustering N sets of M-dimensional data into K clusters.
  743. matlab_map, programs which illustrate the use of MATLAB's mapping toolbox to draw maps of the world, countries, the US, or individual states.
  744. matlab_mistake, programs which illustrate some simple but devious programming mistakes in MATLAB.
  745. matlab_movies, programs which illustrate making movies using MATLAB;
  746. matlab_os, programs which illustrate how the system command can be used to allow MATLAB to issue commands to the computer operating system (UNIX or DOS);
  747. matlab_random, programs which illustrate the use of Matlab's random number generator (RNG) routines.
  748. matlab_return, programs which illustrate that explicitly invoking the return statment can be surprisingly costly;
  749. matlab_surf, MATLAB programs which demonstrate the MATLAB surf() function for displaying a 3D surface of the form Z=F(X,Y).
  750. matrix_exponential, a library which demonstrates some simple approaches to the problem of computing the exponential of a matrix.
  751. md, a program which carries out a molecular dynamics simulation, and is intended as a starting point for implementing a parallel version.
  752. md_fast, a program which carries out a molecular dynamics simulation; it is a version of MD that has been revised to take advantage of MATLAB's vector abilities.
  753. medit_io, a library 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.
  754. medit_to_fem, a program 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.
  755. memory_test, a program which tests the memory available on the computer by declaring and using big vectors.
  756. mesh_bandwidth, a program which returns the geometric bandwidth associated with a mesh of elements of any order and in a space of M dimensions.
  757. mesh_display, a program which plots the nodes and elements of a polygonal mesh, with optional numbering.
  758. mesh_etoe, a program which uses ETOV, the mesh element-to-vertex connectivity, to construct ETOE, the element-to-element connectivity.
  759. mesh_io, a library which reads or writes MESH files defining a finite element mesh.
  760. mesh_vtoe, a program which uses ETOV, the mesh element-to-vertex connectivity, to construct VTOE, the vertex-to-element connectivity.
  761. mesh2d, a library which can automatically create a triangular mesh for a given polygonal region, by Darren Engwirda.
  762. mesh2d_hand, a program which reads in a set of 59 points which outline a human hand, and calls mesh2d(), which is able to create a fine triangular mesh of the region outlined by the points.
  763. mesh2d_to_medit, a program which accepts the nodes and triangles of a mesh created by MESH2D and creates a corresponding file that is in MEDIT format.
  764. mesh2d_write, a program which demonstrates how node and element data from mesh2d can be written to files.
  765. meshfaces, a library which can automatically create a triangular mesh for a region that has been subdivided, by Darren Engwirda.
  766. mex_test, programs which demonstrate the mex compiler, calling lower-level functions written in traditional languages such as C, C++, FORTRAN77 or FORTRAN90.
  767. mgmres, a library which applies the restarted Generalized Minimum Residual (GMRES) algorithm to solve a sparse linear system, using compressed row (CR) or sparse triplet (ST) format, by Lili Ju.
  768. mgs, a library which is a legacy code, which the student is encouraged to study, understand, and document. This example is due to Diane O'Leary.
  769. mittag_leffler_garappa, a library which evaluates the Mittag-Leffler function of one, two, or three parameters, with the Z argument allowed to be complex, by Roberto Garappa.
  770. mittag_leffler_podlubny, a library which evaluates the two-parameter Mittag-Leffler function of real arguments, by Igor Podlubny and Martin Kacenak.
  771. mittag_leffler_zongze, a library which evaluates the Mittag-Leffler function of one or two parameters, with the Z argument allowed to be complex, by Yang Zongze.
  772. mm_io, a library which reads and writes a Matrix Market (MM) Sparse Matrix File;
  773. mm_to_hb, a program which reads a Matrix Market (MM) sparse matrix file and creates a corresponding Harwell Boeing (HB) sparse matrix file.
  774. mm_to_msm, a program which reads a Matrix Market (MM) sparse matrix file and creates a corresponding MATLAB sparse matrix data structure.
  775. mm_to_st, a program which reads a Matrix Market (MM) sparse matrix file and writes a corresponding Sparse Triplet (ST) file.
  776. moc_display, a program which estimates and displays the modulus of continuity function for a given function f(x) over a finite interval [A,B], using N sample values.
  777. monoalphabetic, a library which can apply a monoalphabetic substitution cipher to a string of text.
  778. monomial, a library 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.
  779. monomial_value, a library which evaluates a monomial in M dimensions.
  780. monte_carlo_rule, a program 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.
  781. msm_to_hb, a program which writes a MATLAB sparse matrix to a Harwell Boeing (HB) file;
  782. msm_to_mm, a program which writes a MATLAB sparse matrix to a Matrix Market (MM) file;
  783. msm_to_st, a program which writes a MATLAB sparse matrix to a Sparse Triplet (ST) file;
  784. multigrid_poisson_1d, a library which applies the multigrid method to a discretized version of the 1D Poisson equation.
  785. mxm, a program 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.
  786. naca, a library which can take the parameters of certain NACA airfoils and return the coordinates of a sequence of points that outline the wing shape. The shape can be displayed with MATLAB graphics.
  787. nas, a program which runs the NASA kernel benchmark.
  788. navier_stokes_2d_exact, a library which evaluates an exact solution to the incompressible time-dependent Navier-Stokes equations (NSE) over an arbitrary domain in 2D.
  789. navier_stokes_3d_exact, a library which evaluates an exact solution to the incompressible time-dependent Navier-Stokes equations (NSE) over an arbitrary domain in 3D.
  790. navier_stokes_mesh2d, data files which define meshes for several 2D test problems involving the Navier Stokes equations (NSE) for fluid flow, provided by Leo Rebholz.
  791. navier_stokes_mesh3d, data files which define meshes for several 3D test problems involving the Navier Stokes equations (NSE) for fluid flow, provided by Leo Rebholz.
  792. ncm, programs which accompany Cleve Moler's textbook "Numerical Computing with MATLAB".
  793. nearest_interp_1d, a library which interpolates a set of data using a piecewise constant interpolant defined by the nearest neighbor criterion.
  794. nearest_neighbor, a library which works in a given M dimensional space, seeking, for each point in a set S, the nearest point in a set R, by Richard Brown.
  795. neighbors_to_metis_graph, a program which reads a file describing the neighbor structure of a triangulation or tet mesh, and writes a metis graph file suitable for input to one of the family of programs based on metis.
  796. nelder_mead, a program which implements the Nelder-Mead algorithm for the minimization of a scalar function of several variables, by Jeff Borggaard.
  797. nested_sequence_display, a program which displays a set of nested sequences.
  798. netcdf_test, programs which read and write netcdf files.
  799. newton_interp_1d, a library which finds a polynomial interpolant to data using Newton divided differences.
  800. niederreiter2, a library which computes the Niederreiter M dimensional Quasi Mont Carlo (QMC) sequence, base 2;
  801. niederreiter2_dataset, a program which creates a Niederreiter Quasi Mont Carlo (QMC) dataset with base 2;
  802. nint_exactness_mixed, a program which measures the polynomial exactness of an M dimensional quadrature rule based on a mixture of 1D quadrature rule factors.
  803. nintlib, a library which carries out approximate integration (quadrature) in M dimensions;
  804. normal, a library which implements normal random number generators (RNG) for real and complex arithmetic, for scalars, vectors, and matrices.
  805. normal_dataset, a program which uses a normal random number generator (RNG) to create a dataset.
  806. ns3d_fem, a program which sets up and solves a finite element formulation of the steady incompressible 3D Navier Stokes equations (NSE) on a user-defined geometry, by Jeff Borggaard.
  807. obj_display, a program which displays an OBJ 3D graphics file;
  808. obj_io, a library which reads and writes the data in an OBJ 3D graphics file;
  809. obj_to_tri_surface, a program which reads an OBJ 3D graphics file and extracts the surface mesh data as a TRI_SURFACE dataset.
  810. ode_sweep_serial, a program which computes a grid of solutions to a parameterized system of ordinary differential equations (ODE's).
  811. oned, a library which contains functions useful for 1D finite element calculations, by Jeff Borggaard.
  812. optimal_control_1d, a program which seeks the optimal control function for a one dimensional system which is represented using the finite element formulation;
  813. ornstein_uhlenbeck, a library which approximates solutions of the Ornstein-Uhlenbeck stochastic ordinary differential equation (SODE) using the Euler method, the Euler-Maruyama method, and the Milstein method.
  814. outliers_test
  815. owens, a library which evaluates Owen's T function;
  816. padua, a library which returns the coordinates of the 2D Padua points, as well as interpolation weights or quadrature weights, and images of the points in MATLAB graphics files.
  817. pagerank, a library which illustrates the eigenvalue (power method) and surfer (Markov chain) approaches to ranking web pages.
  818. partition_problem, a library which seeks solutions of the partition problem, splitting a set of integers into two subsets with equal sum.
  819. patterson_rule, a program 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.
  820. pbma_io, a library which reads or writes an ASCII Portable Bit Map (PBM) graphics file;
  821. pce_burgers, a program which defines and solves a version of the time-dependent viscous Burgers equation, with uncertain viscosity, using a polynomial chaos expansion (PCE) in terms of Hermite polynomials, by Gianluca Iaccarino.
  822. pce_legendre, a program which assembles the system matrix of a 2D stochastic partial differential equation (SPDE), using a polynomial chaos expansion (PCE) in terms of Legendre polynomials;
  823. pce_ode_hermite, a program which sets up a scalar stochastic ordinary differential equation (SODE) for exponential decay with an uncertain decay rate, using a polynomial chaos expansion (PCE) in terms of Hermite polynomials.
  824. pdepe_test, programs which illustrate how MATLAB's pdepe() function can be used to solve initial boundary value problems (IBVP's) in one spatial dimension.
  825. pdflib, a library which evaluates Probability Density Functions (PDF's) and produces random samples from them, including beta, binomial, chi, exponential, gamma, inverse chi, inverse gamma, multinomial, normal, scaled inverse chi, and uniform.
  826. peak_movie, a program which creates the pieces of an animation, one frame at a time. Each frame is independently created and saved as a JPEG file.
  827. pendulum_ode, a library which looks at some simple topics involving the linear and nonlinear ordinary differential equations (ODEs) that represent the behavior of a pendulum of length L under a gravitational force of strength G.
  828. pentominoes, a library which provides some utilities for manipulating pentominoes.
  829. peridynamics_1d_steady, a library which solves a 1D steady version of the Poisson equation, using the non-local peridynamics model, by Marta D'Elia.
  830. pgma_io, a library which reads or writes an ASCII Portable Gray Map (PGM) image file;
  831. pic_serial, a program which uses the Particle In Cell (PIC) method to simulate the motion of electrically charged particles past a plate, and is intended as a starting point for implementing a parallel version.
  832. piecewise_linear_product_integral, a library which calculates the exact value of the integral of the product of two piecewise linear functions f(x) and g(x).
  833. pink_noise, a library which computes a pink noise signal obeying a 1/f power law.
  834. plasma_matrix, a library which demonstrates how a large sparse MATLAB matrix can be written to or read from a Harwell-Boeing sparse matrix file.
  835. plinth, a library which carries out tasks associated with the interpolation of data or a function by a hierarchical set of piecewise linear functions.
  836. ply_display, a program which displays a 3D PLY graphics file;
  837. ply_io, a library which reads or writes a PLY file.
  838. ply_to_tri_surface, a program which reads a PLY file and extracts the surface mesh data as a tri_surface dataset.
  839. point_merge, a library which considers N points in M dimensional space, and counts or indexes the unique or tolerably unique items.
  840. poisson_serial, a program which solves the Poisson equation in a rectangle, intended as the starting point for the creation of a parallel version.
  841. poisson_simulation, a library which simulates a Poisson process in which events randomly occur with an average waiting time of Lambda.
  842. polpak, a library which evaluates a variety of mathematical functions, including Chebyshev, Gegenbauer, Hermite, Jacobi, Laguerre, Legendre polynomials, and the Collatz sequence.
  843. polygon_average, a library which demonstrates a process of repeatedly averaging and normalizing the vertices of a polygon, illustrating a property of the power method.
  844. polygon_grid, a library which generates a grid of points over the interior of a polygon in 2D.
  845. polygon_integrals, a library which returns the exact value of the integral of any monomial over the interior of a polygon in 2D.
  846. polygon_monte_carlo, a library which applies a Monte Carlo method to estimate the integral of a function over the interior of a polygon in 2D.
  847. polygon_properties, a library 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.
  848. polygon_triangulate, a library which triangulates a (possibly nonconvex) polygon in 2D, based on a C program by Joseph ORourke;
  849. polygonal_surface_display, a program which displays a surface in 3D described as a set of polygons;
  850. polynomial, a library which adds, multiplies, differentiates, evaluates and prints multivariate polynomials in a space of M dimensions.
  851. polynomials, a library which defines multivariate polynomials over rectangular domains, for which certain information is to be determined, such as the maximum and minimum values.
  852. polyomino_condense, a program which cleans up a matrix that represents a polyomino by setting all nonzero entries to 1, and removing initial and final rows and columns of zeros.
  853. polyomino_embed, a library which is given matrices defining a region R and a polyomino P, and determines the number of possible embeddings of the polyomino into the region, and the translations necessary to achieve them.
  854. polyomino_enumerate, a library which enumerates chiral, fixed and free polyominoes of moderate order.
  855. polyomino_index, a library which is given a matrix defining a polyomino P, and determines a correspondingly shaped matrix which contains an index for each nonzero entry in P.
  856. polyomino_lp_write, a program which writes an LP file describing a (binary) integer programming problem related to the tiling of a region R by copies of polyomino shapes, with possible reflections and rotations.
  857. polyomino_matrixspan, a program which assembles a matrix associated with a polyomino tiling problem.
  858. polyomino_monohedral, a program which is given matrices defining a region R and a polyomino P, and seeks binary solutions x that represent possible tilings of the region R by the polyomino P.
  859. polyomino_monohedral_example_reid, a program which sets up and solves the Reid example of a monohedral polyomino tiling problem, using copies of a single polyomino P to cover a region R.
  860. polyomino_monohedral_matrix, a program which is given matrices defining a region R and a polyomino P, and returns the linear system A*x=b that must be solved for binary solutions x, that represent possible tilings of the region R by the polyomino P.
  861. polyomino_monohedral_tiling_plot, a library which is given matrices defining a region R and a polyomino P, and a vector X, computed by POLYOMINO_MONOHEDRAL, which represents a tiling of R by P, and creates a graphic plot representation of that tiling.
  862. polyomino_monohedral_tiling_print, a library which is given matrices defining a region R and a polyomino P, and a vector X, computed by POLYOMINO_MONOHEDRAL, which represents a tiling of R by P, and prints out a representation of that tiling.
  863. polyomino_monohedral_variants, a program which computes the distinct variants of a polyomino under reflection and 90 degree rotations.
  864. polyomino_multihedral, a library which is given matrices defining a region R and a set of polyominoes P, and seeks binary solutions x that represent possible tilings of the region R by the polyominoes of P.
  865. polyomino_multihedral_example_2x4, a program which sets up and solves a polyomino tiling problem on a 2x4 region R, in which several different polyominoes are to be used in the tiling.
  866. polyomino_multihedral_example_octomino, a program which sets up a problem in which an 8x8 square is to be tiled by 8 distinct octominoes.
  867. polyomino_multihedral_example_pent18x30, a program which sets up a problem in which an 18x30 rectangle is to be tiled by 9 copies of each of the 12 distinct pentominoes, and plots a solution computed by GUROBI.
  868. polyomino_multihedral_example_pentomino, a program which sets up a problem in which an 8x8 square with 2x2 hole is to be tiled by the 12 distinct pentominoes.
  869. polyomino_multihedral_matrix, a library which is given matrices defining a region R and a set of several polyominoes P, and returns the linear system A*x=b that must be solved for binary solutions x, that represent possible tilings of the region R by the polyominoes in P.
  870. polyomino_multihedral_tiling_plot, a library which is given matrices defining a region R and a set of polyominoes P, and a vector X, computed by POLYOMINO_MULTIHEDRAL, which represents a tiling of R by the elements of P, and creates a graphic plot representation of that tiling.
  871. polyomino_multihedral_tiling_print, a library which is given matrices defining a region R and a set of polyominoes P, and a vector X, computed by POLYOMINO_MULTIHEDRAL, which represent a tiling of R by the polyominoes in P. The task is to print out a representation of that tiling.
  872. polyomino_multihedral_variants, a program which computes the distinct variants of one or more polyominoes under reflection and 90 degree rotations.
  873. polyomino_plot, a program which displays a region which has been tiled by polyominos.
  874. polyomino_transform, a program which transforms the matrix representing a polyomino by reflection and rotation.
  875. polyomino_two_by_three, a program which implements a procedure for solving a problem in which a region is to be covered by tiles of two shapes.
  876. polyominoes, a library which defines, solves, and plots a variety of polyomino tiling problems, which are solved by a direct algebraic approach, instead of the more typical brute-force or backtracking methods.
  877. polyominoes_print, a program which prints an array of polyominoes.
  878. power_method, a library which carries out the power method for finding a dominant eigenvalue and its eigenvector.
  879. power_rule, a program which constructs a power rule, that is, a product quadrature rule from identical 1D factor rules.
  880. ppma_io, a library which reads or writes an ASCII Portable Pixel Map (PPM) image file;
  881. praxis, a library which minimizes a scalar function of several variables, without requiring derivative information, by Richard Brent.
  882. predator_prey_ode, a program which solves a time-dependent predator-prey system of ordinary differential equations (ODE's) using MATLAB's ode23() function.
  883. prime_plot a program which displays a box plot of the prime and composite numbers.
  884. prime_serial, a program which counts the number of primes between 1 and N, and is intended as a starting point for a parallel version.
  885. prob, a library which evaluates, samples, inverts, and characterizes a number of Probability Density Functions (PDF's) and Cumulative Density Functions (CDF's), 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.
  886. product_rule, a program which creates an M dimensional quadrature rule from a product of distinct 1d quadrature rules;
  887. profile_test
  888. puzzles, executable programs which solve simple puzzles;
  889. pwc_plot, a library which converts the definition of a piecewise constant function into plottable data.
  890. pwl_approx_1d, a library which approximates a set of data using a piecewise linear function.
  891. pwl_interp_1d, a library which interpolates a set of data using a piecewise linear function.
  892. pwl_interp_2d, a library which evaluates a piecewise linear interpolant to data defined on a regular 2D grid.
  893. pwl_interp_2d_scattered, a library which evaluates a piecewise linear interpolant to data which is available at an irregularly arranged set of points.
  894. pyramid_exactness, a program which investigates the polynomial exactness of a quadrature rule over the interior of the unit pyramid in 3D.
  895. pyramid_felippa_rule, a library which returns Felippa's quadratures rules for approximating integrals over the interior of a pyramid in 3D.
  896. pyramid_grid, a library which computes a grid of points over the interior of the unit pyramid in 3D;
  897. pyramid_integrals, a library which returns the exact value of the integral of any monomial over the interior of the unit pyramid in 3D.
  898. pyramid_monte_carlo, a library which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit pyramid in 3D;
  899. pyramid_rule, a program which computes a quadrature rule over the interior of the unit pyramid in 3D.
  900. qr_solve, a library which computes the linear least squares (LLS) solution of a system A*x=b.
  901. quad_mesh, a library which handles meshes of quadrilaterals over a 2D region;
  902. quad_mesh_order1_display, a program which plots piecewise constant data associated with a mesh of quadrilaterals;
  903. quad_mesh_rcm, a program which computes the Reverse Cuthill-McKee (RCM) reordering for nodes in a mesh of 4-node quadrilaterals.
  904. quad_serial, a program which applies a quadrature rule to estimate an integral, intended as a starting point for parallelization exercises.
  905. quad_surface_display, a program which plots piecewise bilinear data associated with a quad_surface, that is, a 3D surface defined by a quadrilateral mesh;
  906. quad2d_serial, a program which applies a product quadrature rule to estimate an integral over a 2D rectangle, intended as a starting point for parallelization exercises.
  907. quadmom, a library 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).
  908. quadrature_golub_welsch, a library which computes the points and weights of a Gaussian quadrature rule using the Golub-Welsch procedure.
  909. quadrature_least_squares, a library 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.
  910. quadrature_test, a program which reads the definition of an M dimensional quadrature rule from three files, applies the rule to a number of test integrals, and prints the results.
  911. quadrature_test_2d, a program which reads the definition of a 2D quadrature rule from three files, applies the rule to a number of test integrals, and prints the results.
  912. quadrature_weights_vandermonde, a library which computes the weights of a quadrature rule using the Vandermonde matrix, assuming that the points have been specified.
  913. quadrature_weights_vandermonde_2d, a library which computes the weights of a 2D quadrature rule using the Vandermonde matrix, assuming that the points have been specified.
  914. quadrule, a library which defines quadrature rules for approximating an integral;
  915. quadrule_fast, a library which rapidly defines certain quadrature rules for approximating an integral;
  916. quality, a library which measures the dispersion of pointsets in M dimensions;
  917. quaternions, a library which carries out some simple arithmetic operations for quaternions.
  918. r4lib, a library which contains many utility routines, using single precision real (R4) arithmetic.
  919. r8col, a library which contains utility routines for R8COL's, that is, double precision real MxN arrays, 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.
  920. r8ge, a library which contains linear algebra routines for R8GE matrices (real, 64 bit, General format).
  921. r8lib, a library which contains many utility routines, using double precision real (R8) arithmetic.
  922. r8poly, a library which contains a number of utilities for polynomials with R8 coefficients, that is, using double precision or 64 bit real arithmetic.
  923. r8row, a library which contains utility routines for R8ROW's, that is, double precision real MxN arrays, 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.
  924. randlc, a library which implements a random number generator (RNG) used by the NAS Benchmark programs.
  925. random_data, a library which uses a random number generator (RNG) to sample points distributed according to various probability density functions (PDF's), spatial dimensions, and geometries, including the M-dimensional cube, ellipsoid, simplex and sphere.
  926. random_sorted, a library which generates vectors of random values which are already sorted.
  927. random_walk_1d_simulation, a program which simulates a random walk in a 1-dimensional region.
  928. random_walk_2d_avoid_simulation, a program which simulates a self-avoiding random walk in a 2-dimensional region.
  929. random_walk_2d_simulation, a program which simulates a random walk in a 2-dimensional region.
  930. random_walk_3d_simulation, a program which simulates a random walk in a 3-dimensional region.
  931. ranlib, a library which produces random samples from Probability Density Functions (PDF's), including Beta, Chi-square Exponential, F, Gamma, Multivariate normal, Noncentral chi-square, Noncentral F, Univariate normal, random permutations, Real uniform, Binomial, Negative Binomial, Multinomial, Poisson and Integer uniform, by Barry Brown and James Lovato.
  932. rbf_interp_1d, a library which defines and evaluates radial basis function (RBF) interpolants to 1D data.
  933. rbf_interp_2d, a library which defines radial basis function (RBF) interpolants to 2D data.
  934. rbf_interp_nd, a library which defines and evaluates radial basis function (RBF) interpolants to M dimensional data.
  935. rcm, a library which applies the Reverse Cuthill McKee (RCM) algorithm for reordering the nodes of a graph, and reducing the bandwidth of a corresponding sparse matrix;
  936. reactor simulation, a program 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."
  937. readtable a built-in MATLAB function which can read a data file containing data in columns, with some data being numeric and some text. This directory includes a demonstration of the use of readtable();
  938. rejection_sample, a library which demonstrates acceptance/rejection sampling.
  939. ring_data, a library which can create, plot, or save data generated by sampling a number of concentric, possibly overlapping rings.
  940. rk4, a library which applies the fourth order Runge-Kutta (RK) algorithm to estimate the solution of an ordinary differential equation (ODE) at the next time step.
  941. rkf45, a library which applies a Runge-Kutta-Fehlberg (RKF) solver to a system of ordinary differential equations (ODE's);
  942. rnglib, a library which implements a random number generator (RNG) with splitting facilities, allowing multiple independent streams to be computed, by L'Ecuyer and Cote.
  943. root_rc, a library which seeks a solution of a scalar nonlinear equation f(x)=0, using reverse communication (RC), by Gaston Gonnet.
  944. roots_rc, a library which seeks solutions of a system of nonlinear equations, using reverse communication (RC), by Gaston Gonnet.
  945. rot13, a library which can encipher a string using the ROT13 cipher for letters, and the ROT5 cipher for digits.
  946. roulette_simulation, a library which simulates the spinning of a roulette wheel and the evaluation of certain common roulette bets.
  947. row_echelon_integer, a library which carries out the exact computation of the integer row echelon form (IREF) and integer reduced row echelon form (IRREF) of an integer matrix.
  948. rref_test, a program which calls rref() for the reduced row echelon form (RREF) of a matrix, which can be singular or rectangular.
  949. sammon_data, a program which generates six M dimensional datasets for cluster analysis.
  950. sandia_cubature, a library which implements quadrature rules for certain M dimensional regions and weight functions.
  951. sandia_rules, a library which produces a standard 1D Gauss quadrature rule of Chebyshev, Gegenbauer, generalized Hermite, generalized Laguerre, Hermite, Jacobi, Laguerre, and Legendre types.
  952. sandia_sgmgg, a library which explores a generalized construction method for sparse grids.
  953. sandia_sparse, a library which can produce an M dimensional sparse grid, based on a variety of 1D quadrature rules; only isotropic grids are generated, that is, the same rule is used in each dimension, and the same maximum order is used in each dimension.
  954. satisfy, a program which demonstrates, for a particular circuit, an exhaustive search for solutions of the circuit satisfiability problem.
  955. scip_solution_read, a program which reads a file created by the integer programming package SCIP, representing the solution of a polyomino tiling problem, and writes out a simple ASCII file that can be read by load().
  956. sde, a library which illustrates properties of stochastic differential equations (SODE's), and common algorithms for their analysis, by Desmond Higham;
  957. search_serial, a program 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.
  958. sequence_streak_display, a program which displays a streak plot of a numeric sequence;
  959. set_theory, a library which demonstrates MATLAB commands that implement various set theoretic operations.
  960. sftpack, a library which implements the slow Fourier transform (SFT), intended as a teaching tool and comparison with the Fast Fourier Transform (FFT).
  961. sgmga, a library which creates sparse grids based on a mixture of 1D quadrature rules, allowing anisotropic weights for each dimension.
  962. shallow_water_1d, a program which simulates the evolution of a 1D fluid governed by the time-dependent shallow water equations.
  963. shallow_water_1d_display, a program which can display a solution of the shallow water equations in 1D, generally as computed by the program shallow_water_1d.
  964. shallow_water_2d, a program which simulates the evolution of a 2D fluid governed by the time-dependent shallow water equations, by Cleve Moler.
  965. shepard_interp_1d, a library which defines and evaluates Shepard interpolants to 1D data, based on inverse distance weighting.
  966. shepard_interp_2d, a library which defines and evaluates Shepard interpolants to 2D data, based on inverse distance weighting.
  967. shepard_interp_nd, a library which defines and evaluates Shepard interpolants to M dimensional data, based on inverse distance weighting.
  968. shoreline, a program which tries to identify and triangulate the 2D domain over which some function f(x,y) is nonnegative.
  969. shoreline2, a program which tries to identify and triangulate the 2D domain over which some function f(x,y) is approximately zero.
  970. side_by_side_display, a program which demonstrates how to display curves side by side in a 3D plot; the curves might be yearly snowfall data over consecutive years, for instance.
  971. simplex_coordinates, a library which computes the Cartesian coordinates of the vertices of a regular simplex in M dimensions.
  972. simplex_gm_rule, a library 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.
  973. simplex_grid, a library which generates a regular grid of points over the interior of an arbitrary simplex in M dimensions.
  974. simplex_integrals, a library which returns the exact value of the integral of any monomial over the interior of the unit simplex in M dimensions.
  975. simplex_monte_carlo, a library which uses the Monte Carlo method to estimate an integral over the interior of the unit simplex in M dimensions.
  976. sine_transform, a library which demonstrates simple properties of the discrete sine transform (DST).
  977. single_linkage_test
  978. sir, a program which simulates the spread of a disease using the Susceptible/Infected/Recovered (SIR) model.
  979. sir_simulation, a program which simulates the spread of a disease through a hospital room of M by N beds, using the Susceptible/Infected/Recovered (SIR) model.
  980. smolyak_display, a program which displays the exactness diagram for a 2D Smolyak sparse grid, by displaying and summing the exactness diagrams for the component product rules.
  981. snakes_and_ladders, a program which simulates a one-player version of the game of Snakes and Ladders, by Mina Aymin.
  982. snakes_bar, a library which produces bar charts of the count, PDF and CDF estimates for the length of a one-player game of Snakes and Ladders, produced by simulating N games.
  983. snakes_histogram, a library which produces histograms of the count, PDF and CDF estimates for the length of a one-player game of Snakes and Ladders, produced by simulating N games.
  984. snakes_matrix, a program which returns the transition matrix for the game of Snakes and Ladders.
  985. snakes_probability, a program which computes the game length probabilities for the game of Snakes and Ladders, by Desmond Higham and Nicholas Higham.
  986. sobol, a library which generates elements of the Sobol M dimensional Quasi Mont Carlo (QMC) sequence, by Bennett Fox.
  987. sobol_dataset, a program which creates a Sobol M dimensional Quasi Mont Carlo (QMC) dataset;
  988. solve, a library which demonstrates how Gauss elimination can be used to solve a linear system A*x=b.
  989. sor, a library which implements a simple version of the successive over-relaxation (SOR) method for the iteration solution of a linear system of equations.
  990. sort_rc, a library which can sort a list of any kind of objects, using reverse communication (RC).
  991. sort_test, a MATLAB program which calls MATLAB's sort() function, to demonstrate various features.
  992. sparse_count, a library which is for the analysis and creation of sparse grids in which a single family of 1D quadrature rules is used for all spatial dimensions, for various growth rules.
  993. sparse_display, a library 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.
  994. sparse_grid_cc, a library which creates sparse grids based on Clenshaw-Curtis quadrature rules.
  995. sparse_grid_cc_dataset, a program which creates sparse grids based on Clenshaw-Curtis quadrature rules.
  996. sparse_grid_composite, a library which creates sparse grids based on 1D composite rules (currently only of order 1).
  997. sparse_grid_gl, a library which creates sparse grids based on Gauss-Legendre rules.
  998. sparse_grid_gl_dataset, a program which creates a sparse grid dataset based on Gauss-Legendre rules.
  999. sparse_grid_hermite, a library which creates sparse grids based on Gauss-Hermite rules.
  1000. sparse_grid_hermite_dataset, a program which creates a sparse grid dataset based on Gauss-Hermite rules.
  1001. sparse_grid_hw, a library 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.
  1002. sparse_grid_laguerre, a library which creates sparse grids based on Gauss-Laguerre rules.
  1003. sparse_grid_laguerre_dataset, a program which creates a sparse grid dataset based on Gauss-Laguerrre rules.
  1004. sparse_grid_mixed, a library which creates sparse grids based a mixture of 1D factor rules.
  1005. sparse_grid_mixed_dataset, a program which creates a sparse grid dataset based on a mixture of 1D rules.
  1006. sparse_grid_open, a library which creates sparse grids based on one of the following open 1D rules: Fejer 2, Gauss-Patterson, Newton-Cotes-Open.
  1007. sparse_grid_open_dataset, a program which creates a sparse grid dataset based on one of the following open 1D rules: Fejer 2, Gauss-Patterson, Newton-Cotes-Open.
  1008. sparse_grid_total_poly, a library which investigates the efficient approximation of all polynomials up to a given total degree using sparse grids.
  1009. sparse_interp_nd, a library which can be used to define a sparse interpolant to a function f(x) of a M dimensional argument.
  1010. sparse_test, a program which tests MATLAB's sparse() function;
  1011. sphere_cubed_grid, a library which uses the projection of a cube to create grids of points, lines, and quadrilaterals on the surface of the unit sphere in 3D.
  1012. sphere_cvt, a program which carries out the Centroidal Voronoi Tessellation (CVT) iteration on the surface of the unit sphere in 3D.
  1013. sphere_delaunay, a program which computes the Delaunay triangulation of points on the surface of the unit sphere in 3D.
  1014. sphere_distance, a library which considers the problem of describing the typical value of the distance between a pair of points randomly selected on the unit sphere.
  1015. sphere_exactness, a program which tests the polynomial exactness of a quadrature rule on the surface of the unit sphere in 3D.
  1016. sphere_fibonacci_grid, a library which uses a Fibonacci spiral to create a grid of points on the surface of the unit sphere in 3D.
  1017. sphere_grid, a library 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.
  1018. sphere_integrals, a library which returns the exact value of the integral of any monomial over the surface of the unit sphere in 3D.
  1019. sphere_lebedev_rule, a library which computes Lebedev quadrature rules on the surface of the unit sphere in 3D.
  1020. sphere_lebedev_rule_display, a program which reads a file defining a Lebedev quadrature rule on the surface of the unit sphere in 3D and displays the point locations.
  1021. sphere_llq_grid, a library which uses longitudes and latitudes to create grids of points, lines, and quadrilaterals on the surface of the unit sphere in 3D.
  1022. sphere_llt_grid, a library which uses longitudes and latitudes to create grids of points, lines, and triangles on the surface of the unit sphere in 3D.
  1023. sphere_monte_carlo, a library which applies a Monte Carlo method to estimate the integral of a function on the surface of the unit sphere in 3D.
  1024. sphere_quad, a library which uses quadrature to approximate an integral on the surface of the unit sphere in 3D;
  1025. sphere_stereograph, a library 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.
  1026. sphere_stereograph_display, a library which computes and displays the results of several stereographic projections between points on the surface of the unit sphere in 3D and a plane.
  1027. sphere_triangle_monte_carlo, a library 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.
  1028. sphere_triangle_quad, a library which uses quadrature to estimate the integral of a function in a spherical triangle on the surface of the unit sphere in 3D.
  1029. sphere_voronoi, a program which computes the Voronoi diagram of points on the surface of the unit sphere in 3D.
  1030. sphere_xyz_display, a program which reads XYZ information defining points on the surface of the unit sphere in 3D and displays the sphere and the points in the MATLAB 3D graphics window.
  1031. sphere_xyzf_display, a program which reads XYZ information defining point coordinates, and XYZF information defining point indices forming faces, on the surface of the unit sphere in 3D and displays a unit sphere, the points, and the faces, in the MATLAB 3D graphics window.
  1032. spherical_harmonic, a library which evaluates spherical harmonic functions.
  1033. spinterp, a library which carries out piecewise multilinear hierarchical sparse grid interpolation, quadrature and optimization, by Andreas Klimke; an earlier version of this software is ACM TOMS Algorithm 847.
  1034. spinterp_test, programs which demonstrate some simple uses of the spinterp program, which uses sparse grids for interpolation, optimization, and quadrature in higher dimensions.
  1035. spiral_data, a program which computes a velocity vector field that satisfies the continuity equation, writing the data to a file that can be plotted by gnuplot.
  1036. spline, a library which interpolates and approximates via splines;
  1037. spquad, a library which computes the points and weights of a sparse grid quadrature rule for an M dimensional integral, based on the Clenshaw-Curtis quadrature rule, by Greg von Winckel.
  1038. spring_ode, a program 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.
  1039. spring_ode2, a program 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.
  1040. square_arbq_rule, a library 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.
  1041. square_distance, a library which considers the problem of describing the typical value of the distance between a pair of points randomly selected in the unit square.
  1042. square_exactness, a library which investigates the polynomial exactness of quadrature rules for f(x,y) over the interior of a rectangle in 2D.
  1043. square_felippa_rule, a library which returns Felippa's quadratures rules for approximating integrals over the interior of a square in 2D.
  1044. square_grid, a library which computes a grid of points over the interior of a square in 2D.
  1045. square_hex_grid, a library which generates a hexagonal grid of points over the interior of a square in 2D.
  1046. square_integrals, a library which returns the exact value of the integral of any monomial over the interior of the unit square or symmetric unit square in 2D.
  1047. square_minimal_rule, a library which returns "almost minimal" quadrature rules, with exactness up to total degree 55, over the interior of the symmetric square in 2D, by Mattia Festa and Alvise Sommariva.
  1048. square_monte_carlo, a library which applies a Monte Carlo method to estimate the integral of a function over the interior of the unit square in 2D.
  1049. square_symq_rule, a library 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.
  1050. st_io a library which reads and writes sparse linear systems stored in the Sparse Triplet (ST) format.
  1051. st_to_cc, a library which converts sparse matrix data from Sparse Triplet (ST) format to Compressed Column (CC) format;
  1052. st_to_hb, a program which converts a sparse matrix file from the Sparse Triplet (ST) format to Harwell Boeing (HB) format;
  1053. st_to_mm, a program which converts a sparse matrix file from Sparse Triplet (ST) format to Matrix Market (MM) format;
  1054. st_to_msm, a program which reads a Sparse Triplet (ST) file and creates a corresponding MATLAB Sparse Matrix.
  1055. stla_display, a program which displays an ASCII stereolithography (STL) 3D graphics file;
  1056. stla_io, a library which reads and writes an ASCII stereolithography (STL) 3D graphics file;
  1057. stla_to_tri_surface, a program which reads an ASCII stereolithography (STL) 3D graphics file and extracts the surface mesh data as a tri_surface dataset.
  1058. stla_to_tri_surface_fast, a program which is a faster version of stla_to_tri_surface.
  1059. stochastic_diffusion, functions which implement several versions of a stochastic diffusivity coefficient.
  1060. stochastic_gradient_nd_noise, a program which solves an optimization problem involving a functional over a system with stochastic noise.
  1061. stochastic_heat2d, a program which implements a finite difference method (FDM) for the steady (time independent) 2D heat equation, with a stochastic heat diffusivity coefficient.
  1062. stochastic_rk, a library which applies a Runge-Kutta (RK) scheme to approximate the solution of a stochastic ordinary differential equation (SODE).
  1063. stokes_2d_exact, a library which evaluates exact solutions to the incompressible steady Stokes equations over the unit square in 2D.
  1064. string_simulation, a program which simulates the behavior of a vibrating string by solving the corresponding initial boundary value problem (IBVP).
  1065. stroud, a library 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.
  1066. subpak, a library which includes many utility routines;
  1067. subset, a library 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.
  1068. subset_sum, a program which seeks solutions of the subset sum problem.
  1069. subset_sum_serial, a program which seeks solutions of the subset sum problem, intended as a starting point for a parallel computing approach.
  1070. sudoku, a library which handles Sudoku puzzles;
  1071. superlu_test, programs which illustrate how a MATLAB program can call the SUPERLU library, which applies a fast direct solution method to solve sparse linear systems, by James Demmel, John Gilbert, and Xiaoye Li.
  1072. svd_basis, a program which applies the singular value decomposition (SVD) to a collection of data vectors, extracting dominant modes;
  1073. svd_basis_test
  1074. svd_circle, a MATLAB program which analyzes a linear map of the unit circle caused by an arbitrary 2x2 matrix A, using the singular value decomposition.
  1075. svd_circle_test
  1076. svd_faces, a MATLAB library which applies singular value decomposition (SVD) analysis to a set of images.
  1077. svd_faces_test
  1078. svd_fingerprint, a program which reads a file containing a fingerprint image and uses the singular value decomposition (SVD) to compute and display a series of low rank approximations to the image.
  1079. svd_gray, a program which reads a gray scale image, computes the Singular Value Decomposition (SVD), and constructs a series of low rank approximations to the image.
  1080. svd_gray_test
  1081. svd_powers, a MATLAB library which applies singular value decomposition (SVD) analysis to a set of powers x(i)^(j-1).
  1082. svd_powers_test
  1083. svd_snowfall, a program which reads a file containing historical snowfall data and analyzes the data with the Singular Value Decomposition (SVD).
  1084. svd_test, a program which demonstrates the calculation of the singular value decomposition (SVD) and some of its properties;
  1085. svd_truncated_test, a program 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.
  1086. table_delaunay, a program which reads a table file of N points in 2 dimensions and writes out the Delaunay triangulation;
  1087. table_io, a library which reads and writes a simple table file;
  1088. table_latinize, a program which reads a table file of N points in M dimensions, adjusts to form a Latin hypercube;
  1089. table_quality, a program which reads a table file of N points in M dimensions, in the unit hypercube, and estimates the quality of the point dispersion;
  1090. table_voronoi, a program which reads a table file of N points in 2 dimensions, calls geompack to get Delaunay triangulation information, and then determines and prints the Voronoi diagram information;
  1091. task_division, a library 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.
  1092. tcell, a program which solves the time-dependent 2D incompressible Navier Stokes equations (NSE) in a T-shaped region, by Hyung-Chun Lee.
  1093. tcell_flow_display, a library which displays a single velocity field solution for the T cell;
  1094. tcell_flow_movie, a library which creates an animation of the velocity solutions for the T cell;
  1095. tcell_rom, a program which solves a reduced order model of a finite element solution of the Navier Stokes equations (NSE) in a T-Cell flow region, by Hyung-Chun Lee.
  1096. tec_io, a library which reads or writes a tecplot ASCII file containing finite element information;
  1097. tec_to_fem, a program which reads a tecplot ASCII file, extracts the information, and writes a corresponding set of FEM files, three text files describing the finite element model;
  1098. tec_to_vtk, a program which reads a particular tecplot ASCII file containing 80 frames of the movement of a red blood cell, and creates 80 separate VTK unstructured grid files, which can then be read by paraview and animated.
  1099. templates, a library which carries out the iterative solution of linear systems;
  1100. tensor_grid_display, a program which can display the grid points of a tensor product rule used for interpolation or quadrature, in 1D, 2D or 3D.
  1101. test_approx, a library which implements test problems for approximation, provided as a set of (x,y) data.
  1102. test_con, a library which implements test problems for numerical continuation.
  1103. test_eigen, a library which implements test matrices for eigenvalue analysis.
  1104. test_int, a library which implements test problems for approximate integration (quadrature) in one dimension.
  1105. test_int_2d, a library which implements test problems for approximate integration (quadrature) in two dimensions.
  1106. test_int_margin, a library which implements test functions for the task of locating the region for which margin <= f(x), and estimating an integral over that region.
  1107. test_interp, a library which defines test problems for interpolation, provided as a set of (x,y(x)) data.
  1108. test_interp_1d, a library which defines test problems for interpolation of data y(x), which depends on a 1D argument.
  1109. test_interp_2d, a library which defines test problems for interpolation of data z(x,y), which depends on a 2D argument.
  1110. test_interp_nd, a library which defines test problems for interpolation of data z(x), depending on an M dimensional argument.
  1111. test_lls, a library which implements linear least squares (LLS) test problems of the form A*x=b.
  1112. test_mat, a library 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 and Wathen matrix.
  1113. test_matrix_exponential, a library which defines a set of test cases for computing the matrix exponential.
  1114. test_min, a library which implements test problems for minimization of a scalar function of a scalar variable.
  1115. test_nearest, a library which tests the time complexity of various procedures for solving the nearest neighbor problem.
  1116. test_nint, a library which implements test problems for approximate integration (quadrature) in M dimensions.
  1117. test_ode, a library which defines some sample ordinary differential equations (ODE's) for testing initial value problem solvers;
  1118. test_opt, a library which implements test problems for optimization of a scalar function of several variables.
  1119. test_opt_con, a library 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.
  1120. test_optimization, a library which implements test problems for optimization of a scalar function of several variables, as described by Molga and Smutnicki.
  1121. test_triangle_integrals, a library which defines tests involving the integration of an integrand function over some specific triangle, not necessarily the unit triangle.
  1122. test_triangulation, a library which defines test problems for triangulation;
  1123. test_values, a library which returns selected values of some special functions;
  1124. test_values_test
  1125. test_zero, a library which defines some functions f(x) suitable for testing software that solves f(x)=0;
  1126. testpack, a library which defines a set of test integrand functions, by Alan Genz.
  1127. tet_mesh, a library which works with tetrahedral meshes in 3D;
  1128. tet_mesh_boundary, a program which reads information defining a tetrahedral mesh of points in 3D, and determines the triangular faces that form the boundary of the mesh; it writes out files containing the nodes and elements defining this TRI_SURFACE data.
  1129. tet_mesh_display, a program which reads data defining a (small) tetrahedral mesh, and displays a wireframe image of the nodes and edges;
  1130. tet_mesh_l2q, a program which reads information about a 4-node (linear) tetrahedral mesh and creates data defining a corresponding 10-node (quadratic) tetrahedral mesh;
  1131. tet_mesh_q2l, a program which reads information about a 10-node (quadratic) tet mesh and creates data defining a corresponding 4-node (linear) tetrahedral mesh;
  1132. tet_mesh_quad, a program which estimates the integral of a function over a region defined by a tetrahedral mesh.
  1133. tet_mesh_quality, a program which computes various quality measures for a tetrahedral mesh of a set of nodes in 3D;
  1134. tet_mesh_rcm, a program which computes the Reverse Cuthill McKee (RCM) reordering for the nodes of a tetrahedral mesh that uses 4-node or 10-node tetrahedrons;
  1135. tet_mesh_refine, a program which refines a tetrahedral mesh;
  1136. tet_mesh_tet_neighbors, a program which reads information about a tetrahedral mesh and writes out a list of the tetrahedrons adjacent to a given tetrahedron;
  1137. tet_mesh_volumes, a program which computes the volume of each tetrahedron in a tetrahedral mesh;
  1138. tetrahedron_arbq_rule, a library 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.
  1139. tetrahedron_exactness, a program which tests the polynomial exactness of a quadrature rule over the interior of a tetrahedron in 3D.
  1140. tetrahedron_felippa_rule, a library which returns Felippa's quadratures rules for approximating integrals over the interior of a tetrahedron in 3D.
  1141. tetrahedron_grid, a library which computes a grid of points over the interior of a tetrahedron in 3D.
  1142. tetrahedron_integrals, a library which returns the exact value of the integral of any monomial over the interior of the unit tetrahedron in 3D.
  1143. tetrahedron_keast_rule, a library which defines ten quadrature rules, of degree of exactness 0 through 8, over the interior of the tetrahedron in 3D.
  1144. tetrahedron_monte_carlo, a library which uses the Monte Carlo method to estimate an integral over the interior of a general tetrahedron in 3D.
  1145. tetrahedron_ncc_rule, a library which defines Newton-Cotes closed (NCC) quadrature rules over the interior of a tetrahedron in 3D.
  1146. tetrahedron_nco_rule, a library which defines Newton-Cotes open (NCO) quadrature rules over the interior of a tetrahedron in 3D.
  1147. tetrahedron_properties, a program which computes properties, including the centroid, circumsphere, dihedral angles, edge lengths, face angles, face areas, insphere, quality, solid angles, and volume for a tetrahedron in 3D.
  1148. tetrahedron_slice_animate, a program which is given a tetrahedron and a vector, and displays an evenly spaced sequence of planes that intersect the tetrahedron and are normal to the vector.
  1149. tetrahedron_slice_display, a program which determines the intersection between a tetrahedron and a plane and displays the result.
  1150. tetrahedron01_monte_carlo, a library which uses the Monte Carlo method to estimate an integral over the interior of the unit tetrahedron in 3D.
  1151. theodolite, a library which presents the problem of estimating the location of an event which occurs in the sky, atmosphere, or the heavens, using nothing but the reported angle of observation from several stations; a nonlinear least squares (NLS) solver is needed.
  1152. three_body_simulation, a program 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.
  1153. tic_toc_test, programs which test MATLAB's tic and toc functions for wallclock timing.
  1154. timer, programs which illustrate how to time a piece of code;
  1155. timestamp, a library which prints the current YMDHMS date as a timestamp;
  1156. toeplitz_cholesky, a library which computes the Cholesky factorization of a nonnegative definite symmetric Toeplitz matrix.
  1157. toms097, a library 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 97.
  1158. toms112, a library which determines whether a point is contained in a polygon, by Moshe Shimrat. This is a version of ACM TOMS algorithm 112.
  1159. toms178, a library which seeks the minimizer of a scalar function of several variables using the Hooke-Jeeves method, by Arthur Kaupe. This is a version of ACM TOMS algorithm 178.
  1160. toms179, a library which calculates the incomplete Beta ratio, by Oliver Ludwig. This is a version of ACM TOMS algorithm 179.
  1161. toms243, a library which evaluates the logarithm of a complex value, by David Collens. This is a version of ACM TOMS algorithm 243.
  1162. toms243_test
  1163. toms291, a library which approximates the logarithm of the Gamma function. This is a version of ACM TOMS algorithm 291.
  1164. toms443, a library which evaluates Lambert's W function. This is a version of ACM TOMS algorithm 443.
  1165. toms446, a library which manipulates Chebyshev series for interpolation and approximation, by Roger Broucke. This is a version of ACM TOMS algorithm 446.
  1166. toms462, a library which evaluates the upper right tail of the bivariate normal distribution; that is, the probability that normal variables X and Y with correlation R will satisfy H <= X and K <= Y. This is a version of ACM TOMS algorithm 462.
  1167. toms515, a library 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.
  1168. toms577, a library which evaluates Carlson's elliptic integral functions RC, RD, RF and RJ. This is a version of ACM TOMS algorithm 577.
  1169. toms655, a library which computes the weights for interpolatory quadrature rule; this library is commonly called IQPACK, by Sylvan Elhay and Jaroslav Kautsky. This is a version of ACM TOMS algorithm 655.
  1170. toms743, a library which evaluates Lambert's W function. This is a version of ACM TOMS algorithm 743, by Barry, Barry and Culligan-Hensley.
  1171. toms847, a library which carries out piecewise multilinear hierarchical sparse grid interpolation, commonly known as SPINTERP, by Andreas Klimke. This is a version of ACM TOMS Algorithm 847.
  1172. toms866, a library which contains version 2.2 of the Incompressible Flow Iterative Solution Software (IFISS), for solving problems involving the Navier Stokes equations (NSE), by Howard Elman, Alison Ramage, David Silvester. This is a version of ACM TOMS algorithm 866.
  1173. toms886, a library 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.
  1174. traffic_simulation, a program which simulates the cars waiting to get through a traffic light.
  1175. treepack, a library which carries out computations on trees, a simple kind of graph that is minimally connected.
  1176. tri_surface_display, a program which displays a triangulated surface;
  1177. tri_surface_io, a library which reads and writes the 3D graphics information in a tri_surface file;
  1178. tri_surface_to_obj, a program which reads a tri_surface dataset and extracts the surface mesh data as an OBJ file.
  1179. tri_surface_to_ply, a program which converts a tri_surface dataset to a dataset suitable for storage as a PLY file.
  1180. tri_surface_to_stla, a program which reads a tri_surface dataset and extracts the surface mesh data as an ASCII stereolithography (STL) file.
  1181. triangle_analyze, a program which reads a triangle defined in a file, and uses the TRIANGLE_PROPERTIES library to compute angles, area, centroid, circumcircle, edge lengths, incircle, orientation, orthocenter, and quality.
  1182. triangle_display, a program which displays the nodes and elements of a triangulation on the MATLAB graphics screen, assuming the data has been stored in NODE and ELE files by the triangle() program.
  1183. triangle_dunavant_rule, a library which defines Dunavant quadrature rules over the interior of a triangle in 2D.
  1184. triangle_exactness, a program which tests the polynomial exactness of a quadrature rule over the interior of a triangle in 2D.
  1185. triangle_fekete_rule, a library which sets up one of seven Fekete rules for interpolation or quadrature over the interior of a triangle in 2D.
  1186. triangle_felippa_rule, a library which returns Felippa's quadratures rules for approximating integrals over the interior of a triangle in 2D.
  1187. triangle_grid, a library which computes a grid of points over the interior of a triangle in 2D.
  1188. triangle_histogram, a program which computes histograms of data over the interior of a unit triangle in 2D.
  1189. triangle_integrals, a library which returns the exact value of the integral of any polynomial over the interior of an arbitrary triangle in 2D.
  1190. triangle_interpolate, a library which shows how vertex data can be interpolated at any point in the interior of a triangle.
  1191. triangle_io, a library which can read or write some of the files created by Jonathan Shewchuk's triangle program.
  1192. triangle_lyness_rule, a library which returns Lyness-Jespersen quadrature rules over the interior of a triangle in 2D;
  1193. triangle_monte_carlo, a library which uses the Monte Carlo method to estimate an integral over the interior of a general triangle in 2D.
  1194. triangle_ncc_rule, a library which defines Newton-Cotes closed (NCC) quadrature rules over the interior of a triangle in 2D.
  1195. triangle_nco_rule, a library which defines Newton-Cotes open (NCO) quadrature rules over the interior of a triangle in 2D.
  1196. triangle_properties, a program which computes properties, including angles, area, centroid, circumcircle, edge lengths, incircle, orientation, orthocenter, and quality, of a triangle in 2D.
  1197. triangle_svg, a library which uses Scalable Vector Graphics (SVG) to plot a triangle and any number of points, to illustrate quadrature rules and sampling techniques.
  1198. triangle_symq_rule, a library 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.
  1199. triangle_to_fem, a program 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.
  1200. triangle_to_medit, a program 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().
  1201. triangle_to_xml, a program 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.
  1202. triangle_wandzura_rule, a library which returns quadrature rules of exactness 5, 10, 15, 20, 25 and 30 over the interior of the triangle in 2D.
  1203. triangle01_integrals, a library which returns the integral of any monomial over the interior of the unit triangle in 2D.
  1204. triangle01_monte_carlo, a library which uses the Monte Carlo method to estimate an integral over the interior of the unit triangle in 2D.
  1205. triangulate, a program which triangulates a polygonal region, based on a C program by Joseph ORourke;
  1206. triangulate_rectangle, a program which sets up a grid of triangles in a rectangular region.
  1207. triangulation, a library 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.
  1208. triangulation_boundary_edges, a program which reads data defining a triangulation, determines which edges lie on the boundary, organizes them into connected components, and writes this information to a file.
  1209. triangulation_boundary_nodes, a program which reads data defining a triangulation, determines which nodes lie on the boundary, and writes their coordinates to a file;
  1210. triangulation_corner, a program which modifies triangulations in which one or more triangles have more than one boundary edge.
  1211. triangulation_delaunay_discrepancy, a program which measures the amount by which a triangulation fails the local Delaunay test;
  1212. triangulation_display, a program which displays the nodes and elements of a triangulation on the MATLAB graphics screen;
  1213. triangulation_histogram, a program which computes histograms of data over a triangulation.
  1214. triangulation_l2q, a program which reads information about a 3-node (linear) triangulation and creates data defining a corresponding 6-node (quadratic) triangulation;
  1215. triangulation_mask, a program which reads a triangulation and calls a user-supplied routine to consider each triangle for deletion;
  1216. triangulation_node_to_element, a program 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.
  1217. triangulation_order1_display, a program which plots piecewise constant data associated with a triangulation;
  1218. triangulation_order3_contour, a program which plots color contours of a scalar quantity evaluated at the nodes of a 3-node triangle triangulation.
  1219. triangulation_order6_contour, a program which plots color contours of a scalar quantity evaluated at the nodes of a 6-node triangle triangulation.
  1220. triangulation_orient, a program which ensures that the triangles in an order 3 or order 6 triangulation have positive orientation;
  1221. triangulation_plot, a program which plots the nodes and elements of a triangulation as a PostScript file;
  1222. triangulation_q2l, a program which reads information about a 6-node triangulation and creates data defining a corresponding 3-node triangulation;
  1223. triangulation_quad, a program 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.
  1224. triangulation_quality, a program which reads information about a triangulation and computes various quality measures;
  1225. triangulation_rcm, a program which computes the Reverse Cuthill McKee (RCM) reordering for the nodes of a triangulation that uses 3-node or 6-node triangles;
  1226. triangulation_refine, a program which refines a triangulation;
  1227. triangulation_refine_local, a program which refines a triangulation locally; a single triangular element is replaced by four smaller triangles, and neighboring information is updated.
  1228. triangulation_svg, a program which creates an SVG image of a triangulation, which can be displayed by a web browser.
  1229. triangulation_t3_to_t4, a program which reads information about a 3-node T3 triangulation and creates data defining a corresponding 4-node T4 triangulation;
  1230. triangulation_triangle_neighbors, a program which reads data defining a triangulation, finds the three neighbor triangles for each triangle, and writes them to a file;
  1231. truel_simulation, a program which simulates N repetitions of a duel between three players, each of whom has a known firing accuracy.
  1232. truncated_normal, a library 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.
  1233. truncated_normal_rule, a program which computes a quadrature rule for a normal probability density function (PDF), sometimes called a Gaussian distribution, that has been truncated to [A,+oo), (-oo,B] or [A,B].
  1234. truncated_normal_sparse_grid, a program which computes a sparse grid based on a normal probability density function (PDF), also called a Gaussian distribution, that has been truncated to [A,+oo), (-oo,B] or [A,B].
  1235. tsearch, a library which compares several replacements for MATLAB's obsolete tsearch() function, which searched a Delaunay triangulation to find the triangle that encloses a given point.
  1236. tsg, programs which demonstrate the use of the TasmanianSparseGrid (TSG) package, which implements routines for working with sparse grids, to efficiently estimate integrals or compute interpolants of scalar functions of multidimensional arguments, by Miroslav Stoyanov.
  1237. tsp_brute, a program which reads a file of city-to-city distances and solves a (small!) traveling salesperson problem (TSP), using brute force.
  1238. tsp_brute_test
  1239. tsp_descent, a program which reads a file of city-to-city distances, choose an initial tour at random, and then tries some simple variations to quickly find a tour of lower length.
  1240. tsp_greedy, a program which reads a file of city-to-city distances, picks a starting city, and then successively visits the nearest unvisited city.
  1241. tsp_random, a program which reads a file of city-to-city distances, and then randomly samples a number of possible tours, to quickly seek a tour of lower length.
  1242. tumor, a program which demonstrates a model of tumor growth;
  1243. two_body_simulation, a program which simulates the behavior of two bodies, constrained to lie in a plane, moving under the influence of gravity, with one body much more massive than the other.
  1244. ubvec, a library which demonstrates how nonnegative integers can be stored as unsigned binary vectors, and arithmetic can be performed on them.
  1245. unicycle, a library which considers permutations containing a single cycle, sometimes called cyclic permutations.
  1246. uniform, a library which implements a uniform random number generator (RNG) for a variety of arithmetic types.
  1247. uniform_dataset, a program which creates N elements of an M dimensional sequence generated by a uniform random number generator (RNG) and writes them to a file.
  1248. upc, is a library which can compute the check digit associated with a uniform product code (UPC), or it can report whether a 12-digit UPC is actually valid.
  1249. usa_cvt_geo, programs which explore the creation of a centroidal Voronoi Tessellation (CVT) of the continental United States, based solely on geometric considerations.
  1250. van_der_corput, a library which computes elements of the van der Corput 1-dimensional Quasi Mont Carlo (QMC) sequence, using a simple interface.
  1251. van_der_corput_advanced, a library which computes elements of the van der Corput 1-dimensional Quasi Mont Carlo (QMC) sequence, allowing more sophisticated input and control.
  1252. van_der_corput_dataset, a program which creates N elements of a van der Corput sequence and writes them to a file.
  1253. vandermonde, a library which implements the Bjork-Pereyra algorithm for accurate solution of linear systems involving the Vandermonde matrix.
  1254. vandermonde_approx_1d, a library 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.
  1255. vandermonde_approx_2d, a library 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.
  1256. vandermonde_interp_1d, a library which finds a polynomial interpolant to data y(x) of a 1D argument by solving a linear system for the polynomial coefficients involving the Vandermonde matrix.
  1257. vandermonde_interp_2d, a library which finds a polynomial interpolant to data z(x,y) of a 2D argument by solving a linear system for the polynomial coefficients involving the Vandermonde matrix.
  1258. voronoi_city, a program which displays the steps involved in computing the Voronoi diagram of 3 points, which we think of as cities connected by roads.
  1259. voronoi_display, a program which computes the exact Voronoi diagram using geompack, and displays it.
  1260. voronoi_mountains, a program which makes a mountain plot of a Voronoi diagram, that is, a surface plot of the distance from each point to its nearest Voronoi generator.
  1261. voronoi_neighbors, a program which is given a set of points in the plane and determines the Voronoi adjacency structure, that is, which points share an edge of the Voronoi diagram.
  1262. voronoi_plot, a program which estimates the Voronoi neighborhoods of points using sampling, and with a distance based on the L1, L2, LInfinity or arbitrary LP norms;
  1263. vpa_test, a MATLAB program which uses MATLAB's Variable Precision Arithmetic (VPA) feature of the Symbolic Math Toolbox to compute arbitrary precision quantities.
  1264. walker_sample, a library which efficiently samples a discrete probability vector using Walker sampling.
  1265. walsh, a library which implements versions of the Walsh and Haar transforms.
  1266. wathen, a library which compares storage schemes (full, banded, sparse triplet, sparse) and solution strategies (A\x, Linpack, conjugate gradient) for linear systems involving the Wathen matrix, which can arise when solving a problem using the finite element method (FEM).
  1267. wavelet, a library which does some simple wavelet calculations;
  1268. wedge_exactness, a program which investigates the polynomial exactness of a quadrature rule over the interior of the unit wedge in 3D.
  1269. wedge_felippa_rule, a library which returns quadrature rules for approximating integrals over the interior of the unit wedge in 3D.
  1270. wedge_grid, a library which computes a grid of points over the interior of the unit wedge in 3D.
  1271. wedge_integrals, a library which returns the exact value of the integral of any monomial over the interior of the unit wedge in 3D.
  1272. wedge_monte_carlo, a library which uses the Monte Carlo method to estimate an integral over the interior of the unit wedge in 3D.
  1273. weekday, a library which determines the day of the week corresponding to a given date, such as 14 October 1066, Julian calendar, ... which was a Saturday.
  1274. will_you_be_alive, a library which contains the scripts used to carry out the probability simulations described in Paul Nahin's "Will You Be Alive 10 Years From Now?";
  1275. wishart, a library which produces sample matrices from the Wishart or Bartlett distributions, useful for sampling random covariance matrices.
  1276. wtime, a library which returns a reading of the wall clock time in seconds.
  1277. xml2struct, a program which reads a file containing XML data, and produces a corresponding MATLAB struct.
  1278. zero_rc, a library which seeks a solution of a scalar nonlinear equation f(x)=0, using reverse communication (RC), by Richard Brent.
  1279. ziggurat, a library which implements uniform, normal and exponential random number generators (RNG's) using the ziggurat method, by Marsaglia and Tsang.
  1280. zombies, a library which uses a generalized Susceptible-Infected-Recovered (SIR) disease model to simulate a zombie attack, developed by Philip Munz.

Last revised on 04 January 2019.