Skip to content

An official Git Mirror of John Burkardt's great collection of FORTRAN 90 Software

Notifications You must be signed in to change notification settings

go9u/jburkardt-f

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FORTRAN90 Source Codes

  • alscal, a program which performs M-dimensional scaling of data given interdata distances, by Forrest Young and Rostyslaw Lewyckyj.
  • alscal_data_convert a program which reads a data file containing object names and distances between objects, and reformats the data for input to ALSCAL.
  • anyplt a library which was intended as a simple interface to a variety of graphics packages.
  • apportionment a library which demonstrates some of the methods used or proposed for fairly assigning a number of seats in the House of Representatives to each state;
  • arby4 a program which analyzes a 2D fluid flow using the reduced basis method.
  • args a program which reports the command line arguments of a FORTRAN90 program;
  • arpack a library which computes eigenvalues for large matrices, by Richard Lehoucq, Danny Sorensen, Chao Yang;
  • asa005 a library which evaluates the lower tail of the noncentral Student's T distribution, by BE Cooper; this is a FORTRAN90 version of Applied Statistics Algorithm 5;
  • asa006 a library which computes the Cholesky factor of a positive definite symmetric matrix, by Michael Healy; this is a FORTRAN90 version of Applied Statistics Algorithm 6;
  • asa007 a library which computes the inverse of a positive definite symmetric matrix, by Michael Healy; this is a FORTRAN90 version of Applied Statistics Algorithm 7,
  • asa032 a library which evaluates the incomplete Gamma function, by G Bhattacharjee; this is a FORTRAN90 version of Applied Statistics Algorithm 32;
  • asa047 a library which minimizes a scalar function of several variables using the Nelder-Mead algorithm, by R ONeill; this is a FORTRAN90 version of Applied Statistics Algorithm 47;
  • asa058 a library which carries out clustering of data, by David Sparks; this is a FORTRAN90 version of Applied Statistics Algorithm 58;
  • asa063 a library which evaluates the incomplete Beta function, by KL Majumder and G Bhattacharjee; this is a FORTRAN90 version of Applied Statistics Algorithm 63;
  • asa066 a library which computes the cumulative density function (CDF) of the standard normal distribution, by David Hill; this is a FORTRAN90 version of Applied Statistics Algorithm 66;
  • asa076 a library which evaluates Owen's T function, by Young and Minder; this is a FORTRAN90 version of Applied Statistics Algorithm 76;
  • asa091 a library which computes the percentage points of the Chi-square distribution, by Best and Roberts; this is a FORTRAN90 version of Applied Statistics Algorithm 91;
  • asa103 a library which evaluates the digamma or psi function, by Jose Bernardo; this is a FORTRAN90 version of Applied Statistics Algorithm 103;
  • asa109 a library which inverts the incomplete Beta function, by Cran, Martin and Thomas; this is a FORTRAN90 version of Applied Statistics Algorithm 109;
  • asa111 a library which evaluates the percentage points of the normal distribution, by Beasley and Springer; this is a FORTRAN90 version of Applied Statistics Algorithm 111;
  • asa113 a library which clusters data using a transfer and swap algorithm, by Banfield and Bassill; this is a FORTRAN90 version of Applied Statistics Algorithm 113;
  • asa121 a library which evaluates the trigamma function, by BE Schneider; this is a FORTRAN90 version of Applied Statistics Algorithm 121;
  • asa136 a library which implements a clustering algorithm, by Hartigan and Wong; this is a FORTRAN90 version of Applied Statistics Algorithm 136;
  • asa144 a library which randomly generates tables with given row and column sums, by James Boyett; this is a FORTRAN90 version of Applied Statistics Algorithm 144;
  • asa147 a library which evaluates the incomplete Gamma function, by Chi Leung Lau; this is a FORTRAN90 version of Applied Statistics Algorithm 147;
  • 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 FORTRAN90 version of Applied Statistics Algorithm 152;
  • asa159 a library which computes a random table with given row and column sums, by Michael Patefield; this is a FORTRAN90 version of Applied Statistics Algorithm 159;
  • asa172 a library which generates all multidimensional indices in a given range, simulating the behavior of an arbitrary number of nested loops, by OFlaherty and MacKenzie; this is a FORTRAN90 version of Applied Statistics Algorithm 172;
  • asa183 a library which implements a pseudorandom number generator, by Wichman and Hill; this is a FORTRAN90 version of Applied Statistics Algorithm 183;
  • asa189 a library which estimates the parameters of a beta binomial distribution based on a sample of values generated by the distribution, by D Smith; this is a FORTRAN90 version of Applied Statistics Algorithm 189;
  • asa205 a library which generates tables with given row and column sums; this is a FORTRAN90 version of Applied Statistics Algorithm 205;
  • asa226 a library which evaluates the noncentral incomplete Beta function, by Russell Lenth; this is a FORTRAN90 version of Applied Statistics Algorithm 226;
  • asa239 a library which evaluates the incomplete Gamma function, by Shea; this is a FORTRAN90 version of Applied Statistics Algorithm 239;
  • asa241 a library which computes the inverse of the normal cumulative density function (CDF), by Michael Wichura; this is a FORTRAN90 version of Applied Statistics Algorithm 241;
  • asa243 a library which evaluates the lower tail of the noncentral Student's T distribution, by Russell Lenth; this is a FORTRAN90 version of Applied Statistics Algorithm 243;
  • asa245 a library which evaluates the logarithm of the Gamma function, by Allan Mcleod; this is a FORTRAN90 version of Applied Statistics Algorithm 245;
  • asa266 a library which evaluates various properties of the Dirichlet probability density function (PDF); this is a FORTRAN90 version of Applied Statistics Algorithm 266;
  • asa299 a library which computes the lattice points (integer coordinates) in an M-dimensional simplex, by Chasalow and Brand; this is a FORTRAN90 version of Applied Statistics Algorithm 299;
  • asa310 a library which evaluates the noncentral incomplete Beta function, by Chattamvelli and Shanmugam; this is a FORTRAN90 version of Applied Statistics Algorithm 310;
  • ball_grid a library which computes grid points inside a 3D ball.
  • ball_volume_monte_carlo a program which applies a Monte Carlo procedure to estimate the volume of the M-dimensional unit ball;
  • ball_volume_quad a program which applies a quadrature rule to estimate the volume of the unit ball in 6D;
  • band_qr a library which computes the QR factorization of a banded matrix, and can solve related linear systems,
    by Alfredo Remon, Enrique Quintana-Orti, Gregorio Quintana-Orti.
  • bar_plot a library which creates RGB color arrays for data that represents a sort of bar plot (several Y values for each X value).
  • 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.
  • basis_compare a program which compares two sets, each containing N orthonormal M-dimensional vectors, to see if they span the same subspace.
  • bayes_beta a program which uses Bayesian analysis to estimate the parameters in a beta distribution based on a series of sample data.
  • bayes_dice a program which uses Bayesian analysis to adjust a model of loaded dice based on a sequence of experimental observations.
  • bayes_weight a program which uses Bayesian analysis to adjust a model of loaded dice based on a sequence of experimental observations.
  • bdmlib a library which estimates the weights in a Dirichlet mixtured based on sample data;
  • bernstein a library which evaluates the Bernstein polynomials;
  • beta_nc a library which evaluates the cumulative density function (CDF) of the noncentral Beta distribution;
  • bezier_surface a library which reads, writes, prints and manipulates the data that defines a Bezier surface;
  • bins a library which orders, sorts and searches data using bins;
  • bisection_integer a library which seeks an integer solution to the equation F(X)=0, using bisection within a user-supplied change of sign inter+al [A,B].
  • black_scholes a library which implements some simple approaches to the Black-Scholes option valuation theory, by Desmond Higham.
  • blacs a library which sets up the necessary communication for a linear algebra computation on any of a variety of distributed memory clusters.
  • 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.
  • blas1 a library which contains the Basic Linear Algebra Subprograms (BLAS) for level 1 (vector-vector operations), for single and double precision, and for real and complex arithmetic, by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh.
  • blas1_c a library which constitutes the Level 1 Basic Linear Algebra Subprograms (BLAS), using single precision complex arithmetic, by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh.
  • blas1_d a library which constitutes the Level 1 Basic Linear Algebra Subprograms (BLAS), using double precision real arithmetic, by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh.
  • blas1_s a library which constitutes the Level 1 Basic Linear Algebra Subprograms (BLAS), using single precision real arithmetic, by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh.
  • blas1_z a library which constitutes the Level 1 Basic Linear Algebra Subprograms (BLAS), using double precision complex arithmetic, by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh.
  • blas2 a library which constitutes the Level 2 Basic Linear Algebra Subprograms (BLAS);
  • blas3 a library which constitutes the Level 3 Basic Linear Algebra Subprograms (BLAS);
  • blend a library which carries out 1D/2D/3D blending interpolation;
  • 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;
  • 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, by Richard Brent.
  • brownian_motion_simulation a library which simulates Brownian motion in an M-dimensional region.
  • bt_serial a program which is a serial version of the NAS Parallel Benchmark BT (block tridiagonal solver for a 3D PDE).
  • bump a program which computes the steady 2D incompressible Navier-Stokes flow in a channel that includes a variable bump;
  • burgers_solution a library which evaluates an exact solution of the time-dependent 1D viscous Burgers equation.
  • bvls a library which applies least squares methods to solve a linear system for which lower and upper constraints may have been placed on every variable, by Charles Lawson and Richard Hanson.
  • c4lib a library which implements certain elementary functions for single precision complex variables;
  • c8lib a library which implements certain elementary functions for double precision complex variables;
  • calendar_nyt a library which shows the correspondence between dates and the New York Times volume and issue number;
  • calpak a library which makes various calendar calculations;
  • ccn_rule a program which defines a nested Clenshaw Curtis quadrature rule.
  • ccvt_box a program which calculates a Centroidal Voronoi Tessellation (CVT) constrained to a box region, with points projected to the boundary;
  • ccvt_reflect a program which carries out a Centroidal Voronoi Tessellation (CVT) calculation that tries to include points on the boundary as well as the interior, using a natural (nonparametric) technique;
  • 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.
  • cg_serial a program which is a serial version of the NAS Parallel Benchmark CG (conjugate gradient solver).
  • channel a program which uses a finite element model of time independent viscous incompressible flow in a 2D channel;
  • chebyshev a library which computes the Chebyshev interpolant/approximant to a given function over an interval.
  • 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).
  • chebyshev_polynomial a library which evaluates the Chebyshev polynomial and associated functions.
  • chebyshev1_rule a program which computes and writes out a Gauss-Chebyshev type 1 quadrature rule of given order.
  • chebyshev2_rule a program which computes and writes out a Gauss-Chebyshev type 2 quadrature rule of given order.
  • chrpak a library which manipulates characters and strings;
  • circle_arc_grid a program which computes grid points along a circular arc.
  • circle_grid a library which computes grid points inside a circle.
  • circle_test a program which performs a circle-spacing test on sets of points;
  • cities a library which works with city-to-city distance matrices;
  • clenshaw_curtis_rule a program which implements a Clenshaw Curtis quadrature rule;
  • cluster_energy a program which computes the minimal cluster energy of a set of points;
  • cnf_io a library which reads or writes CNF data files, used to store boolean formulas in conjunctive normal form.
  • codepack a library which computes graph codes to compare two graphs;
  • collatz_recursive a library which demonstrates recursive programming by considering the simple Collatz 3n+1 problem.
  • colored_noise a library which generates samples of noise obeying a 1/f^alpha power law.
  • colors a library which converts between various formats for describing colors;
  • combination_lock a program which simulates the process of determining the secret combination of a lock.
  • 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.
  • communicator_mpi a program which creates new communicators involving a subset of initial set of MPI processes in the default communicator MPI_COMM_WORLD.
  • 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.
  • complex_numbers a program which demonstrates some simple features involved in the use of complex numbers in FORTRAN90 programming.
  • condition a library which implements methods of computing or estimating the condition number of a matrix.
  • cordic a library which computes a few special functions using the CORDIC algorithm.
  • correlation a library which contains examples of statistical correlation functions.
  • crystal a program which simulates axisymmetric silicon crystal growth under the Czochralski process;
  • crystal_coordinates a program which generates the spatial coordinates of a slab of points in 3D, using face-centered cubic (FCC) symmetry; these coordinates may be used for initialization of a molecular dynamics program;
  • crystal_plot a program which creates plots of the output of the crystal or crystal_qed programs.
  • crystal_qed a program which seeks to minimize a certain objective function during the growth of a silicon crystal under the Czochralski process.
  • csv_io a library which reads and writes files that use the Comma Separated Value (CSV) format.
  • cubpack a library which estimates the integral of a function (or vector of functions) over a collection of M-dimensional hyperrectangles and simplices, by Alan Genz and Ronald Cools.
  • cvt a library which computes an N point Centroidal Voronoi Tessellation (CVT) in M dimensions;
  • cvt_basis a program which uses discrete Centroidal Voronoi Tessellation (CVT) techniques to produce a small set of basis vectors that are good cluster centers for a large set of data vectors;
  • cvt_basis_flow a program which uses Centroidal Voronoi Tessellation (CVT) techniques to extract a small set of representative behaviors from a large set of solutions of a partial differential equation (PDE) representing fluid flow;
  • cvt_dataset a program which creates a Centroidal Voronoi Tessellation (CVT) dataset;
  • cvt_fixed a library which computes a Centroidal Voronoi Tessellation (CVT), built on top of cvt_size, which allows the user to fix the location of some generators;
  • cvt_fixed2 a library which implements a version of the Centroidal Voronoi Tessellation (CVT) algorithm which allows the user to fix some points;
  • cvt_mod a library which creates a Centroidal Voronoi Tessellation (CVT) dataset on the unit square with no boundaries (a logical torus);
  • cvt_mod_dataset a program which creates a Centroidal Voronoi Tessellation (CVT) dataset on the unit square with no boundaries (a logical torus);
  • cvt_movie5_data a program which creates and saves data of a Centroidal Voronoi Tessellation (CVT) iteration, for use in a movie;
  • cvt_refine a library which investigates how to refine a Centroidal Voronoi Tessellation (CVT) by fixing the current points and adding new ones;
  • cvt_size a library which controls Centroidal Voronoi Tessellation (CVT) cell sizes by specifying a weight function associated with each cell;
  • cvt_tet_mesh a program which constructs a Centroidal Voronoi Tessellation (CVT) for a region specified by the TEST_TET_MESH library;
  • cvt_triangulation a program which constructs a Centroidal Voronoi Tessellation (CVT) for a region specified by the TEST_TRIANGULATION library;
  • cvt_weight a library which tried to control Centroidal Voronoi Tessellation (CVT) cell sizes by specifying a weight function associated with each cell;
  • 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.
  • 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.
  • cyclic_reduction a library which solves a tridiagonal linear system using cyclic reduction;
  • dcdflib a library which evaluates and inverts the cumulative density function (CDF) associated with various probability distributions, by Barry Brown, James Lovato, Kathy Russell.
  • delaunay_lmap_2d a program which reads a set of N points in 2 dimensions and writes out the Delaunay triangulation of the data after it is implicitly transformed by a linear map;
  • diaphony a program which reads a file of N points in M dimensions and computes its diaphony, a measure of point dispersion.
  • dijkstra a program which runs a simple example of Dijkstra's minimum distance algorithm for graphs.
  • dijkstra_openmp a program which uses OpenMP to parallelize a simple example of Dijkstra's minimum distance algorithm for graphs.
  • discrete_pdf_sample 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.
  • dislin programs which illustrate the use of a scientific plotting package;
  • distance_to_position a program which estimates the positions of cities based on a city-to-city distance table.
  • distances a program which reads a multiple alignment file (perhaps preprocessed by read_align) and creates a distance matrix suitable for a principal component analysis by the spacer program.
  • divdif a library which uses divided differences to compute the polynomial interpolant to a given set of data.
  • dlap a library which solves linear systems involving a large sparse matrix, by Anne Greenbaum and Mark Seager.
  • dlap_io a library which reads and writes DLAP sparse matrix files;
  • 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.
  • dqed a library which solves bounded and constrained least squares problems and systems of nonlinear equations, by Richard Hanson and Fred Krogh;
  • dsp_to_st a program which converts a sparse matrix file from DSP format (one-based indices) to Sparse Triplet (ST) format (zero-based indices);
  • duel_simulation a program which simulates N repetitions of a duel between two players, each of whom has a known firing accuracy.
  • dunavant a library which defines Dunavant quadrature rules in a triangle;
  • dutch a library which performs certain tasks in computational geometry;
  • eispack a library which carries out eigenvalue computations. It includes a function to compute the singular value decomposition (SVD) of a rectangular matrix. This library was superseded by LAPACK;
  • ellipse_grid a library which computes grid points inside an ellipse.
  • ellipsoid_grid a library which computes grid points inside a 3D ellipsoid.
  • ep_serial a program which is a serial version of the NAS Embarassingly Parallel (EP) benchmark program.
  • errors programs which illustrate the failure of numerical algorithms;
  • extract a program which extracts one routine from a FORTRAN77 or FORTRAN90 file;
  • f77_cleanup a program which makes some minor improvements to the text of a FORTRAN77 file;
  • f77_to_f90 a program which converts a FORTRAN77 file to FORTRAN90 format, by Michael Metcalfe;
  • f90 programs which illustrate the use of various FORTRAN90 programming features;
  • f90_calls_c programs which illustrates how a FORTRAN90 program can call a C function.
  • f90_calls_c_and_mpi programs which illustrate how a FORTRAN90 program can call a C function while executing under the MPI parallel programming environment.
  • f90_calls_c++ programs which illustrate how a FORTRAN90 program can call a C++ function.
  • f90_calls_c++_and_mpi programs which illustrate how a FORTRAN90 program can call a C++ function while executing under the MPI parallel programming environment.
  • f90_calls_matlab programs which illustrate how a FORTRAN90 program can interact with MATLAB;
  • f90_intrinsics programs which illustrate the use of various FORTRAN90 intrinsic functions and subroutines;
  • f90_random programs which illustrate the use of FORTRAN90's random number generator routines.
  • f90split a program which splits FORTRAN77 or FORTRAN90 source into individual files;
  • fair_dice_simulation a program which simulates N tosses of 2 dice, making a histogram of the results.
  • faure a library which computes elements of the Faure quasirandom M-dimensional sequence;
  • faure_dataset a program which creates a Faure quasirandom dataset;
  • fd_predator_prey a program which solves a pair of predator prey ordinary differential equations (ODE's) using a finite difference approximation.
  • fd1d_burgers_lax a program which applies the finite difference method and the Lax Wendroff method to solve the non-viscous time-dependent Burgers equation in one spatial dimension.
  • fd1d_burgers_leap a program which applies the finite difference method and the leapfrog approach to solve the non-viscous time-dependent Burgers equation in one spatial dimension.
  • fd1d_bvp a program which applies the finite difference method to a two point boundary value problem in one spatial dimension.
  • fd1d_heat_explicit a library which implements a finite difference solution, explicit in time, of the time dependent 1D heat equation;
  • fd1d_heat_implicit a program which implements a finite difference solution, implicit in time, of the time dependent 1D heat equation;
  • fd1d_heat_steady a program which implements a finite difference solution for the steady (time independent) 1D heat equation;
  • fd1d_predator_prey a program which implements a finite difference algorithm for a 1D predator-prey system;
  • fd1d_wave a program which applies the finite difference method to solve the time-dependent wave equation utt = c * uxx in one spatial dimension.
  • fd2d_predator_prey a program which implements a finite difference algorithm for a 2D predator-prey system, by Marcus Garvie.
  • fekete a library which returns Fekete rules for interpolation or quadrature in a triangle;
  • felippa a library which defines quadrature rules for lines, triangles, quadrilaterals, pyramids, wedges, tetrahedrons and hexahedrons.
  • fem_basis a library which can define and evaluate basis functions for any degree in an M-dimensional simplex (1D interval, 2D triangle, 3D tetrahedron, and higher dimensional generalizations.)
  • fem_io a library which reads or writes FEM files, (three text files describing a finite element model);
  • fem_to_mesh a program which reads a pair of FEM files defining node coordinates and elements, and creates a corresponding MESH file.
  • fem_to_tec a program which reads a set of FEM files (node coordinates/elements/node data) of finite element information and writes an equivalent TECPLOT file.
  • fem1d a program which applies the finite element method, using piecewise linear basis functions, to a linear two point boundary value problem in 1D;
  • fem1d_adaptive a program which uses an adaptive mesh when applying the finite element method, with piecewise linear basis functions, to a linear two point boundary value problem in 1D;
  • fem1d_bvp_linear a program which applies the finite element method, with piecewise linear elements, to a two point boundary value problem in one spatial dimension, and compares the computed and exact solutions with the L2 and seminorm errors.
  • fem1d_heat_steady a program which implements the finite element method for the steady (time independent) 1D heat equation;
  • fem1d_nonlinear a program which applies the finite element method, with piecewise linear basis functions, to a nonlinear two point boundary value problem in 1D;
  • fem1d_pack a library which contains utilities for 1D finite element calculations.
  • fem1d_pmethod a program which applies the p-method version of the finite element method to a linear two point boundary value problem in 1D;
  • 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.
  • 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.
  • fem2d_heat a program which uses the finite element method and the backward Euler method to solve the time-dependent heat equation on an arbitrary triangulated region in 2D. (The user supplies some information in some problem-dependent subroutines.)
  • fem2d_heat_rectangle a program which implements the finite element method for the time dependent heat equation on a triangulated square in 2D;
  • 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, and is called by fem2d_heat as part of a solution procedure.
  • fem2d_navier_stokes a program which uses the finite element method to solve the steady incompressible Navier Stokes equations on an arbitrary triangulated region in 2D (The user supplies some information in some problem-dependent subroutines.)
  • fem2d_navier_stokes_cavity a library which contains the user-supplied routines necessary to run fem2d_navier_stokes on the cavity problem.
  • fem2d_navier_stokes_channel a library which contains the user-supplied routines necessary to run fem2d_navier_stokes on the channel problem.
  • fem2d_navier_stokes_inout a library which contains the user-supplied routines necessary to run fem2d_navier_stokes on the inout problem.
  • fem2d_pack a library which implements simple 2D finite element calculations;
  • fem2d_poisson a program which uses the finite element method to solve Poisson's equation on an arbitrary triangulated region in 2D; (The user supplies some information in some problem-dependent subroutines.)
  • fem2d_poisson_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 as part of a solution procedure.
  • fem2d_poisson_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 as part of a solution procedure.
  • fem2d_poisson_rectangle a program which solves the 2D Poisson equation on a rectangle, using the finite element method, and piecewise quadratic triangular elements.
  • fem2d_poisson_rectangle_linear a program which solves the 2D Poisson equation on a rectangle, using the finite element method, and piecewise linear triangular elements.
  • 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 and an iterative solver.)
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • fem2d_stokes a program which uses the finite element method to solve the steady incompressible Stokes equations on an arbitrary triangulated region in 2D; The user supplies some information in some problem-dependent subroutines.
  • fem2d_stokes_cavity a library which contains the user-supplied routines necessary to run fem2d_stokes on the "cavity" problem.
  • fem2d_stokes_channel a library which contains the user-supplied routines necessary to run fem2d_stokes on the "channel" problem.
  • fem2d_stokes_inout a library which contains the user-supplied routines necessary to run fem2d_stokes on the "inout" problem.
  • fem3d_pack a library which contains utilities for 3D finite element calculations.
  • fem3d_project a program which projects a function F(X,Y,Z), given as a data, into a given finite element space of piecewise linear tetrahedral elements.
  • fem3d_sample a program library which evaluates a finite element function defined on a 3D tetrahedral mesh.
  • 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.
  • 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.
  • 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.
  • fft_openmp a program which demonstrates the computation of a Fast Fourier Transform in parallel, using OpenMP.
  • fft_serial a program which computes a Fast Fourier Transform, and is intended as a starting point for implementing an OpenMP parallel version.
  • fftpack5 a library which computes Fast Fourier transforms by Paul Swarztrauber and Dick Valent;
  • fftpack5.1 a library which contains version 5.1 of the FFTPACK Fast Fourier Transform package, using single precision arithmetic, by Paul Swarztrauber and Dick Valent;
  • fftpack5.1d a library which contains version 5.1 of the FFTPACK Fast Fourier Transform package, using double precision arithmetic, by Paul Swarztrauber and Dick Valent;
  • fftw3 programs which illustrate the use of the FFTW3 Fast Fourier Transform package, by Matteo Frigo and Steven Johnson.
  • file_merge a program which merges two sorted files.
  • 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.
  • file_row_reverse a program which makes a copy of a file with the lines listed in reverse order.
  • file_transpose a program which makes a "transposed" copy of a file, in which the I-th word of the J-th line becomes the J-th word of the I-th line.
  • 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.
  • filum a library which performs various operations on files;
  • fixcon a program which converts FORTRAN77 continuation statements to the FORTRAN90 format;
  • flow3 a program which uses the finite element method to solve the steady incompressible Navier Stokes equations in 2D;
  • flow5 a program which uses the finite element method to solve the steady incompressible Navier Stokes equations in 2D;
  • floyd a library which implements Floyd's algorithm for finding the shortest distance between pairs of nodes on a directed graph.
  • fn a library which evaluates elementary and special functions, by Wayne Fullerton.
  • football a program which ranks football teams based on scores;
  • frieze a program which demonstrates how to map a pattern repeatedly into a (distorted) 2D region to create a sort of wallpaper;
  • g95_intrinsics programs which illustrate the use of some of the intrinsic functions included by the GNU G95 compiler, above and beyond those specified in the FORTRAN language standards.
  • g95_quadmath a program which illustrates the use of quadruple precision real arithmetic, as provided on some systems by the G95 compiler for FORTRAN90.
  • gdb an example directory of programs which illustrate the use of the GNU debugger program on a FORTRAN90 program;
  • gegenbauer_rule a program which computes and writes out a Gauss-Gegenbauer quadrature rule of given order.
  • gen_hermite_rule a program which computes and writes out a generalized Gauss-Hermite quadrature rule of given order and parameter value.
  • gen_laguerre_rule a program which computes and writes out a generalized Gauss-Laguerre quadrature rule of given order and parameter value.
  • gene_cluster a program which clusters sets of genetic expression data;
  • geometry a library which performs 2D/3D geometric calculations;
  • geompack a library which determines the Delaunay triangulation of 2D data, by Barry Joe.
  • geompack2 a library which computes the Delaunay triangulation of 2D data, by Barry Joe.
  • geompack3 a library which performs Delaunay triangulation for 3D data, by Barry Joe.
  • getwgt a library which estimates the parameters of a Dirichlet mixture.
  • gfortran programs which investigate the use of the Gnu gfortran compiler with FORTRAN90 code.
  • gfortran_intrinsics a program which illustrates the use of some of the intrinsic functions included by the Gnu gfortran compiler, above and beyond those specified in the FORTRAN language standards.
  • gfortran_quadmath a program which illustrates the use of quadruple precision real arithmetic, as provided on some systems by the Gnu gfortran compiler for FORTRAN90.
  • gm_rule a library which defines Grundmann-Moeller quadrature rules for an M-dimensional simplex.
  • gnufor a library which provides an interface between a FORTRAN90 program and the gnuplot graphics library.
  • gprof programs which illustrate the use of the gprof program performance monitor;
  • grafpack a library which performs calculations on graphs;
  • graph_paper a library which makes PostScript (PS) graph paper;
  • graphics_examples programs which illustrate how various kinds of data can be displayed and analyzed graphically.
  • grf_io a library which reads or writes a GRF file which displays a mathematical graph;
  • grf_to_eps a program which converts a 2D graphics file from GRF format to Encapsulated PostScript (EPS) format;
  • grf_to_xyl a program which converts information describing an abstract graph from GRF to XYL format.
  • grid a library which computes N random points on an M-dimensional uniform grid;
  • grid_dataset a program which creates a uniform grid dataset;
  • haar a library which computes the Haar transform of data.
  • halton a library which computes elements of the Halton M-dimensional quasirandom sequence;
  • halton_dataset a program which creates a Halton quasirandom dataset;
  • hammersley a library which computes elements of the Hammersley M-dimensional quasirandom sequence;
  • hammersley_dataset a program which creates a Hammersley quasirandom dataset;
  • hb_io a library which reads and writes files in the Harwell Boeing (HB) sparse matrix format;
  • hb_to_st a program which reads a sparse matrix in a Harwell Boeing (HB) file and writes an equivalent Sparse Triplet (ST) file.
  • heat_mpi a program which solves the 1D time dependent heat equation using MPI.
  • heated_plate a program which solves the steady state heat equation in a 2D rectangular region, and is intended as a starting point for implementing an OpenMP parallel version.
  • heated_plate_openmp a program which solves the steady (time independent) heat equation in a 2D rectangular region, using OpenMP to run in parallel.
  • heated_plate_workshare a program which solves the steady (time independent) heat equation in a 2D rectangular region, using OpenMP's workshare directive to run in parallel; the results suggest that workshare is not supported by the gfortran and ifort compilers!
  • hello a program which prints out "Hello, world!".
  • hello_mpi a program which prints out "Hello, world!" using MPI for parallel programming.
  • hello_openmp a program which prints out "Hello, world!" within the OpenMP parallel programming environment.
  • hermite a library which computes the Hermite interpolant, a polynomial that matches function values and derivatives.
  • 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.
  • hermite_polynomial a library which evaluates the physicist's Hermite polynomial, the probabilist's Hermite polynomial, the Hermite function, and related functions.
  • hermite_rule a program which computes and writes out a Gauss-Hermite quadrature rule of given order.
  • hex_grid a library which defines a hexagonal grid of points in the unit square.
  • hex_grid_angle a library which defines a hexagonal grid of points in the unit square, with an arbitrary center, angle, and spacing.
  • hex_grid_dataset a program which creates a hexagonal grid dataset, using the hex_grid library;
  • hex_grid_triangulate a program which finds the points on a hex grid that lie inside a given triangulation region.
  • i4lib a library which contains many utility routines, using single precision integer (I4) arithmetic.
  • i8lib a library which contains many utility routines, using double precision integer (I8) arithmetic.
  • ice_io a library which reads or writes ICE grid files stored in netcdf format.
  • ice_to_mesh a program which reads a netcdf file containing an ICE dataset and rewrites the information as a MESH file.
  • ieee_uniform a library which tries to uniformly sample the discrete set of values that represent the legal IEEE real numbers;
  • ihs a library which implements the Improved Distributed Hypercube Sampling method, regarded as a quasirandom M-dimensional sequence;
  • ihs_dataset a program which creates an Improved Distributed Hypercube Sampling dataset;
  • image_components a library which seeks the connected nonzero or nonblack components of an image or integer array.
  • image_denoise a library which applies simple filtering operations to a noisy image.
  • image_edge a library which demonstrates a simple procedure for edge detection in images.
  • include_files a program which reads a FORTRAN90 file with INCLUDE statements, and makes a copy in which the indicated files have been included;
  • index a library which converts a multidimensional vector index to a one-dimensional vector index; it can handle zero and one based indexing schemes, as well as column major and row major conventions.
  • int_exactness a program which tests the polynomial exactness of quadrature rules for a finite interval;
  • int_exactness_chebyshev1 a program which tests the polynomial exactness of Gauss-Chebyshev type 1 quadrature rules.
  • int_exactness_chebyshev2 a program which tests the polynomial exactness of Gauss-Chebyshev type 2 quadrature rules.
  • int_exactness_gegenbauer a program which tests the polynomial exactness of Gauss-Gegenbauer quadrature rules.
  • int_exactness_gen_hermite a program which tests the polynomial exactness of generalized Gauss-Hermite quadrature rules.
  • int_exactness_gen_laguerre a program which tests the polynomial exactness of generalized Gauss-Laguerre quadrature rules.
  • int_exactness_hermite a program which tests the polynomial exactness of Gauss-Hermite quadrature rules.
  • int_exactness_jacobi a program which tests the polynomial exactness of Gauss-Jacobi quadrature rules.
  • int_exactness_laguerre a program which tests the polynomial exactness of Gauss-Laguerre quadrature rules.
  • int_exactness_legendre a program which tests the polynomial exactness of Gauss-Legendre quadrature rules.
  • integral_test a program which tests the use of quasirandom points (or any set of points) to approximate an M-dimensional integral;
  • interp a library which can be used for parameterizing and interpolating data;
  • intlib a library which carries out approximate integration (quadrature) in one dimension;
  • 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.
  • ising_3d_simulation a program which simulates the evolution of a 3D array of positive and negative charges, each of which is likely to flip to be in agreement with neighbors.
  • ivread a program which carries out 3D graphic file conversion;
  • jacobi_polynomial a library which evaluates the Jacobi polynomial and associated functions.
  • jacobi_rule a program which computes and writes out a Gauss-Jacobi quadrature rule of given order.
  • jbar a program which reads a data file and creates a bar graph.
  • keast a library which defines Keast quadrature rules in a tetrahedron;
  • kmeans a library which handles the K-Means problem, which organizes a set of N points in M dimensions into K clusters;
  • kmedian a program which handles the K-Median problem;
  • kronrod a library which can compute a Gauss and Gauss-Kronrod pair of quadrature rules of arbitrary order, by Robert Piessens, Maria Branders.
  • 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)).
  • 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).
  • 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).
  • lagrange_interp_nd a library which defines and evaluates the Lagrange polynomial p(x) which interpolates a set of data depending on a multidimensional argument that was evaluated on a product grid, so that p(x(i)) = z(i).
  • laguerre_polynomial a library which evaluates the Laguerre polynomial, the generalized Laguerre polynomials, and the Laguerre function.
  • laguerre_rule a program which computes and writes out a Gauss-Laguerre quadrature rule of given order.
  • lambert a library which computes the Lambert quasirandom sequence in 1D, 2D, 3D and 4D.
  • lapack_examples a program which demonstrates the use of the LAPACK linear algebra library.
  • lapack_examples_osx a program which demonstrates the use of the precompiled LAPACK linear algebra library available on Macintosh OSX systems, using the "-framework veclib" compiler option.
  • latin_center a library which produces N points in an M-dimensional Latin Center Hypercube.
  • latin_center_dataset a program which creates a Latin Center Hypercube dataset;
  • latin_cover a library which produces N Latin squares which cover an NxN square, or NxN Latin cubes which cover an NxNxN cube.
  • latin_edge a library which produces N points in an M-dimensional Latin Edge Hypercube.
  • latin_edge_dataset a program which creates a Latin Edge Hypercube dataset;
  • latin_random a library which produces N points in an M-dimensional Latin Random Hypercube.
  • latin_random_dataset a program which creates a Latin Random Hypercube dataset;
  • latinize a library which adjusts N points in M dimensions to form a Latin hypercube.
  • lattice_rule a library which returns lattice rules for M-dimensional integration;
  • lau_np a library which implements heuristic algorithms for NP-hard problems.
  • laupack a library which carries out various operations on graphs.
  • lawson a library which contains routines for solving least squares problems and singular value decompositions, by Lawson and Hanson.
  • lcvt a library which creates a sort of Latin Square Centroidal Voronoi Tessellation (CVT);
  • lcvt_dataset a program which creates a Latin Square Centroidal Voronoi Tessellation (CVT) dataset
  • legendre_polynomial a library which evaluates the Legendre polynomial and associated functions.
  • legendre_rule a program which computes and writes out a Gauss-Legendre quadrature rule of given order.
  • legendre_rule_fast a program which uses a fast (order N) algorithm to compute a Gauss-Legendre quadrature rule.
  • linpack_bench a program which carries out the LINPACK benchmark;
  • linpack a library which solves linear systems for a variety of matrix storage schemes, real or complex arithmetic, and single or double precision. It includes a routine for computing the singular value decomposition (SVD) of a rectangular matrix. The original version of this library is by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  • linpack_c a library which factors and solves linear systems using single precision complex arithmetic, by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  • linpack_d a library which factors and solves linear systems using double precision real arithmetic, by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  • linpack_s a library which factors and solves linear systems using single precision real arithmetic, by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  • linpack_z a library which factors and solves linear systems using double precision complex arithmetic, by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
  • linplus a library which factors/solves/multiplies matrices in a variety of storage formats;
  • llsq a library which solves the simple linear least squares problem of finding the formula of a straight line y=a*x+b which minimizes the root-mean-square error to a set of N data points.
  • lyness_rule a library which returns Lyness-Jespersen quadrature rules for the triangle;
  • machar a library which dynamically computes the values of various machine characteristic constants by William Cody;
  • machine a library which returns tabulated values of the constants associated with computer arithmetic;
  • makefiles programs which illustrate the use of makefiles for maintaining a software project;
  • mandelbrot a program which generates an ASCII Portable Pixel Map (PPM) image of the Mandelbrot set;
  • mandelbrot_openmp a program which generates an ASCII Portable Pixel Map (PPM) image of the Mandelbrot fractal set, using OpenMP for parallel execution;
  • mass a program which verifies the computation of the mass matrix for a finite element calculation for a fluid flow problem;
  • matman a program which manipulates matrices;
  • matmul a program which carries out a matrix multiplication benchmark;
  • matrix_exponential a library which demonstrates some simple approaches to the problem of computing the exponential of a matrix;
  • md a program which carries out a molecular dynamics simulation, and is intended as a starting point for implementing an OpenMP parallel version;
  • md_openmp a program which carries out a molecular dynamics simulation in parallel using OpenMP;
  • md1 a program which carries out a simple molecular dynamics simulation;
  • md2 a program which carries out a simple molecular dynamics simulation;
  • md3 a program which carries out a simple molecular dynamics simulation;
  • md3glue a program which carries out a simple molecular dynamics simulation;
  • memory_test a program which tests the memory available on the computer by declaring and using big vectors;
  • 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.
  • mesh_io a library which can read or write MESH files, which can be used to define the geometry of a finite element mesh in 2D or 3D, using triangles, quadrilaterals, tetrahedrons or hexahedrons.
  • mesh_to_ice a program which reads the ICE dataset information from a MESH files and rewrites it to a netcdf file.
  • meshless a library which computes a meshless grid by centroidal Voronoi computations;
  • mgmres a library which applies the restarted GMRES algorithm to a sparse linear system, by Lili Ju;
  • mgs a library which is an example of legacy code, which the student is encouraged to study, understand, and document, by Diane O'Leary.
  • mhd_control a program for the control of magnetic-hydrodynamic (MHD) viscous 2d time-dependent fluid flow;
  • mhd_flow a program for magnetic-hydrodynamic (MHD) viscous 2d time-dependent fluid flow;
  • minpack a library which solves linear and nonlinear least squares problems.
  • mixed programs which illustrate the used of mixed language programming in which the main program is written in FORTRAN90;
  • mixture a program which simulates a process governed by a Dirichlet mixture distribution.
  • mm_io a library which reads or writes sparse matrices that use the Matrix Market (MM) sparse matrix file format.
  • module_mark a program which replaces bare "end" statements by "end (module name)" statements in a FORTRAN90 file.
  • 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.
  • movie_data_reformat a program which reformats movie data, copied from "the numbers" movie data web page, into a comma separated variable (CSV) format suitable for input to a statistical analysis package such as "R".
  • mpi programs which illustrate the use of the message passing interface (MPI) for parallel processing on distributed memory systems;
  • mpi_stubs a library which contains stub version of standard MPI routines, which may be used if a parallel program is to be compiled, loaded and run in a serial machine.
  • multigrid_poisson_1d a library which applies the multigrid method to a discretized version of the 1D Poisson equation.
  • multitask_mpi a program which demonstrates how to multitask, that is, to execute several unrelated and distinct tasks simultaneously, using MPI for parallel execution.
  • multitask_openmp a program which demonstrates how to multitask, that is, to execute several unrelated and distinct tasks simultaneously, using OpenMP for parallel execution.
  • 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.
  • mxm_openmp a program which computes a dense matrix product C=A*B, using OpenMP for parallel execution.
  • mxm_serial a program which sets up a matrix multiplication problem A=B*C, intended as a starting point for implementing a parallel version.
  • mxv a program which compares the performance of (do i, do j) loops, (do j, do i) loops, and MATMUL for computing the product of an MxN matrix A and an N vector X.
  • mxv_openmp a program which compares the performance of plain vanilla Fortran and the FORTRAN90 intrinsic routine matmul(), for the matrix multiplication problem y=A*x, with and without parallelization by OpenMP.
  • nas a program which runs the NASA kernel benchmark.
  • nast2d_f90 a program which solves the 2D Navier-Stokes equations, with heat; this is a FORTRAN90 version of a program by Griebel, Dornseifer, and Neunhoeffer;
  • ncc_tetrahedron a library which defines Newton-Cotes closed quadrature rules in a tetrahedron;
  • ncc_triangle a library which defines Newton-Cotes closed quadrature rules in a triangle;
  • nco_tetrahedron a library which defines Newton-Cotes open quadrature rules in a tetrahedron;
  • nco_triangle a library which defines Newton-Cotes open quadrature rules in a triangle;
  • nearest_interp_1d a library which interpolates a set of data using a piecewise constant interpolant defined by the nearest neighbor criterion.
  • 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;
  • netcdf a directory of example programs which read and write netcdf files.
  • niederreiter a library which computes elements of the Niederreiter quasirandom M-dimensional sequence, using an arbitrary base;
  • niederreiter2 a library which computes elements of the Niederreiter quasirandom M-dimensional sequence, using base 2;
  • niederreiter2_dataset a program which creates a Niederreiter quasirandom dataset with base 2;
  • nint_exactness a program which tests the polynomial exactness of a M-dimensional quadrature rule defined over a finite rectangular product region.
  • nint_exactness_mixed a program which measures the polynomial exactness of a M-dimensional quadrature rule based on a mixture of 1D quadrature rule factors.
  • nintlib a library which carries out approximate integration (quadrature) in M dimensions;
  • nl2sol a library which implements an adaptive nonlinear least squares algorithm, by John Dennis, David Gay, Roy Welsch.
  • nms a library which accompanies the text "Numerical Methods and Software";
  • normal a library which computes elements of a pseudorandom sequence of normally distributed values;
  • normal_dataset a program which creates a multivariate normal random dataset;
  • nsasm a library which computes the jacobian matrix associated with a finite element approximation of the incompressible steady (time independent) Navier-Stokes equations in 2D, and to store these as a sparse matrix.
  • nswc a library which includes an extensive set of routines for a wide range of computational activities, compiled by Alfred Morris.
  • obj_io a library which reads and writes the 3D graphics information in an Alias OBJ file;
  • ode a library which solves a system of ordinary differential equations, by Shampine and Gordon;
  • openmp programs which illustrate the use of OpenMP for parallel execution;
  • openmp_stubs a library which is a dummy implementation of the OpenMP routines, and can be used to compile, load, and run a program using OpenMP on a system which does not have OpenMP installed.
  • optimize a program which looks at the use of automatic optimization by the compiler to make the executable code run faster.
  • owens a library which evaluates Owen's T function;
  • paranoia a program which checks the accuracy of floating point arithmetic on a given computer.
  • partial_digest a library which solves the partial digest problem;
  • partition_problem a library which seeks solutions of the partition problem, splitting a set of integers into two subsets with equal sum.
  • patterson_rule a program which looks up and writes out a Gauss-Patterson quadrature rule of given order.
  • pblas a library which embodies the Parallel Basic Linear Algebra Subprograms (PBLAS).
  • pbma_io a library which reads or writes ASCII Portable Bit Map (PBM) 2D graphics files;
  • pbmlib a library which reads or writes graphics files in the Portable Bit Map (PBM) format;
  • 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 in terms of Hermite polynomials, by Gianluca Iaccarino.
  • pce_ode_hermite a program which sets up a simple scalar ordinary differential equation (ODE) for exponential decay with an uncertain decay rate, using a polynomial chaos expansion in terms of Hermite polynomials.
  • pdb_extract a program which can select records from a Protein Data Base (PDB) file and extract columns from those records;
  • pdb_read a library which reads a Protein Data Base (PDB) file;
  • pdb_to_xyz a program which copies the coordinates from the ATOM records of a Protein Data Base (PDB) file into an XYZ file;
  • pgma_io a library which reads or writes ASCII Portable Gray Map (PGM) 2D graphics files;
  • 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).
  • pink_noise a library which computes a pink noise signal obeying a 1/f power law.
  • pitcon7 a library which seeks to produce a sequence of points that satisfy a set of nonlinear equations with one degree of freedom; this is version 7.0 of ACM TOMS algorithm 596.
  • plot_points a program which can plot points, or the Delaunay triangulation or Voronoi diagram;
  • plot_to_ps a program which reads simple text commands and creates a PostScript (PS) image;
  • plot3d_io a library which reads or writes a plot3d file;
  • plot3d_to_avs a program which reads flow data from plot3d files and writes the data to files suitable for input to the AVS graphics system.
  • pod_basis_flow a program which uses POD techniques to extract a small set of representative behaviors from a large set of solutions of a partial differential equation (PDE) involving fluid flow;
  • point_merge a library which considers N points in M-dimensional space, and counts or indexes the unique or tolerably unique items.
  • poisson_openmp a program which computes an approximate solution to the Poisson equation in a rectangle, using the Jacobi iteration to solve the linear system, and OpenMP to carry out the Jacobi iteration in parallel.
  • poisson_serial a program which computes an approximate solution to the Poisson equation in a rectangle, and is intended as the starting point for the creation of a parallel version.
  • poisson_simulation a library which simulates a Poisson process in which events randomly occur with an average waiting time of Lambda.
  • polpak a library which evaluates a variety of mathematical functions, including Chebyshev, Gegenbauer, Hermite, Jacobi, Laguerre, Legendre polynomials, and the Collatz sequence.
  • poly_io a library which reads and writes POLY files;
  • polygon_moments a library which computes arbitrary moments of a polygon.
  • power_method a library which carries out the power method for finding a dominant eigenvalue and its eigenvector.
  • power_rule a program which constructs a power rule, that is, a product quadrature rule from identical 1D factor rules.
  • ppma_io a library which reads or writes ASCII Portable Pixel Map (PPM) 2D color graphics files;
  • ppma_to_ppmb a program which converts an ASCII Portable Pixel Map (PPM) file to a binary PPM file;
  • pppack a library which computes piecewise polynomial interpolants and approximants, in particular, cubic splines, by Carl DeBoor.
  • praxis a library which minimizes a scalar function of several variables, without requiring derivative information, by Richard Brent.
  • prime_mpi a program which counts the number of primes between 1 and N, using MPI for parallel execution.
  • prime_openmp a program which counts the number of primes between 1 and N, using OpenMP for parallel execution.
  • prime_serial is a program which counts the number of primes between 1 and N, and is intended as a starting point for a parallel version.
  • prob a library which evaluates probability density functions;
  • product_rule a program which creates an M-dimensional quadrature rule from a product of distinct 1d quadrature rules;
  • ps_gg_align a library which implements a profile/sequence global alignment method using an affine gap penalty.
  • ps_lg_align a library which implements a profile/sequence local alignment method using an affine gap penalty.
  • ps_qg_align a library which implements a profile/sequence quasiglobal alignment method using an affine gap penalty.
  • ps_write a library which creates a PostScript (PS) file of line drawings;
  • puzzles executable programs which solve simple puzzles;
  • pwl_approx_1d a library which approximates a set of data using a piecewise linear function.
  • pwl_interp_1d a library which interpolates a set of data using a piecewise linear function.
  • pwl_interp_2d a library which evaluates a piecewise linear interpolant to data defined on a regular 2D grid.
  • pwl_interp_2d_scattered a library which evaluates a piecewise linear interpolant to data which is available at an irregularly arranged set of points.
  • pyramid_exactness a program which investigates the polynomial exactness of a quadrature rule for the pyramid.
  • pyramid_rule a program which computes a quadrature rule for a pyramid.
  • qr_solve a library which computes the least squares solution of a linear system A*x=b.
  • quad_mesh a library which handles meshes of quadrilaterals over a 2D region;
  • quad_mesh_rcm a program which computes the Reverse Cuthill McKee (RCM) reordering for nodes in a mesh of 4-node quadrilaterals.
  • quad_mpi a program which applies a quadrature rule to estimate an integral, using MPI;
  • quad_openmp a program which applies a quadrature rule to estimate an integral over a 1D interval, using OpenMP for parallel execution;
  • quad_serial a program which applies a quadrature rule to estimate an integral, intended as a starting point for parallelization exercises.
  • quad2d_openmp a program which applies a product quadrature rule to estimate an integral over a 2D rectangle, using OpenMP for parallel execution;
  • 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.
  • quadpack a library which approximates integrals of various types over finite, semi-infinite and infinite one dimensional intervals;
  • quadrature_test a program which reads the definition of a M-dimensional quadrature rule from three files, applies the rule to a number of test integrals, and prints the results.
  • 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.
  • quadrature_test_genz a program which reads the definition of a M-dimensional quadrature rule from three files, applies the rule to the Genz test integrals, and prints the results. This is a version of quadrature_test that is restricted to the Genz problems.
  • quadrature_weights a library which illustrates techniques for computing the weights of a quadrature rule, assuming that the points have been specified.
  • quadrule a library which implements rules for approximate integration (quadrature) in one dimension;
  • quality a library which computes quality of distribution measures for pointsets in M dimensions;
  • quote a program which prints a random quote from a file;
  • r16_hermite_rule a program which can compute and print a Gauss-Hermite quadrature rule, using quadruple precision real (R16) arithmetic.
  • r16_int_exactness_gen_hermite a program which tests the polynomial exactness of generalized Gauss-Hermite quadrature rules, using quadruple precision real (R16) arithmetic.
  • r16lib a library which contains many utility routines, using quadruple precision real (R16) arithmetic.
  • r4lib a library which contains many utility routines, using single precision real (R4) arithmetic.
  • r8lib a library which contains many utility routines, using double precision real (R8) arithmetic.
  • randlc a library which generates a sequence of pseudorandom numbers, used by the NAS Benchmark programs.
  • random_data a library which generates sample points for various probability distributions, spatial dimensions, and geometries;
  • random_mpi a program which demonstrates one way to generate the same sequence of random numbers for both sequential execution and parallel execution under MPI.
  • random_openmp a program which illustrates how a parallel program using OpenMP can generate multiple distinct streams of random numbers.
  • random_write a program which creates a very large file of 32 bit integers, for input to the diehard program, which can apply statistic tests for randomness.
  • ranmap a program which creates a PostScript (PS) file of images of iterated affine mappings;
  • rbf_interp_1d a library which defines and evaluates radial basis function (RBF) interpolants to 1D data.
  • rbf_interp_2d a library which defines and evaluates radial basis function (RBF) interpolants to 2D data.
  • rbf_interp_nd a library which defines and evaluates radial basis function (RBF) interpolants to multidimensional data.
  • 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;
  • 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."
  • read_align a program which extracts data from a multiple alignment file for sequences and writes the data to a file suitable for input to the distances program.
  • real_precision programs which investigate the occasionally awkward methods for requesting a real data type with given precision. This is the preferred method for requesting double or quadruple precision arithmetic;
  • reformat a program which makes a copy of a data file with a given number of items per line;
  • region a library which reads 3D MRI voxel data, and groups the voxels into connected regions;
  • regression a library which handles problems in linear regression.
  • rejoin a library which demonstrates a way to split or merge data files for parallel computations.
  • ring_mpi a program which uses the MPI parallel programming environment, and measures the time necessary to copy a set of data around a ring of processes.
  • 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.
  • rkf45 a library which applies a Runge-Kutta-Fehlberg (RKF) solver to a system of ordinary differential equations (ODE's);
  • roc a program which computes the Receiver Operator Characteristic (ROC);
  • sandia_cubature a library which implements quadrature rules for certain M-dimensional regions and weight functions.
  • sandia_cvt a program which positions a given number of points in an arbitrary region, using probabilistic centroidal Voronoi tessellation techniques to achieve good coverage and separation; developed for Sandia National Laboratories;
  • sandia_rules a library which can produce a standard 1D Gauss quadrature rule of Chebyshev, Gegenbauer, generalized Hermite, generalized Laguerre, Hermite, Jacobi, Laguerre, and Legendre types.
  • sandia_sgmgg a library which explores a generalized construction method for sparse grids.
  • 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.
  • satisfy a program which demonstrates, for a particular circuit, an exhaustive search for solutions of the circuit satisfiability problem.
  • satisfy_mpi a program which demonstrates, for a particular circuit, an exhaustive search for solutions of the circuit satisfiability problem, using MPI to perform the calculation in parallel.
  • satisfy_openmp a program which demonstrates, for a particular circuit, an exhaustive search for solutions of the circuit satisfiability problem, using OpenMP for parallel execution.
  • scalapack a directory of example programs for SCALAPACK, which carries out linear algebra algorithms on parallel systems.
  • schedule_openmp a program which demonstrates the default, static, and dynamic methods of scheduling loop iterations in OpenMP to avoid work imbalance.
  • sde a library which illustrates the properties of stochastic differential equations (SDE's), and common algorithms for their analysis, by Desmond Higham;
  • search_mpi a program which
    searches integers between A and B for a solution J such that F(J)=C, carried out in parallel using MPI.
  • 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.
  • select a library which carries out Nijenhuis and Wilf's generalized combinatorial selection algorithm;
  • sequence a program which reads a numeric sequence with missing values, and fills in the missing values.
  • set_theory a library which demonstrates various set theoretic operations using several models of a set.
  • sftpack a library which implements the "slow" Fourier transform, intended as a teaching tool and comparison with the fast Fourier transform.
  • sgefa_openmp a program which compares a standard linear algebra solver against a revised version which can be run in parallel with OpenMP.
  • sgmga a library which creates sparse grids based on a mixture of 1D quadrature rules, allowing anisotropic weights for each dimension.
  • shallow_water_1d a program which simulates the evolution of a 1D fluid governed by the time-dependent shallow water equations.
  • shepard_interp_1d a library which defines and evaluates Shepard interpolants to 1D data, based on inverse distance weighting.
  • shepard_interp_2d a library which defines and evaluates Shepard interpolants to 2D data, based on inverse distance weighting.
  • shepard_interp_nd a library which defines and evaluates Shepard interpolants to multidimensional data, based on inverse distance weighting.
  • simplex_coordinates a library which computes the Cartesian coordinates of the vertices of a regular simplex in M dimensions.
  • sine_transform a library which demonstrates some simple properties of the discrete sine transform.
  • slatec a library which contains a huge collection of scientific algorithms;
  • sobol a library which evaluates the Sobol quasirandom M dimensional sequence, by Bennett Fox.
  • sobol_dataset a program which creates a Sobol quasirandom dataset;
  • spacer a program which reads a file containing a distance matrix and performs a principal component analysis.
  • spacer_data_convert a program which reads a text file of distances, and reformats it for use with spacer.
  • spaeth a library which performs the cluster analysis of data;
  • spaeth2 a library which performs the cluster analysis of data;
  • sparse_grid_cc a library which creates sparse grids based on Clenshaw-Curtis rules.
  • sparse_grid_cc_dataset a program which creates a sparse grid dataset based on Clenshaw-Curtis rules.
  • sparse_grid_gl a library which creates sparse grids based on Gauss-Legendre rules.
  • sparse_grid_gl_dataset a program which creates a sparse grid dataset based on Gauss-Legendre rules.
  • sparse_grid_hermite a library which creates sparse grids based on Gauss-Hermite rules.
  • sparse_grid_hermite_dataset a program which creates a sparse grid dataset based on Gauss-Hermite rules.
  • 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.
  • sparse_grid_laguerre a library which creates sparse grids based on Gauss-Laguerre rules.
  • sparse_grid_laguerre_dataset a program which creates a sparse grid dataset based on Gauss-Laguerrre rules.
  • sparse_grid_mixed a library which creates sparse grids based on a mixture of 1D quadrature rules.
  • sparse_grid_mixed_dataset a program which creates a sparse grid dataset based on a mixture of 1D rules.
  • sparse_grid_open a library which creates sparse grids based on open rules (Fejer 2, Gauss-Patterson, Newton-Cotes-Open).
  • sparse_grid_open_dataset a program which creates a sparse grid dataset based on open rules (Fejer 2, Gauss-Patterson, Newton-Cotes-Open).
  • sparse_grid_pure a library which can analyze and create sparse grids in which a single family of 1D quadrature rules is used for all spatial dimensions.
  • sparse_interp_nd a library which can be used to define a sparse interpolant to a function f(x) of a multidimensional argument.
  • sparsekit a library which performs sparse matrix operations, by Yousef Saad;
  • sparsepak a library which forms an obsolete version of the Waterloo Sparse Matrix Package;
  • specfun a library which computes special functions, including Bessel I, J, K and Y functions, and the Dawson, E1, EI, Erf, Gamma, Psi/Digamma functions, by William Cody and Laura Stoltz;
  • special_functions a library which computes special functions, by Shanjie Zhang, Jianming Jin;
  • sphere_cvt a program which generates a mesh of well-separated points on the unit sphere using Centroidal Voronoi Tessellation (CVT) ideas.
  • sphere_delaunay a program which reads a file containing the coordinates of points on the unit sphere, computes the Delaunay triangulation, and outputs a PostScript (PS) file of the image;
  • sphere_design_rule a library which defines spherical designs for quadrature on the sphere;
  • sphere_exactness a program which tests the polynomial exactness of a quadrature rule for the unit sphere;
  • 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, over the unit sphere.
  • sphere_lebedev_rule a library which computes Lebedev quadrature rules for the unit sphere;
  • sphere_monte_carlo a library which applies a Monte Carlo method to estimate the integral of a function over the surface of the unit sphere in 3D;
  • sphere_quad a library which approximates an integral over the surface of the unit sphere by applying a triangulation to the surface;
  • sphere_stereograph a library which computes the stereographic mapping between points on the unit sphere and points on the plane Z = 1; a generalized mapping is also available.
  • sphere_triangle_monte_carlo a library which estimates the integral of a function over a spherical triangle using the Monte Carlo method.
  • sphere_triangle_quad a library which estimates the integral of a function over a spherical triangle using quadrature.
  • sphere_voronoi a program which reads a file containing the coordinates of points on the unit sphere, computes the Voronoi diagram, and outputs a PostScript (PS) file of the image;
  • spiral_data a program which returns sample values of a velocity vector field that satisfies the continuity equation;
  • spline a library which interpolates and approximates via splines;
  • 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.
  • 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.
  • ss_gd_align a library which carries out a sequence-to-sequence global alignment using a distance matrix.
  • ss_gg_align a library which carries out a sequence-to-sequence global alignment using an affine gap penalty.
  • ss_lg_align a library which carries out a sequence-to-sequence local alignment using an affine gap penalty.
  • ss_qg_align a library which carries out a sequence-to-sequence quasi-global alignment using an affine gap penalty.
  • st_io a library which reads and writes sparse linear systems stored in the Sparse Triplet (ST) format.
  • st_to_dsp a program which converts a sparse matrix file from Sparse Triplet (ST) format (zero-based indices) to DSP format (one-based indices);
  • st_to_hb a program which converts a sparse matrix file from Sparse Triplet (ST) format to Harwell Boeing (HB) format;
  • starpac a library which carries out statistical data analysis.
  • steam a library which is based on the National Bureau of Standards (NBS) steam table package;
  • steam_interact a program which queries the National Bureau of Standards (NBS) steam table package;
  • stla_io a library which reads and writes the 3D graphics information in an ASCII stereolithography (STL) file;
  • stochastic_rk a library which applies a Runge-Kutta (RK) scheme to a stochastic differential equation (SDE).
  • string_simulation a program which simulates the behavior of a vibrating string.
  • stripack a library which computes Delaunay triangulations and Voronoi diagrams on a sphere, a version of ACM TOMS algorithm 772, by Robert Renka.
  • stripack_interactive a program which reads a file of points on a sphere, determines the Delaunay triangulation, and writes out a file describing the triangulation.
  • stripper a program which can perform a variety of file modifications such as capitalization, removal of control characters, and so on;
  • stroud a library which defines rules for numerical integration (quadrature) over M-dimensional regions, including spheres, toruses and other shapes;
  • subanagram a program which finds words which are anagrams formed from some of the letters of a given master word.
  • subpak a library which implements a wide variety of operations on real and integer vectors and matrices;
  • subset a library which ranks, unranks, and generates random subsets, combinations, permutations, and so on;
  • subset_sum a program which seeks solutions of the subset sum problem.
  • sum_million a program which sums the integers from 1 to 1,000,000, as a demonstration of how to rate a computer's speed;
  • svd_basis a program which applies the singular value decomposition (SVD) to a collection of data vectors, extracting dominant modes;
  • svd_basis_weight a program which applies the singular value decomposition (SVD) to a collection of weighted data vectors, extracting dominant modes;
  • svd_demo a program which demonstrates the calculation of the singular value decomposition (SVD) and some of its properties;
  • svd_truncated 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.
  • sweep2_delaunay_eps a program which makes an Encapsulated PostScript (EPS) plot from the Delaunay triangulation information that is output by sweep2;
  • sweep2_voronoi_eps a program which makes an Encapsulated PostScript (EPS) plot of the Voronoi diagram information that is output by sweep2;
  • table_barplot_ppma a program which reads a table file of N rows of M numbers and makes a bar graph in the ASCII Portable Pixel Map (PPM) file format;
  • table_border a program which reads a table file representing a 2D array and adds a boundary layer of zero values.
  • table_columns a program which reads a table file of N points in M dimensions and creates a new file by copying various columns, with repetition and shuffling;
  • table_columns_permute a program which reads a table file where each line has COL_NUM values, and permutes the columns according to the user's prescription;
  • table_delaunay a program which reads a table file of N points in 2 dimensions and writes out the Delaunay triangulation;
  • table_graph_code a program which reads a table file representing the adjacency matrix of a graph, and computes the graph code.
  • table_histogram a program which reads a table file and histograms each column.
  • table_io a library which reads and writes a set of data as a table file.
  • table_latinize a program which reads a table file of N points in M dimensions and adjusts it to form a Latin hypercube.
  • table_merge a program which reads a table file of N points in M dimensions, removes duplicates or points that are closer than some tolerance, and writes the reduced set of points to a file.
  • table_orthonormalize a program which reads a table file of N points in M dimensions and orthonormalizes the columns;
  • table_quality a program which reads a table file of N points in M dimensions and computes the uniformity of the placement of the points;
  • table_record_match a program which reads a table file and seeks the closest pair of records;
  • table_scale a program which reads a table file of N points in M dimensions and creates a copy with every entry scaled by a given scale vector.
  • table_shift a program which reads a table file of N points in M dimensions, creates a copy with every entry shifted by a given displacement vector.
  • table_stats a program which reads a table file of N points in M dimensions, and prints statistics, such as the average, maximum, minimum, and range.
  • table_tet_mesh a program which reads a table file of N points in 3 dimensions and produces a tet mesh;
  • table_top a program which is given a table file of M-dimensional points, makes plots of all coordinate pairs;
  • table_unborder a program which reads a table file representing a 2D array, and removes the boundary values.
  • table_uniform_noise a program which reads a table file of N points in M dimensions, creates a copy with scaled uniform noise added to each entry.
  • 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;
  • tanh_quad a library which sets up the tanh quadrature rule;
  • tanh_sinh_rule a program which computes and writes out a tanh-sinh quadrature rule of given order.
  • 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.
  • tec_io a library which reads or writes a TECPLOT graphics file of finite element information;
  • tec_to_fem a program which reads a TECPLOT graphics file of finite element information and writes an equivalent set of FEM files (node coordinates/elements/node data);
  • tec_to_obj a program which reads a TECPLOT graphics file of finite element information and writes an equivalent Alias OBJ graphics file;
  • tec_to_obj2 a program which reads a TECPLOT graphics file of finite element information and writes an equivalent Alias OBJ file; This is a minor revision of tec_to_obj, which tries to handle multiple zones.
  • tec_write a library which writes a TECPLOT graphics file.
  • templates a library which forms basic implementations of iterative methods for solving large sparse linear systems;
  • test_approx a library which implements test problems for approximation, provided as a set of (x,y) data.
  • test_con a library which implements test problems for numerical continuation.
  • test_eigen a library which implements test matrices for eigenvalue analysis.
  • test_int a library which implements test problems for approximate integration (quadrature) in one dimension.
  • test_int_2d a library which implements test problems for approximate integration (quadrature) in two dimensions.
  • test_int_hermite a library which defines test integrands for Hermite integrals with interval (-oo,+oo) and weight exp(-x^2).
  • test_int_laguerre a library which implements test problems for approximate integration over a semi-infinite interval.
  • test_interp a library which defines test problems for interpolation, provided as a set of (x,y(x)) data.
  • test_interp_1d a library which defines test problems for interpolation of data y(x), which depends on a 1D argument.
  • test_interp_2d a library which defines test problems for interpolation of data z(x,y), depending on a 2D argument.
  • test_interp_nd a library which defines test problems for interpolation of data z(x), depending on an M-dimensional argument.
  • test_ls a library which implements linear least squares test problems of the form A*x=b.
  • test_mat a library which implements test matrices.
  • test_matrix_exponential a library which defines a set of test cases for computing the matrix exponential.
  • test_mesh a library which implements some sample 2D meshes.
  • test_min a library which implements test problems for minimization of a scalar function of a scalar variable.
  • test_nint a library which implements test problems for approximate integration (quadrature) in M dimensions.
  • test_nls a library which implements nonlinear least squares test problems.
  • test_nonlin a library which implements test problems for the solution of systems of nonlinear equations.
  • test_ode a library which implements tests for solvers of systems of ordinary differential equations (ODE's).
  • test_opt a library which implements test problems for optimization of a scalar function of several variables.
  • 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.
  • test_optimization a library which implements test problems for optimization of a scalar function of several variables, as described by Molga and Smutnicki.
  • test_tet_mesh a library which implements test problems for tetrahedralization or meshing of arbitrary regions in 3 dimensions.
  • test_tri_int a library which implements test functions for integration over a triangle in 2 dimensions.
  • test_triangulation a library which implements test problems for triangularization or meshing of arbitrary regions in 2 dimensions.
  • test_values a library which stores a small set of values for a variety of mathematical functions, suitable for a rough test of accuracy for algorithms.
  • test_zero a library which implements test problems for the solution of a single nonlinear equation in one variable.
  • testpack a program which demonstrates the use of a set of test integrand functions chosen by Alan Genz.
  • tet_mesh a library which carries out various tasks associated with tetrahedral meshes in 3D;
  • 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 TRI_SURFACE files containing the nodes and elements defining this surface.
  • tet_mesh_l2q a program which reads information about a 4-node (linear) tet mesh and creates data defining a corresponding 10-node (quadratic) tet mesh;
  • tet_mesh_q2l a program which reads information about a 10-node (quadratic) tet mesh and creates data defining a corresponding 4-node (linear) tet mesh;
  • tet_mesh_quality a program which reads information about a tet mesh of points in 3D and computes various quality measures;
  • tet_mesh_rcm a program which computes the Reverse Cuthill-McKee (RCM) reordering for the nodes of a tet_mesh that uses 4-node or 10-node tetrahedrons;
  • tet_mesh_refine a program which refines all the tetrahedrons in a tet mesh;
  • tet_mesh_tet_neighbors a program which reads information about a tet mesh and writes out a list of the tetrahedrons that are adjacent to a given tetrahedron;
  • tet_mesh_volumes a program which computes the volume of each tetrahedron in a tet mesh;
  • tetrahedron_exactness a program which tests the polynomial exactness of a quadrature rule for the tetrahedron;
  • tetrahedron_grid a library which computes a grid of points inside a 3D tetrahedron.
  • tetrahedron_monte_carlo a program which uses the Monte Carlo method to estimate an integral over a tetrahedron.
  • tetrahedron_properties a program which prints out the properties of a tetrahedron whose vertex coordinates are read from a file;
  • 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.
  • tiler_2d a program which uses blending to map data into a 2D region;
  • tiler_3d a program which uses blending to map data into a 3D region;
  • timer a library which implements various real time and CPU time tests.
  • timestamp a library which prints the current YMDHMS date as a timestamp.
  • toeplitz a library which implements Toeplitz matrix system solvers.
  • toeplitz_cholesky a library which computes the Cholesky factorization of a nonnegative definite symmetric Toeplitz matrix.
  • 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 FORTRAN90 version of ACM TOMS algorithm 178.
  • toms179 a library which calculates the incomplete Beta ratio, by Oliver Ludwig; this is a FORTRAN90 version of ACM TOMS algorithm 179.
  • toms291 a library which approximates the logarithm of the Gamma function; this is a FORTRAN90 version of ACM TOMS algorithm 291.
  • toms446 a library which manipulates Chebyshev series for interpolation and approximation; this is a FORTRAN90 version of ACM TOMS algorithm 446, by Roger Broucke.
  • toms453 a library which determines the abscissas and weights for a Gaussian quadrature formula for Bromwich's integral; this is a FORTRAN90 version of ACM TOMS algorithm 453.
  • 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 FORTRAN90 version of ACM TOMS algorithm 462.
  • toms526 a library which interpolates scattered bivariate data; this is a FORTRAN90 version of ACM TOMS algorithm 526, by Hiroshi Akima.
  • toms552 a library which computes a solution of a constrained linear system. of a scalar function, this is a FORTRAN90 version of ACM TOMS algorithm 552;
  • toms611 a library which implements unconstrained minimization of a scalar function; this is a FORTRAN90 version of ACM TOMS algorithm 611, by David Gay.
  • toms647 a library which evaluates the Faure, Halton, and Sobol quasirandom sequences; this is a FORTRAN90 version of ACM TOMS algorithm 647;
  • toms655 a library which computes the weights for interpolatory quadrature rule; this library is commonly called IQPACK; this is a FORTRAN90 version of ACM TOMS algorithm 655.
  • toms659 a library which computes elements of the Sobol quasirandom sequence; this is a FORTRAN90 version of ACM TOMS algorithm 659.
  • toms660 a library which takes scattered data in 2D and creates an interpolating function F(X,Y), called qshep2d; this is a FORTRAN90 version of ACM TOMS algorithm 660, by Robert Renka.
  • toms661 a library which takes scattered data in 3D and creates an interpolating function F(X,Y,Z), called qshep3d; this is a FORTRAN90 version of ACM TOMS algorithm 661, by Robert Renka.
  • toms672 a library which generates an interpolatory quadrature rule of highest possible order, given a set of preassigned abscissas; this library is commonly called EXTEND; this is a FORTRAN90 version of ACM TOMS algorithm 672.
  • toms708 a library which evaluates the incomplete Beta function, by Armido Didonato, Alfred Morris, Jr; this is a FORTRAN90 version of ACM TOMS algorithm 708;
  • toms726 a library which computes recursion coefficients for orthogonal polynomials, and the abscissa and weights for related quadrature rules; this library is commonly called ORTHPOL; this is a FORTRAN90 version of ACM TOMS algorithm 726.
  • toms738 a library which evaluates Niederreiter's quasirandom sequence; this is a FORTRAN90 version of ACM TOMS algorithm 738;
  • toms757 a library which evaluates uncommon special functions, by Allan McLeod. this is a FORTRAN90 version of ACM TOMS algorithm 757;
  • toms790 a library which computes an interpolating function to a set of scattered data in the plane; this library is commonly called CSHEP2D; by Robert Renka; this is a FORTRAN90 version of ACM TOMS algorithm 790.
  • toms792 a library which tests functions that interpolate scattered data in the plane; by Robert Renka; this is a FORTRAN90 version of ACM TOMS algorithm 792.
  • tri_surface_io a library which reads and writes the 3D graphics information in a TRI_SURFACE file;
  • triangle_exactness a program which tests the polynomial exactness of a quadrature rule for triangles;
  • triangle_grid a library which computes a triangular grid of points.
  • triangle_histogram a program which computes histograms of data on the unit triangle.
  • triangle_monte_carlo a program which uses the Monte Carlo method to estimate an integral over a triangle.
  • triangle_properties a program which computes properties of a triangle whose vertex coordinates are read from a file.
  • triangulation a library which computes, plots and manipulates the triangulation of a set of points in 2D;
  • ["triangulation_boundary_nodes/triangulation_boundary_nodes.h]) 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;
  • triangulation_corner a program which modifies triangulations in which one or more triangles have more than one boundary edge.
  • triangulation_delaunay_discrepancy a program which measures the amount by which a triangulation fails the local Delaunay test;
  • triangulation_histogram a program which computes histograms of data over a triangulation.
  • triangulation_l2q a program which reads information about a 3-node (linear) triangulation and creates data defining a corresponding 6-node (quadratic) triangulation;
  • triangulation_mask a program which reads a triangulation and calls a user-supplied routine to consider each triangle for deletion;
  • triangulation_orient a program which ensures that the triangles in an order 3 or order 6 triangulation have positive orientation;
  • triangulation_plot a program which plots the nodes and elements of a triangulation as a PostScript (PS) file;
  • triangulation_q2l a program which reads information about a 6-node triangulation and creates data defining a corresponding 3-node triangulation;
  • 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.
  • triangulation_quality a program which reads information about a triangulation and computes various quality measures;
  • 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;
  • triangulation_refine a program which refines a triangulation;
  • triangulation_t3_to_t4 a program which reads information about a 3-node triangulation and creates data defining a corresponding 4-node triangulation (vertices + centroid);
  • ["triangulation_triangle_neighbors/triangulation_triangle_neighbors.h]) 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;
  • tripack a library which computes constrained Delaunay triangulation in the plane, ACM TOMS algorithm 751, by Robert Renka;
  • tsp_io a library which reads or writes files in the TSP format used for examples of the traveling salesperson problem.
  • unicycle a library which considers permutations containing a single cycle, sometimes called cyclic permutations.
  • uniform a library which computes elements of a simple pseudorandom number sequence;
  • uniform_dataset a program which creates a uniform random dataset;
  • valgrind programs which illustrate the use of the VALGRIND suite of programs which includes a memory leak detector.
  • van_der_corput a library which computes elements of the van der Corput one-dimensional quasirandom sequence;
  • van_der_corput_dataset a program which creates a dataset of the van der Corput one-dimensional quasirandom sequence;
  • 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.
  • 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.
  • vandermonde_interp_1d a library which finds a polynomial interpolant to data y(x) of a 1D argument by setting up and solving a linear system for the polynomial coefficients involving the Vandermonde matrix.
  • vandermonde_interp_2d a library which finds a polynomial interpolant to data z(x,y) of a 2D argument by setting up and solving a linear system for the polynomial coefficients involving the Vandermonde matrix.
  • vec_io a library which reads and writes vectors of fixed size, to and from a disk file, in any order;
  • vector_plot a program which creates a PostScript (PS) graphics file containing an image of a vector field (U(X,Y),V(X,Y));
  • voronoi_plot a program which plots the Voronoi neighborhoods of points in the 2D unit square, using L1, L2 or Loo norms;
  • voronoi_weight a program which estimates the volume of the Voronoi cells associated with N points in the M-dimensional unit hypercube;
  • vtk_io a library which reads and writes VTK graphics files.
  • walsh a library which implements versions of the Walsh and Haar transforms.
  • wandzura a library which returns one of 6 Wandzura rules for quadrature in a triangle;
  • wavelet a library which does some simple wavelet calculations;
  • 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.
  • wordsnake a program which rearranges a list of words so that they have maximum overlap;
  • wtime a library which returns a reading of the wall clock time in seconds.
  • xerror a library which forms the SLATEC error message package.
  • xlf_intrinsics programs which illustrate the use of some of the intrinsic functions included by the IBM XLF compiler, above and beyond those specified in the FORTRAN language standards.
  • xy_io a library which reads and writes XY files for storing 2D point information.
  • xyz_io a library which reads and writes XYZ files for storing 3D point information.
  • xyz_plot a program which is an interactive plotter.
  • xyz_to_pdb a program which reads an XYZ file of 3D spatial coordinates, and rewrites the information as atomic coordinates in a Protein Data Base (PDB) file;
  • ziggurat a library which samples the uniform, normal or exponential distributions, using the ziggurat method, by Marsaglia and Tsang.
  • ziggurat_openmp a program which demonstrates how the ziggurat library can be used to generate random numbers in an OpenMP parallel program.
  • zoomin a library which finds the zero of a scalar function.

About

An official Git Mirror of John Burkardt's great collection of FORTRAN 90 Software

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Fortran 98.3%
  • Shell 0.8%
  • Rust 0.7%
  • C++ 0.1%
  • C 0.1%
  • MATLAB 0.0%