C Codes
-
allocatable_array_test
-
alpert_rule,
a C code which
sets up an Alpert quadrature rule for functions which are
regular, log(x) singular, or 1/sqrt(x) singular.
-
alpert_rule_test
-
analemma,
a C code which
evaluates the equation of time, a formula for the difference between
the uniform 24 hour day and the actual position of the sun,
creating data files that can be plotted with gnuplot(),
based on a C code by Brian Tung.
-
analemma_test
-
annulus_monte_carlo,
a C code which
uses the Monte Carlo method to estimate the integral of a function
over the interior of a circular annulus in 2D.
-
annulus_monte_carlo_test
-
annulus_rule,
a C code which
computes a quadrature rule for estimating integrals of a function
over the interior of a circular annulus in 2D.
-
annulus_rule_test
-
args,
a C code which
reports the command line arguments with which it was invoked;
-
args_test
-
asa005,
a C code which
evaluates the Cumulative Density Function (CDF) of the noncentral T
Probability Density Function (PDF), by BE Cooper.
This is a version of Applied Statistics Algorithm 5;
-
asa005_test
-
asa006,
a C code which
computes the Cholesky factorization of a symmetric positive
definite (SPD) matrix, by Michael Healy.
This is a version of Applied Statistics Algorithm 6;
-
asa006_test
-
asa007,
a C code which
computes the inverse of a symmetric positive definite (SPD) matrix,
by Michael Healy.
This is a version of Applied Statistics Algorithm 7.
-
asa007_test
-
asa032,
a C code which
evaluates the incomplete Gamma function,
by G Bhattacharjee.
This is a version of Applied Statistics Algorithm 32.
-
asa032_test
-
asa047,
a C code which
minimizes a scalar function of several variables
using the Nelder-Mead algorithm,
by R ONeill.
This is a version of Applied Statistics Algorithm 47.
-
asa047_test
-
asa053,
a C code which
produces sample matrices from the Wishart distribution,
by William Smith and Ronald Hocking.
This is a version of Applied Statistics Algorithm 53.
-
asa053_test
-
asa058,
a C code which
implements the K-means data clustering algorithm,
by David Sparks.
This is a version of Applied Statistics Algorithm 58.
-
asa058_test
-
asa063,
a C code which
evaluates the incomplete Beta function,
by KL Majumder and G Bhattacharjee.
This is a version of Applied Statistics Algorithm 63.
-
asa063_test
-
asa066,
a C code which
evaluates the Cumulative Density Function (CDF) of the normal
probability distribution, by David Hill.
This is a version of Applied Statistics Algorithm 66.
-
asa066_test
-
asa076,
a C code which
evaluates the Owen T function, needed to compute the
Cumulative Density Function (CDF) of the
noncentral T distribution,
by Young and Minder.
This is a version of Applied Statistics Algorithm 76.
-
asa076_test
-
asa082,
a C code which
computes the determinant of an orthogonal matrix;
this is a version of Applied Statistics Algorithm 82,
by J C Gower.
-
asa082_test
-
asa091,
a C code which
evaluates the percentage points of the Chi-Squared distribution,
by Best and Roberts.
This is a version of Applied Statistics Algorithm 91.
-
asa091_test
-
asa103,
a C code which
evaluates the digamma or psi function,
by Jose Bernardo.
This is a version of Applied Statistics Algorithm 103.
-
asa103_test
-
asa109,
a C code which
inverts the incomplete Beta function,
by Cran, Martin and Thomas.
This is a version of Applied Statistics Algorithm 109.
-
asa109_test
-
asa111,
a C code which
evaluates the percentage points of the normal distribution,
by Beasley and Springer.
This is a version of Applied Statistics Algorithm 111.
-
asa111_test
-
asa113,
a C code which
implements a clustering algorithm using transfers and swaps,
by Banfield and Bassill.
This is a version of Applied Statistics Algorithm 113.
-
asa113_test
-
asa121,
a C code which
evaluates the trigamma function,
by BE Schneider.
This is a version of Applied Statistics Algorithm 121.
-
asa121_test
-
asa136,
a C code which
implements a clustering algorithm,
by Hartigan and Wong.
This is a version of Applied Statistics Algorithm 136.
-
asa136_test
-
asa144,
a C code which
randomly generates an RxC contingency table,
by James Boyett.
This is a version of Applied Statistics Algorithm 144.
-
asa144_test
-
asa147,
a C code which
evaluates the incomplete Gamma function,
by Chi Leung Lau.
This is a version of Applied Statistics Algorithm 147.
-
asa147_test
-
asa152,
a C code which
evaluates the Probability Density Function (PDF)
and Cumulative Density Function
(CDF) associated with the hypergeometric distribution,
by Richard Lund;
this is a version of Applied Statistics Algorithm 152.
-
asa152_test
-
asa159,
a C code which
randomly generates an RxC contingency table,
by Michael Patefield;
This is a version of Applied Statistics Algorithm 159.
-
asa159_test
-
asa172,
a C code which
generates all M-dimensional indices in a given range,
simulating the behavior of an arbitrary number of nested loops,
by OFlaherty and MacKenzie.
This is a version of Applied Statistics Algorithm 172.
-
asa172_test
-
asa183,
a C code which
implements a random number generator (RNG),
by Wichman and Hill.
This is a version of Applied Statistics Algorithm 183.
-
asa183_test
-
asa226,
a C code which
evaluates the Cumulative Density Function (CDF)
of the noncentral Beta distribution,
by Russell Lenth.
This is a version of Applied Statistics Algorithm 226.
-
asa226_test
-
asa239,
a C code which
evaluates the incomplete Gamma function,
by Shea.
This is a version of Applied Statistics Algorithm 239.
-
asa239_test
-
asa241,
a C code which
evaluates the percentage points of the normal distribution,
by Michael Wichura.
This is a version of Applied Statistics Algorithm 241.
-
asa241_test
-
asa243,
a C code which
evaluates the Cumulative Density Function (CDF)
of the noncentral T distribution,
by Russell Lenth;
this is a version of Applied Statistics Algorithm 243.
-
asa243_test
-
asa245,
a C code which
evaluates the logarithm of the Gamma function,
by Allan Mcleod;
this is a version of Applied Statistics Algorithm 245.
-
asa245_test
-
asa266,
a C code which
evaluates various properties of
the Dirichlet Probability Density Function (PDF);
this is a version of Applied Statistics Algorithm 266;
-
asa266_test
-
asa299,
a C code which
computes the lattice points in an M-dimensional simplex,
by Chasalow and Brand;
this is a version of Applied Statistics Algorithm 299;
-
asa299_test
-
asa310,
a C code which
computes the Cumulative Density Function (CDF) of
the noncentral Beta distribution,
by Chattamvelli and Shanmugam;
this is a version of Applied Statistics Algorithm 310.
-
asa310_test
-
asa314,
a C code which
computes the inverse of a matrix whose elements are subject to
modulo arithmetic,
by Roger Payne.
This is a version of Applied Statistics Algorithm 314;
-
asa314_test
-
ascii_to_mri,
a C code which
restores MRI data to its original binary format, having been
previously converted to an ASCII text file.
-
ascii_to_mri_test
-
atbash,
a C code which
applies the Atbash substitution cipher to a string of text.
-
atbash_test
-
backtrack_binary_rc,
a C code which
carries out a backtrack search for a set of binary decisions, using
reverse communication (RC).
-
backtrack_binary_rc_test
-
backward_euler,
a C code which
solves one or more ordinary differential equations (ODE)
using the (implicit) backward Euler method, using a version
of fsolve() for the implicit equation.
-
backward_euler_test
-
ball_grid,
a C code which
computes a grid of points
over the interior of the unit ball in 3D.
-
ball_grid_test
-
ball_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of the unit ball in 3D.
-
ball_integrals_test
-
ball_monte_carlo,
a C code which
applies a Monte Carlo method to estimate integrals of a function
over the interior of the unit ball in 3D;
-
ball_monte_carlo_test
-
bank,
a C code which
computes the check digit associated with a US Bank Routing Number
check digit, or reports whether a 9-digit code is actually valid.
-
bank_test
-
barycentric_interp_1d,
a C code which
defines and evaluates the barycentric Lagrange polynomial p(x)
which interpolates a set of data, so that p(x(i)) = y(i).
The barycentric approach means that very high degree polynomials can
safely be used.
-
barycentric_interp_1d_test
-
bdf2,
a C code which
solves one or more ordinary differential equations (ODE)
using the (implicit) backward difference formula of order 2 (BDF2),
using fsolve() to solve the implicit equation.
-
bdf2_test
-
bellman_ford,
a C code which
implements the Bellman-Ford algorithm for finding the shortest
distance from a given node to all other nodes in a directed graph
whose edges have been assigned real-valued lengths.
-
bellman_ford_test
-
bernstein_polynomial,
a C code which
evaluates the Bernstein polynomials;
-
bernstein_polynomial_test
-
besselj,
a C code which
evaluates Bessel J functions of noninteger order;
-
besselj_test
-
beta_nc,
a C code which
evaluates the cumulative density function (CDF)
of the noncentral Beta distribution;
-
beta_nc_test
-
biharmonic_exact,
a C code which
evaluates exact solutions w(x,y) to the biharmonic equation
del^2 w = 0 or wxxxx + 2 wxxyy + wyyyy = 0
-
biharmonic_exact_test
-
bisection,
a C code which
applies the bisection method to seek a root of f(x)
over a change-of-sign interval a <= x <= b.
-
bisection_test
-
bisection_integer,
a C code which
seeks an integer solution to the equation F(X)=0,
using bisection within a user-supplied change of sign interval [A,B].
-
bisection_integer_test
-
bisection_rc,
a C code which
seeks a solution to the equation F(X)=0 using bisection
within a user-supplied change of sign interval [A,B].
The procedure is written using reverse communication (RC).
-
bisection_rc_test
-
black_scholes,
a C code which
implements some simple approaches to
the Black-Scholes option valuation theory,
by Desmond Higham.
-
black_scholes_test
-
blas0,
a C code which
contains auxilliary functions for the Basic Linear Algebra Subprograms
(BLAS).
-
blas0_test
-
blas1_d,
a C code of the Level 1 Basic Linear Algebra Subprograms (BLAS),
using double precision real arithmetic;
-
blas1_d_test
-
blas1_z,
a C code of the Level 1 Basic Linear Algebra Subprograms (BLAS),
using double precision complex arithmetic;
-
blas1_z_test
-
blas2_d,
a C code which
constitutes the Level 2 Basic Linear Algebra Subprograms (BLAS),
using double precision real arithmetic.
-
blas2_d_test
-
blas3_d,
a C code which
constitutes the Level 3 Basic Linear Algebra Subprograms (BLAS)
for matrix-matrix operations,
using double precision real arithmetic.
-
blas3_d_test
-
blend,
a C code which
carries out 1D/2D/3D blending interpolation;
-
blend_test
-
box_behnken,
a C code which
computes a Box-Behnken design,
that is, a set of arguments to sample the behavior
of a function of multiple parameters;
-
box_behnken_test
-
brc_data,
a C code which
creates a file of randomly generated temperature readings to be
associated with weather stations at 413 world cities. A file like
this, with 1 billion records, is used for the billion
record challenge (BRC).
-
brc_data_test
-
brc_naive,
a C code which
reads a file of randomly generated temperature readings, associated
with weather stations at 413 world cities, and computes the minimum,
mean, and maximum temperature for each weather station. It also reports
the total execution time. Processing such a data file with one billion
records is the substance of the billion record challenge (BRC).
-
brc_naive_test
-
brownian_motion_simulation,
a C code which
simulates Brownian motion in an M-dimensional region,
creating graphics files for processing by gnuplot().
-
brownian_motion_simulation_test
-
burgers_exact,
a C code which
evaluates exact solutions of
the time-dependent 1D viscous Burgers equation.
-
burgers_exact_test
-
bvec,
a C code which
demonstrates how signed integers can be stored as
binary vectors, and arithmetic can be performed on them.
-
bvec_test
-
c_test,
a C code which
illustrates some of the features of the C programming language.
-
c_arrays_test,
a C code which
shows how to define, allocate, index and delete vectors, matrices
and higher dimensional arrays.
-
c_calls_f77_test,
a C code which
illustrates how a C program can call a FORTRAN77 subroutine.
-
c_calls_f90_test,
a C code which
illustrates how a C program can call a FORTRAN90 subroutine.
-
c_combinatorics,
a C code which
considers a variety of problems in combinatorics involving
counting, combinations, permutations, and so on.
-
c_exact,
a C code which
evaluates exact solutions to a few selected examples of
ordinary differential equations (ODE) and partial differential
equations (PDE).
-
c_files_test,
a C code which
illustrates the use of files.
-
c_intrinsics_test,
a C code which
illustrates the use of intrinsic functions supplied by the C language.
-
c_mistake,
a C code which
illustrates some simple but devious programming mistakes in C.
-
c_monte_carlo,
a C code which
uses Monte Carlo sampling to estimate areas and integrals.
-
c_operators_test
-
c_random_test
-
c_rule,
a C code which
computes a quadrature rule which
estimates the integral of a function f(x), which might be defined over
a one dimensional region (a line) or more complex shapes such as
a circle, a triangle, a quadrilateral, a polygon, or a higher
dimensional region, and which might include an associated weight
function w(x).
-
c_simulation,
a C code which
uses simulation to study card games, contests, and other processes
which have a random element. Usually, the purpose is to try to
predict the average behavior of the system over many trials.
-
c8_complex_lib,
a C code which
defines a double precision complex (C8) variable as a structure,
and implements certain corresponding elementary functions.
-
c8_complex_lib_test
-
c8lib,
a C code which
implements certain elementary functions for
double precision complex (C8) variables
using the C99 standard "double complex" datatype.
-
c8lib_test
-
c8poly,
a C code which
operates on complex polynomials.
-
c8poly_test
-
caesar,
a C code which
applies a Caesar Shift Cipher to a string of text.
-
caesar_test
-
calpak,
a C code which
computes various simple calendrical quantities. It can work with
various calendars including Egyptian, English, French Revolutionary,
Gregorian, Julian, and Julian Ephemeris Date. It can convert a
date from one calendar to another. It can return the day of the week
for a given date. It can convert from day-number/year to day/month/year
format. It can calculate the time difference between two dates.
-
calpak_test
-
candy_count,
a C code which
counts the types of candy in a rectangular container, which might be
a vector, matrix, or 3D box. The candy is assumed to have C possible
types, and to have been entered into the container in a cycle that
begins with type 1. While the vector case is easy, it is already
difficult to come up with a general formula for the MxN matrix case.
-
candy_count_test
-
cauchy_principal_value,
a C code which
uses Gauss-Legendre quadrature to estimate the Cauchy Principal Value
(CPV) of certain singular integrals.
-
cauchy_principal_value_test
-
cblas_test,
a C code which
calls cblas(), which
implements the Basic Linear Algebra Subprograms.
-
ccn_rule,
a C code which
defines a one of a sequence of Clenshaw Curtis Nested (CCN)
quadrature rules of any order.
-
ccn_rule_test
-
ccs_io,
a C code which
reads and writes sparse linear systems
stored in the Compressed Column Storage (CCS) format.
-
ccs_io_test
-
ccs_to_st,
a C code which
converts a sparse matrix from Compressed Column Storage (CCS) to
sparse triplet (ST) format.
-
ccs_to_st_test
-
cdflib,
a C code which
evaluates the cumulative density function (CDF), inverse CDF,
and certain other inverse functions, for distributions including
beta, binomial, chi-square, noncentral chi-square, F, noncentral F,
gamma, negative binomial, normal, Poisson, and students T,
by Barry Brown, James Lovato, Kathy Russell.
-
cdflib_test
-
cell,
a C code which
defines a cell array, a generalization of an array which
compactly stores and retrieves vector or matrix data of
varying size, such as the rows of a triangular matrix.
-
cell_test
-
cellular_automaton,
a C code which
demonstrates the 1D Cellular Automaton known as rule #30.
-
cellular_automaton_test
-
cg,
a C code which
implements a simple version of the conjugate gradient (CG) method
for solving a system of linear equations of the form A*x=b,
suitable for situations in which the matrix A is positive definite,
only real, positive eigenvalues and symmetric.
-
cg_test
-
cg_rc,
a C code which
implements the conjugate gradient (CG) method for solving
a positive definite sparse linear system A*x=b,
using reverse communication (RC).
-
cg_rc_test
-
change_dynamic,
a C code which
uses dynamic programming to solve the change making problem,
in which a given sum is to be formed using coins of various
denominations.
-
change_dynamic_test
-
chebyshev,
a C code which
computes the Chebyshev interpolant or approximant to a given function
over an interval.
-
chebyshev_test
-
chebyshev_interp_1d,
a C code which
determines the combination of Chebyshev polynomials which
interpolates a set of data, so that p(x(i)) = y(i).
-
chebyshev_interp_1d_test
-
chebyshev_polynomial,
a C code which
considers the Chebyshev polynomials T(i,x), U(i,x), V(i,x) and W(i,x).
Functions are provided to evaluate the polynomials, determine their
zeros, produce their polynomial coefficients, produce related
quadrature rules, project other functions onto these polynomial bases,
and integrate double and triple products of the polynomials.
-
chebyshev_polynomial_test
-
chebyshev_series,
a C code which
evaluates a Chebyshev series approximating a function f(x),
while efficiently computing one, two or three derivatives of the
series, which approximate f'(x), f''(x), and f'''(x),
by Manfred Zimmer.
-
chebyshev_series_test
-
chrpak,
a C code which
manipulates characters and strings;
-
chrpak_test
-
circle_arc_grid,
a C code which
computes grid points along a circular arc.
-
circle_arc_grid_test
-
circle_integrals,
a C code which
returns the exact value of the integral of any monomial
over the circumference of the unit circle in 2D.
-
circle_integrals_test
-
circle_monte_carlo,
a C code which
applies a Monte Carlo method to estimate the integral of a function
along the circumference of the unit circle in 2D;
-
circle_monte_carlo_test
-
circle_rule,
a C code which
computes quadrature rules for the unit circle in 2D, that is, the
circumference of the circle of radius 1 and center (0,0).
-
circle_rule_test
-
circle_segment,
a C code which
carries out computations associated with a circle segment, including
height, angle, area, centroid, sampling, and quadrature,
creating some graphics images using gnuplot().
-
circle_segment_test
-
clapack_test
-
clausen,
a C code which
evaluates a Chebyshev interpolant to the Clausen function Cl2(x).
-
clausen_test
-
clenshaw_curtis_rule,
a C code which
implements a Clenshaw Curtis quadrature rule;
-
clenshaw_curtis_rule_test
-
closest_pair_brute,
a C code which
uses brute force to solve a 2D version of the closest pair problem,
which identifies the closest pair of points in a given collection.
-
closest_pair_brute_test
-
closest_point_brute,
a C code which
uses brute force to find the nearest of a set of N points in D
dimensions to a given test point. This is sometimes called a
nearest neighbor calculation.
-
closest_point_brute_test
-
cnoise,
a C code which
generates samples of noise obeying a 1/f^alpha power law,
by Miroslav Stoyanov.
-
cnoise_test
-
collatz_recursive,
a C code which
demonstrates recursive programming by considering
the simple Collatz 3n+1 problem.
-
collatz_recursive_test
-
colored_noise,
a C code which
generates samples of noise obeying a 1/f^alpha power law.
-
colored_noise_test
-
combo,
a C code which
ranks, unranks, enumerates, lists and
randomly selects balanced sequences, cycles, graphs, Gray codes,
subsets, partitions, permutations, restricted growth functions,
Pruefer codes and trees.
-
combo_test
-
communicator_mpi,
a C code which
creates new communicators involving a subset of initial
set of MPI processes in the default communicator MPI_COMM_WORLD.
-
communicator_mpi_test
-
companion_matrix,
a C code which
computes the companion matrix for a polynomial.
The polynomial may be represented in the standard monomial basis,
or as a sum of Chebyshev, Gegenbauer, Hermite, Laguerre, or Lagrange
basis polynomials. All the roots of the polynomial can be determined as
the eigenvalues of the corresponding companion matrix.
-
companion_matrix_test
-
compass_search,
a C code which
seeks the minimizer of a scalar function of several variables
using compass search, a direct search algorithm
that does not use derivatives.
-
compass_search_test
-
complex_numbers_test,
a C code which
demonstrates the declaration and use of complex numbers.
-
components,
a C code which
organizes contiguous cells into labeled clusters, for a
1D, 2D, or 3D array. This code has uses in image analysis
and percolation simulation.
-
components_test
-
condition,
a C code which
implements methods of computing or estimating
the condition number of a matrix.
-
condition_test
-
continued_fraction,
a C code which
implements some simple algorithms for dealing with simple and
generalized continued fractions.
-
continued_fraction_test
-
cordic,
a C code which
computes a few special functions using the CORDIC algorithm.
-
cordic_test
-
correlation,
a C code which
contains statistical correlation functions.
-
correlation_test
-
cosine_transform,
a C code which
demonstrates some simple properties of the discrete cosine transform
(DCT).
-
cosine_transform_test
-
csparse,
a C code which
carries out the direct solution of sparse
linear systems, by Timothy Davis.
-
csparse_test
-
cube_arbq_rule,
a C code which
returns quadrature rules,
with exactness up to total degree 15,
over the interior of the symmetric cube in 3D,
by Hong Xiao and Zydrunas Gimbutas.
-
cube_arbq_rule_test
-
cube_exactness,
a C code which
investigates the polynomial exactness of quadrature rules
over the interior of a cube in 3D.
-
cube_exactness_test
-
cube_felippa_rule,
a C code which
returns a Felippa quadrature rules for approximating integrals
over the interior of a cube in 3D.
-
cube_felippa_rule_test
-
cube_grid,
a C code which
computes a grid of points
over the interior of a cube in 3D.
-
cube_grid_test
-
cube_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of the unit cube in 3D.
-
cube_integrals_test
-
cube_monte_carlo,
a C code which
applies a Monte Carlo method to estimate the integral of a function
over the interior of the unit cube in 3D.
-
cube_monte_carlo_test
-
cuda_loop,
a C code which
shows how, in a CUDA program running on a Graphics Processing
Unit (GPU), the choice of block and thread factors determines
the allocation of tasks to processors.
-
cuda_loop_test
-
cycle_brent,
a C code which
carries out an iterated function evaluation, and seeks to determine
the nearest element of a cycle, and the cycle length,
using the Brent method.
-
cycle_brent_test
-
cycle_floyd,
a C code which
carries out an iterated function evaluation, and seeks to determine
the nearest element of a cycle, and the cycle length,
using the Floyd method.
-
cycle_floyd_test
-
cyclic_reduction,
a C code which
solves a tridiagonal linear system using cyclic reduction;
-
cyclic_reduction_test
-
differ,
is given function values at equally spaced locations, and the
order of a derivative, and uses the finite difference method (FDM)
to compute a linear combination of these function values which
approximated that derivative.
-
differ_test
-
dijkstra,
a C code which
implements a simple version of the Dijkstra minimum distance algorithm
for graphs.
-
dijkstra_test
-
dijkstra_openmp,
a C code which
uses OpenMP to parallelize a simple example of the Dijkstra
minimum distance algorithm for graphs.
-
dijkstra_openmp_test
-
discrete_pdf_sample_2d,
a C code 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.
-
discrete_pdf_sample_2d_test
-
disk_grid,
a C code which
computes grid points within the interior of
a disk of user specified radius and center in 2D,
using gnuplot() to create an image of the grid.
-
disk_grid_test
-
disk_monte_carlo,
a C code which
applies a Monte Carlo method to estimate integrals of a function
over the interior of the general disk in 2D;
-
disk_monte_carlo_test
-
disk_rule,
a C code which
computes quadrature rules for the general disk in 2D.
-
disk_rule_test
-
disk01_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of the unit disk in 2D.
-
disk01_integrals_test
-
disk01_monte_carlo,
a C code which
applies a Monte Carlo method to estimate integrals of a function
over the interior of the unit disk in 2D;
-
disk01_monte_carlo_test
-
disk01_positive_monte_carlo,
a C code which
applies a Monte Carlo method to estimate integrals of a function
over the interior of the unit positive disk in 2D;
-
disk01_positive_monte_carlo_test
-
disk01_rule,
a C code which
computes quadrature rules for the unit disk in 2D, that is, the
interior of the circle of radius 1 and center (0,0).
-
disk01_rule_test
-
dislin_test,
a C code which
uses dislin() to create a variety of graphics.
-
divdif,
a C code which
creates, prints and manipulates divided difference polynomials from
a table of values (x,f(x)). The code can compute the coefficients of
the Newton and power sum forms of the interpolating polynomial. It
can compute the derivative or antiderivate polynomial. It can compute
the form of the Lagrange basis polynomials. It can compute the
points and weights for Newton Cotes quadrature rules. It can compute
the weights for a Lagrange interpolation scheme.
-
divdif_test
-
doomsday,
a C code which
is given the year, month and day of a date, and uses
the doomsday algorithm of John Conway to determine
the corresponding day of the week.
-
doomsday_test
-
dream,
a C code which
implements the DREAM algorithm for accelerating
Markov Chain Monte Carlo (MCMC) convergence using differential
evolution,
using five user functions to define the problem, by Guannan Zhang.
-
dream_test
-
duel_simulation,
a C code which
simulates N repetitions of a duel between two players, each of
whom has a known firing accuracy.
-
duel_simulation_test
-
edge,
a C code which
defines some test functions in 1D, 2D and 3D
for the detection of edges or discontinuities,
and using gnuplot() to display the curves or surfaces.
-
edge_test
-
eigs,
a C code which
computes the eigenvalues and
eigenvectors of a matrix.
-
eigs_test
-
eispack,
a C code which
carries out eigenvalue computations.
It includes a function to compute the singular value
decomposition (SVD) of a rectangular matrix.
superseded by lapack();
-
eispack_test
-
ellipse,
a C code which
carries out geometric calculations for ellipses, including
area, distance to a point, eccentricity, perimeter, points along the
perimeter, random sampling, conversion between standard and quadratic
forms.
-
ellipse_test
-
ellipse_grid,
a C code which
computes grid points
over the interior of an ellipse in 2D.
-
ellipse_grid_test
-
ellipse_monte_carlo,
a C code which
uses the Monte Carlo method to estimate the value of integrals
over the interior of an ellipse in 2D.
-
ellipse_monte_carlo_test
-
ellipsoid,
a C code which
carries out geometric calculations for ellipsoids, including
area, random sampling, conversion between standard and quadratic
forms.
-
ellipsoid_test
-
ellipsoid_grid,
a C code which
computes a grid of points
over the interior of an ellipsoid in 3D.
-
ellipsoid_grid_test
-
ellipsoid_monte_carlo,
a C code which
uses the Monte Carlo method to estimate the value of integrals
over the interior of an ellipsoid in M dimensions.
-
ellipsoid_monte_carlo_test
-
elliptic_integral,
a C code which
evaluates complete elliptic integrals of first, second and third kind,
using the Carlson elliptic integral functions.
-
elliptic_integral_test
-
euler,
a C code which
solves one or more ordinary differential equations (ODE)
using the forward Euler method.
-
euler_test
-
exactness,
a C code which
investigates the exactness of quadrature rules that estimate the
integral of a function with a density, such as 1, exp(-x) or
exp(-x^2), over an interval such as [-1,+1], [0,+oo) or (-oo,+oo).
-
exactness_test
-
f77split,
a C code which
splits a file containing
multiple FORTRAN77 routines into separate files;
-
f77split_test
-
f90split,
a C code which
splits a file containing multiple FORTRAN90 routines
into separate files;
-
f90split_test
-
fair_dice_simulation,
a C code which
simulates N tosses of 2 dice, making a histogram of the results.
-
fair_dice_simulation_test
-
fd_predator_prey,
a C code which
solves a pair of predator prey ordinary differential equations (ODE)
using a finite difference method (FDM) approximation.
-
fd_predator_prey_test
-
fd1d_advection_diffusion_steady,
a C code which
applies the finite difference method (FDM) to solve the
steady advection diffusion equation v*ux-k*uxx=0 in
one spatial dimension, with constant velocity v and diffusivity k,
writing graphics files for processing by gnuplot().
-
fd1d_advection_diffusion_steady_test
-
fd1d_advection_ftcs,
a C code which
applies the finite difference method (FDM) to solve the time-dependent
advection equation ut = - c * ux in one spatial dimension, with
a constant velocity, using the forward time centered space (FTCS)
difference method, writing graphics files for processing by gnuplot().
-
fd1d_advection_ftcs_test
-
fd1d_advection_lax,
a C code which
applies the finite difference method (FDM) to solve the time-dependent
advection equation ut = - c * ux in one spatial dimension, with
a constant velocity, using the Lax method to approximate the
time derivative, writing graphics files for processing by gnuplot().
-
fd1d_advection_lax_test
-
fd1d_advection_lax_wendroff,
a C code which
applies the finite difference method (FDM) to solve the time-dependent
advection equation ut = - c * ux in one spatial dimension, with
a constant velocity, using the Lax-Wendroff method to approximate the
time derivative,
writing graphics files for processing by gnuplot().
-
fd1d_advection_lax_wendroff_test
-
fd1d_burgers_lax,
a C code which
applies the finite difference method (FDM) and the Lax Wendroff method
to solve the non-viscous time-dependent Burgers equation
in one spatial dimension.
-
fd1d_burgers_lax_test
-
fd1d_burgers_leap,
a C code which
applies the finite difference method (FDM) and the leapfrog approach
to solve the non-viscous time-dependent Burgers equation
in one spatial dimension.
-
fd1d_burgers_leap_test
-
fd1d_bvp,
a C code which
applies the finite difference method (FDM)
to a two point boundary value problem (BVP) in one spatial dimension.
-
fd1d_bvp_test
-
fd1d_heat_explicit,
a C code which
implements a finite difference method (FDM), explicit in time, of the
time dependent 1D heat equation;
-
fd1d_heat_explicit_test
-
fd1d_heat_implicit,
a C code which
implements a finite difference method (FDM), implicit in time, of the
time dependent 1D heat equation;
-
fd1d_heat_implicit_test
-
fd1d_heat_steady,
a C code which
implements a finite difference method (FDM) for the steady
time-independent 1D heat equation;
-
fd1d_heat_steady_test
-
fd1d_wave,
a C code which
applies the finite difference method (FDM) to solve the time-dependent
wave equation in one spatial dimension.
-
fd1d_wave_test
-
fd2d_heat_steady,
a C code which
implements a finite difference method (FDM) for the steady
time-independent 2D heat equation;
-
fd2d_heat_steady_test
-
fem_basis,
a C code which
defines and evaluates finite element method (FEM) basis functions
for any degree in an M-dimensional simplex: 1D interval, 2D triangle,
3D tetrahedron, and higher dimensional generalizations.
-
fem_basis_test
-
fem_io,
a C code which
reads or writes FEM files,
which describe the nodes, elements, and function values
associated with a finite element method (FEM) model;
-
fem_io_test
-
fem_to_gmsh,
a C code which
reads a pair of FEM files defining node coordinates and elements,
of a 1D, 2D or 3D mesh, namely
a file of node coordinates and a file of elements defined by
node indices, and creates a gmsh() mesh file.
-
fem_to_gmsh_test
-
fem_to_triangle,
a C code which
reads FEM files defining a 2D mesh of triangles, namely
a file of node coordinates and a file of elements defined by
node indices, and creates a corresponding pair of node
and element files for use by the triangle() program of
Jonathan Shewchuk.
-
fem_to_triangle_test
-
fem_to_xml,
reads a pair of FEM files defining node coordinates and elements,
of a 1D, 2D or 3D mesh, namely
a file of node coordinates and a file of elements defined by
node indices, and creates a corresponding XML file for input
to DOLFIN or FENICS.
-
fem_to_xml_test
-
fem1d,
a C code which
applies the finite element method (FEM),
using piecewise linear basis functions, to a linear
two point boundary value problem (BVP) in 1D;
-
fem1d_test
-
fem1d_adaptive,
a C code which
uses an adaptive mesh when applying the finite element method (FEM),
with piecewise linear basis functions, to a linear
two point boundary value problem (BVP) in 1D;
-
fem1d_adaptive_test
-
fem1d_bvp_linear,
a C code which
applies the finite element method (FEM),
with piecewise linear elements,
to a two point boundary value problem (BVP) in one spatial dimension,
and compares the computed and exact solutions
with the L2 and seminorm errors.
-
fem1d_bvp_linear_test
-
fem1d_bvp_quadratic,
a C code which
applies the finite element method (FEM),
with piecewise quadratic elements,
to a two point boundary value problem (BVP) in one spatial dimension,
and compares the computed and exact solutions
with the L2 and seminorm errors.
-
fem1d_bvp_quadratic_test
-
fem1d_heat_steady,
a C code which
implements the finite element method (FEM) for the steady
(time independent) 1D heat equation;
-
fem1d_heat_steady_test
-
fem1d_lagrange,
a C code which
sets up the matrices and vectors associated with the finite element
method (FEM) solution of a boundary value problem (BVP) -u''+u=f(x),
using Lagrange basis polynomials.
-
fem1d_lagrange_test
-
fem1d_nonlinear,
a C code which
applies the finite element method (FEM),
with piecewise linear basis functions, to a nonlinear
two point boundary value problem (BVP) in 1D;
-
fem1d_nonlinear_test
-
fem1d_pack,
a C code which
contains utilities for 1D finite element method (FEM) calculations.
-
fem1d_pack_test
-
fem1d_pmethod,
a C code which
applies the p-method version of
the finite element method (FEM) to a linear
two point boundary value problem (BVP) in 1D;
-
fem1d_pmethod_test
-
fem1d_project,
a C code which
projects data into a finite element space, including the least squares
approximation of data, or the projection of a
finite element method (FEM) solution from one mesh to another.
-
fem1d_project_test
-
fem1d_sample,
a C code which
samples a scalar or vector finite element function of one variable,
defined by FEM files,
returning interpolated values at the sample points.
-
fem1d_sample_tesst
-
fem2d_bvp_linear,
a C code which
applies the finite element method (FEM), with piecewise linear elements,
to a 2D boundary value problem (BVP) in a rectangle,
and compares the computed and exact solutions
with the L2 and seminorm errors.
-
fem2d_bvp_linear_test
-
fem2d_bvp_quadratic,
a C code which
applies the finite element method (FEM),
with piecewise quadratic elements,
to a 2D boundary value problem (BVP) in a rectangle,
and compares the computed and exact solutions
with the L2 and seminorm errors.
-
fem2d_bvp_quadratic_test
-
fem2d_bvp_serene,
a C code which
applies the finite element method (FEM), with serendipity elements,
to a 2D boundary value problem (BVP) in a rectangle,
and compares the computed and exact solutions
with the L2 and seminorm errors.
-
fem2d_bvp_serene_test
-
fem2d_pack,
a C code which
implements various 2D finite element method (FEM) calculations;
-
fem2d_pack_test
-
fem2d_poisson_rectangle,
a C code which
solves the 2D Poisson equation on a rectangle,
using the finite element method (FEM),
and piecewise quadratic triangular elements.
-
fem2d_poisson_rectangle_test
-
fem2d_poisson_rectangle_linear,
a C code which
solves the 2D Poisson equation on a rectangle,
using the finite element method (FEM),
and piecewise linear triangular elements.
-
fem2d_poisson_rectangle_linear_test
-
fern_opengl,
a C code which
uses OpenGL to display the Barnsley fractal fern.
-
feynman_kac_1d,
a C code which
demonstrates the use of the Feynman-Kac algorithm
to solve the Poisson equation in a 1D interval by averaging
stochastic paths to the boundary.
-
feynman_kac_1d_test
-
feynman_kac_2d,
a C code which
demonstrates the use of the Feynman-Kac algorithm
to solve the Poisson equation in a 2D ellipse by averaging
stochastic paths to the boundary.
-
feynman_kac_2d_test
-
feynman_kac_3d,
a C code which
demonstrates the use of the Feynman-Kac algorithm
to solve the Poisson equation in a 3D ellipsoid by averaging
stochastic paths to the boundary.
-
feynman_kac_3d_test
-
fft_openmp,
a C code which
demonstrates the computation of a Fast Fourier Transform (FFT)
in parallel, using OpenMP.
-
fft_openmp_test
-
fft_serial,
a C code which
computes a Fast Fourier Transform (FFT), and is intended as
a starting point for implementing an OpenMP parallel version.
-
fft_serial_test
-
fftpack4,
a C code which
implements the Fast Fourier Transform (FFT)
by Paul Swarztrauber and Dick Valent, translated by Andrew Fernandes;
-
fftpack4_test
-
fftw_test
-
file_name_sequence,
a C code which
generates a sequence of filenames, which can
be useful when generating a sequence of still snapshots
to be animated later.
-
file_name_sequence_test
-
files_multiple,
a C code which
opens multiple output files at one time,
and write data to any one specific file it chooses.
-
files_multiple_test
-
filon_rule,
a C code which
uses Filon's method to approximate integrals which include an
oscillatory factor of sin(k*x) or cos(k*x).
-
filon_rule_test
-
filum,
a C code which
performs various operations with files;
-
filum_test
-
fire_simulation,
a C code which
simulates a forest fire over a rectangular array of trees,
starting at a single random location. It is intended as a starting
point for the development of a parallel version.
-
fire_simulation_test
-
fisher_exact,
a C code which
returns an exact solution of the Kolmogorov Petrovsky Piskonov Fisher
partial differential equation (PDE) ut=uxx+u*(1-u).
-
fisher_exact_test
-
flame_exact,
a C code which
returns the exact solution of an ordinary differential equation (ODE)
which models the growth of a ball of flame in a combustion process.
The exact solution is defined in terms of the Lambert W function.
-
flame_exact_test
-
flood_opengl,
a C code which
uses OpenGL to allow the user to select regions of a 2D image
and flood them with color,
by Art Wetzel.
-
floyd,
a C code which
implements the Floyd algorithm for finding the shortest distance
between pairs of nodes on a directed graph.
-
floyd_test
-
fn,
a C code which
evaluates elementary and special functions using
Chebyshev polynomials; functions include Airy, Bessel I, J, K and Y,
beta, confluent hypergeometric, error, gamma, log gamma, Pochhammer,
Spence; integrals include hyperbolic cosine, cosine, Dawson,
exponential, logarithmic, hyperbolic sine, sine;
by Wayne Fullerton.
-
fn_test
-
football_dynamic,
a C code which
uses dynamic programming to count the ways of achieving
a given score in football.
-
football_dynamic_test
-
freefem_msh_io,
a C code which
reads and writes files used by the FreeFem++ finite element program
to store mesh information.
-
freefem_msh_io_test
-
fsolve,
a C code which
solves systems of nonlinear equations,
inspired by the fsolve() function in minpack(),
with special interfaces fsolve_bdf2(), fsolve_be() and
fsolve_tr() for handling systems associated
with implicit ODE solvers of type bdf2, backward Euler,
midpoint, or trapezoidal.
-
fsolve_test
-
functions_openmp,
a C code which
demonstrates a few of the OpenMP functions.
-
functions_openmp_test
-
gauss_seidel,
a C code which
implements the Gauss-Seidel iteration for linear systems.
-
gauss_seidel_test
-
gcc_intrinsics_test,
a C code which
demonstrates the intrinsic functions made available
by the Gnu gcc compiler for C.
-
gegenbauer_cc,
a C code which
computes the Gegenbauer weighted integral of a function f(x)
using a Clenshaw-Curtis approach.
-
gegenbauer_cc_test
-
gegenbauer_polynomial,
a C code which
evaluates the Gegenbauer polynomial and associated functions.
-
gegenbauer_polynomial_test
-
geometry,
a C code which
performs geometric calculations in 2, 3 and M dimensional space,
including the computation of angles, areas, containment, distances,
intersections, lengths, and volumes.
-
geometry_test
-
geompack,
a C code which
computes Delaunay triangulations, Voronoi diagrams,
and other information, by Barry Joe.
-
geompack_test
-
gl_fast_rule,
a C code which
carries out the rapid computation of the Kth value and weight of
an N point Gauss-Legendre quadrature rule,
by Ignace Bogaert.
-
gl_fast_rule_test
-
glomin,
a C code which
finds a global minimum of a scalar function of a scalar variable,
without the use of derivative information,
by Richard Brent.
-
glomin_test
-
glomin_nogoto,
a C code which
finds a global minimum of a scalar function of a scalar variable,
without the use of derivative information,
by Richard Brent. This version, rewritten by Hans Bieshaar,
avoids the use of the goto
statement, and the alternative duplication of some statements.
-
glomin_nogoto_test
-
gmsh_io,
a C code which
reads or writes some of the files created by gmsh()
for 1D, 2D or 3D meshes
used by the finite element method (FEM).
-
gmsh_io_test
-
gmsh_to_fem,
a C code which
reads a mesh data file created by gmsh()
and writes a pair of node and element files that correspond
to the FEM format.
-
gmsh_to_fem_test
-
gnuplot_test,
a C code which
uses gnuplot() to create various kinds of plots.
-
gnuplot_i,
a C code which
allows an executing C, C++ or Fortran program to interact with
gnuplot(),
by Nicholas Devillard.
-
gnuplot_i_test
-
gprof_test,
a C code which
uses the gprof() profiling tool.
-
graphics_dislin_test,
a C code which
creates various kinds of plots using dislin().
-
graphics_gnuplot_test,
a C code which
creates plots using gnuplot().
-
gsl_test,
a C code which
uses the GNU Scientific Library (GSL), which
includes utilities to handle
Basis splines, BLAS (Basic Linear Algebra Subprograms), Chebyshev
Approximation, Complex numbers, Ordinary Differential Equations (ODE),
Discrete Hankel Transforms, Discrete Wavelet Transforms, Eigenvalues
and Eigenvectors, Fast Fourier Transforms (FFT), Histograms, IEEE
Floating Point Calculations, Interpolation, Least Squares Fitting,
Linear Algebra, Minimization, Monte Carlo Integration, N-Tuples,
Numerical Differentiation, Permutations, Physical Constants, Quadrature
(Numerical Integration), Quasi-Random sequences, Random Distributions,
Random Numbers, Root finding of general nonlinear equations,
Roots of Polynomials, Running Statistics, Series Acceleration,
Simulated Annealing, Sorting, Sparse Matrices, Special Functions,
Statistics, Vectors and matrices.
-
haar_transform,
a C code which
computes the Haar transform of 1d or 2d data.
-
haar_transform_test
-
halton,
a C code which
computes elements of a Halton Quasi Monte Carlo (QMC) sequence,
using a simple interface.
-
halton_test
-
hammersley,
a C code which
computes elements of a Hammersley Quasi Monte Carlo (QMC) sequence,
using a simple interface.
-
hammersley_test
-
hankel_cholesky,
a C code which
computes the upper Cholesky factor R of a
symmetric positive definite (SPD) matrix H so that H = R' * R.
-
hankel_cholesky_test
-
hankel_spd,
a C code which
computes a lower triangular matrix L which is the Cholesky factor
of a symmetric positive definite (SPD) Hankel matrix H, that is,
H = L * L'.
-
hankel_spd_test
-
hdf5_test,
a C code which
demonstrates the use of the HDF5 data format.
-
heat_mpi,
a C code which
demonstrates the use of the Message Passing Interface (MPI),
by solving the 1D time dependent heat equation.
-
heat_mpi_test
-
heated_plate,
a C code which
solves the steady state heat equation in a 2D
rectangular region, and is intended as
a starting point for implementing an OpenMP parallel version.
-
heated_plate_test
-
heated_plate_openmp,
a C code which
solves the steady time-independent heat equation in a 2D
rectangular region, using OpenMP to run in parallel.
-
heated_plate_openmp_test
-
hello,
a C code which
prints out "Hello, world!".
-
hello_test
-
hello_mpi,
a C code which
prints out "Hello, world!" using MPI for parallel programming.
-
hello_mpi_test
-
hello_openmp,
a C code which
prints out "Hello, world!" within the OpenMP parallel programming
environment.
-
hello_openmp_test
-
helmholtz_openmp,
a C code which
solves the discretized Helmholtz equation in 2D
using the OpenMP application program interface
for carrying out parallel computations in a shared memory environment.
-
helmholtz_openmp_test
-
hermite_cubic,
a C code which
computes the value, derivatives or integral
of a Hermite cubic polynomial, or manipulate an interpolant
made up of piecewise Hermite cubic polynomials.
-
hermite_cubic_test
-
hermite_exactness,
a C code which
tests the polynomial exactness of Gauss-Hermite quadrature rules
for approximating the integral of a function with density exp(-x^2)
over the interval (-oo,+oo).
-
hermite_exactness_test
-
hermite_integrands,
a C code which
defines test integrands for Hermite integrals
with density exp(-x^2) over the interval (-oo,+oo).
-
hermite_integrands_test
-
hermite_interpolant,
a C code which
computes the Hermite interpolant, a polynomial that matches
function values and derivatives.
-
hermite_interpolant_test
-
hermite_polynomial,
a C code which
evaluates the physicist's Hermite polynomial,
the probabilist's Hermite polynomial,
the Hermite function, and related functions.
-
hermite_polynomial_test
-
hermite_product_polynomial,
a C code which
defines Hermite product polynomials, creating a multivariate
polynomial as the product of univariate Hermite polynomials.
-
hermite_product_polynomial_test
-
hermite_rule,
a C code which
computes and writes out a Gauss-Hermite quadrature rule
for approximating the integral of a function with density exp(-x^2)
over the interval (-oo,+oo).
-
hermite_rule_test
-
hexahedron_jaskowiec_rule,
a C code which
returns a symmetric Jaskowiec quadrature rule for the hexahedron,
with exactness up to total degree 21.
-
hexahedron_jaskowiec_rule_test
-
hexahedron_witherden_rule,
a C code which
returns a symmetric Witherden quadrature rule for the hexahedron,
with exactness up to total degree 11.
-
hexahedron_witherden_rule_test
-
high_card_simulation,
a C code which
simulates a situation in which you see the cards in a deck one by one,
and must select the one you think is the highest and stop;
the code uses gnuplot() to create a graph of the results.
-
high_card_simulation_test
-
hilbert_curve,
a C code which
computes the sequence of discrete Hilbert curves whose limit
is a space-filling curve.
-
hilbert_curve_test
-
histogram_data_2d_sample,
a C code which
demonstrates how to construct a Probability Density Function (PDF)
from sample data over a 2D domain,
and then to use that PDF to create new samples.
-
histogram_data_2d_sample_test
-
humps,
a C code which
evaluates the humps function, its first and second derivatives
and its antiderivative.
-
humps_test
-
hyper_2f1,
a C code which
evaluates the hypergeometric functions 2F1(a,b,c;x) for real
parameters a, b, c, and argument x,
based on the Gnu Scientific Library function
gsl_sf_hyperg_2F1().
-
hyper_2f1_test
-
hyperball_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of the unit hyperball in M dimensions.
-
hyperball_integrals_test
-
hyperball_monte_carlo,
a C code which
applies a Monte Carlo method to estimate the integral of a function
over the interior of the unit ball in M dimensions;
-
hyperball_monte_carlo_test
-
hypercube_exactness,
a C code which
tests the polynomial exactness of a quadrature rule
over the interior of the unit hypercube in M dimensions.
-
hypercube_exactness_test
-
hypercube_grid,
a C code which
computes a grid of points
over the interior of a hypercube in M dimensions.
-
hypercube_grid_test
-
hypercube_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of the unit hypercube in M dimensions.
-
hypercube_integrals_test
-
hypercube_monte_carlo,
a C code which
applies a Monte Carlo method to estimate the integral of a function
over the interior of the unit hypercube in M dimensions.
-
hypercube_monte_carlo_test
-
hypersphere,
a C code which
carries out various operations for an M dimensional hypersphere,
including converting between Cartesian and spherical coordinates,
stereographic projection, sampling the surface of the sphere, and
computing the surface area and volume.
-
hypersphere_test
-
hypersphere_integrals,
a C code which
returns the exact value of the integral of any monomial
over the surface of the unit hypersphere in M dimensions.
-
hypersphere_integrals_test
-
hypersphere_monte_carlo,
a C code which
applies a Monte Carlo method to estimate the integral of a function
on the surface of the unit sphere in M dimensions;
-
hypersphere_monte_carlo_test
-
i4lib,
a C code which
contains many utility routines, using single precision integer (I4)
arithmetic.
-
i4lib_test
-
i8lib,
a C code which
contains many utility routines, using double precision integer (I8)
arithmetic.
-
i8lib_test
-
ice_io,
a C code which
reads or writes an ICE dataset, which defines a 3D grid,
using the netcdf() file format.
-
ice_io_test
-
ice_to_medit,
a C code which
reads a netcdf() file containing an ICE dataset and rewrites the
information as a medit() MESH file.
-
ice_to_medit_test
-
image_denoise,
a C code which
applies simple filtering operations to a noisy image.
-
image_denoise_test
-
image_denoise_openmp,
a C code which
applies simple filtering operations to a noisy image,
carrying out the operation in parallel using OpenMP.
-
image_denoise_openmp_test
-
image_edge,
a C code which
demonstrates a simple procedure for edge detection in images.
-
image_edge_test
-
index,
a C code which
converts a multidimensional vector index
to a one-dimensional vector index;
it can handle zero and one based indexing schemes,
as well as column major and row major conventions.
-
index_test
-
interp,
a C code which
parameterizes or interpolates data;
-
interp_test
-
is,
a C code which
is a serial version of the nas Integer Sort (IS) Parallel Benchmark,
which is intended as the starting point for the development
of a parallel version.
-
is_test
-
is_prime,
a C code which
determines if a given integer n is prime, using various
versions of the sieve of Eratosthenes.
-
is_prime_test
-
isbn,
a C code which
determines the check digit for an International Standard Book Number
or report whether a given ISBN is valid.
-
isbn_test
-
ising_2d_simulation,
a C code which
simulates evolution of a 2D array of positive and negative charges,
each of which is likely to flip to be in agreement with neighbors,
using gnuplot() to display the initial and final configurations.
-
ising_2d_simulation_test
-
jacobi,
a C code which
implements the Jacobi iteration for the iterative solution of
linear systems.
-
jacobi_test
-
jacobi_eigenvalue,
a C code which
implements the Jacobi iteration for the iterative determination
of the eigenvalues and eigenvectors of a real symmetric matrix.
-
jacobi_eigenvalue_test
-
jacobi_openmp,
a C code which
uses OpenMP to parallelize a Jacobi iteration solving A*x=b.
-
jacobi_openmp_test
-
jacobi_polynomial,
a C code which
evaluates the Jacobi polynomial and associated functions.
-
jacobi_polynomial_test
-
julia_set,
a C code which
generates a TGA or TARGA graphics file of a Julia set.
-
julia_set_test
-
julia_set_openmp,
a C code which
produces an image of a Julia set, using OpenMP to carry out the
computation in parallel.
-
julia_set_openmp_test
-
kdv_exact,
a C code which
evaluates exact solutions of the Korteweg-deVries (KdV)
partial differential equation (PDE).
-
kdv_exact_test
-
kmeans,
a C code which
handles the K-Means problem,
which organizes a set of N points in M dimensions into K clusters;
-
kmeans_test
-
knapsack_01_brute,
a C code which
uses brute force to solve small versions of the 0/1 knapsack problem;
-
knapsack_01_brute_test
-
kronrod_rule,
a C code which
computes a Gauss and Gauss-Kronrod pair of quadrature rules
of arbitrary order,
by Robert Piessens, Maria Branders.
-
kronrod_rule_test
-
ladders,
a C code which
transforms one five letter word into another, by changing
one letter at a time, using only legitimate English words. This
puzzle was invented by Lewis Carroll, who called it "Doublets", but
it is also known as "Word Ladders" or "Word Golf". The code
is by Donald Knuth, as part of his "Stanford Graph Base".
-
lagrange_approx_1d,
a C code which
defines and evaluates the Lagrange polynomial p(x) of degree m
which approximates a set of nd data points (x(i),y(i)).
-
lagrange_approx_1d_test
-
lagrange_interp_1d,
a C code which
defines and evaluates the Lagrange polynomial p(x)
which interpolates a set of data depending on a 1D argument,
so that p(x(i)) = y(i).
-
lagrange_interp_1d_test
-
lagrange_interp_2d,
a C code which
defines and evaluates the Lagrange polynomial p(x,y)
which interpolates a set of data depending on a 2D argument
that was evaluated on a product grid,
so that p(x(i),y(j)) = z(i,j).
-
lagrange_interp_2d_test
-
lagrange_interp_nd,
a C code which
defines and evaluates the Lagrange polynomial p(x) which
interpolates a set of data depending on a multidimensional argument
evaluated on a product grid,
so that p(x(i)) = z(i).
-
lagrange_interp_nd_test
-
laguerre_exactness,
a C code which
tests the polynomial exactness of Gauss-Laguerre quadrature rules
for integrating functions with density exp(-x) over [0,+oo).
-
laguerre_exactness_test
-
laguerre_integrands,
a C code which
implements test problems for
approximate integration over a semi-infinite interval,
often carried out using Gauss-Laguerre quadrature.
-
laguerre_integrands_test
-
laguerre_polynomial,
a C code which
evaluates the Laguerre polynomial,
the generalized Laguerre polynomials,
and the Laguerre function.
-
laguerre_polynomial_test
-
laguerre_rule,
a C code which
computes and writes out a
Gauss-Laguerre quadrature rule for approximating the integral
of a function with density exp(-x) over the interval [0,+oo).
-
laguerre_rule_test
-
lambert_w,
a C code which
evaluates Lambert's W function.
-
lambert_w_test
-
lapack_test,
a C code which
calls lapack(), which
is a Fortran library, containing
a standard linear algebra package for solving linear systems,
computing matrix factorizations, and solving eigenvalue problems.
A precompiled copy of the lapack() library is often available
on most scientific computing systems. This code illustrates how
a C calling program interacts with a Fortran library.
-
laplace_mpi,
a C code which
solves the Laplace equation on a rectangle,
using the Message Passing Interface (MPI) for parallel execution.
-
laplace_mpi_test
-
laplacian_matrix,
a C code which
carries out computations related to the discrete
Laplacian operator, including full or sparse evaluation,
evaluation for unequally spaced data sampling points,
application to a set of data samples, solution of associated
linear systems, eigenvalues and eigenvectors, and extension
to 2D and 3D geometry.
-
laplacian_matrix_test
-
latin_cover,
a C code which
produces N Latin squares which cover an NxN square, or NxN Latin cubes
which cover an NxNxN cube.
-
latin_cover_test
-
latin_random,
a C code which
computes Latin Random Squares of N points in M dimensions;
-
latin_random_test
-
latinize,
a C code which
adjusts N points in M dimensions to form a Latin Hypercube;
-
latinize_test
-
lebesgue,
a C code which
is given a set of nodes in 1D, and
plots the Lebesgue function, and estimates the Lebesgue constant,
which measures the maximum magnitude of the potential error
of Lagrange polynomial interpolation.
-
lebesgue_test
-
legendre_exactness,
a C code which
tests the monomial exactness of quadrature rules for the Legendre
problem of integrating a function with density 1
over the interval [-1,+1].
-
legendre_exactness_test
-
legendre_fast_rule,
a C code which
uses a fast, order N, algorithm to compute
a Gauss-Legendre quadrature rule of given order to
integrate a function with density 1
over the interval [-1,+1].
-
legendre_fast_rule_test
-
legendre_polynomial,
a C code which
evaluates the Legendre polynomial and associated functions.
-
legendre_polynomial_test
-
legendre_product_polynomial,
a C code which
defines Legendre product polynomials, creating a multivariate
polynomial as the product of univariate Legendre polynomials.
-
legendre_product_polynomial_test
-
legendre_rule,
a C code which
writes out a Gauss-Legendre quadrature rule of given order to
integrate a function with density 1
over the interval [-1,+1].
-
legendre_rule_test
-
legendre_shifted_polynomial,
a C code which
evaluates the shifted Legendre polynomial, with the domain [0,1].
-
legendre_shifted_polynomial_test
-
levenshtein_distance,
a C code which
returns the Levenshtein distance between two strings.
-
levenshtein_distance_test
-
levenshtein_matrix,
a C code which
returns the Levenshtein distance matrix defined by two strings.
-
levenshtein_matrix_test
-
life_opengl,
a C code which
uses OpenGL to display the evolution of John Conway's Game of life,
by Simon Green.
-
life_serial,
a C code which
computes a few steps of the evolution of John Conway's Game of Life,
intended as a starting point for implementing a parallel version.
-
life_serial_test
-
lights_out_game,
a C code which
sets up the "Lights Out" puzzle, lighting up a few squares on
a grid. An interactive user must then try to press squares
in such a way that all the lights are turned off.
The OpenGL graphics system is used.
-
line_cvt_lloyd,
a C code which
applies the Lloyd iteration repeatedly to a set of N points,
to compute a Centroidal Voronoi Tessellation (CVT)
over the interior of a line segment in 1D.
-
line_cvt_lloyd_test
-
line_fekete_rule,
a C code which
estimates the location of N Fekete points, for polynomial
interpolation or quadrature,
over the interior of a line segment in 1D.
-
line_fekete_rule_test
-
line_felippa_rule,
a C code which
returns a Felippa quadrature rules for approximating integrals
over the interior of a line segment in 1D.
-
line_felippa_rule_test
-
line_grid,
a C code which
computes a grid of points
over the interior of a line segment in 1D.
-
line_grid_test
-
line_integrals,
a C code which
returns the exact value of the integral of any monomial
over the length of the unit line in 1D.
-
line_integrals_test
-
line_monte_carlo,
a C code which
applies a Monte Carlo method to estimate the integral of a function
over the length of the unit line in 1D.
-
line_monte_carlo_test
-
line_ncc_rule,
a C code which
computes a Newton Cotes Closed (NCC) quadrature rule,
using equally spaced points,
over the interior of a line segment in 1D.
-
line_ncc_rule_test
-
line_nco_rule,
a C code which
computes a Newton Cotes Open (NCO) quadrature rule,
using equally spaced points,
over the interior of a line segment in 1D.
-
line_nco_rule_test
-
linear_algebra,
C codes which
carry out various linear algebra operations for matrices
stored in a variety of formats.
-
linpack_bench,
a C code which
is a version of the LINPACK benchmark;
-
linpack_bench_test
-
linpack_d,
a C code which
factors matrices in a variety of formats, and solving the
associated linear systems, using double precision real arithmetic;
it includes a function to compute
the singular value decomposition (SVD) of a rectangular matrix.
The original version of this code is
by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.
-
linpack_d_test
-
llsq,
a C code which
solves the simple linear least squares (LLS) problem of finding the
formula of a straight line y=a*x+b which minimizes the
root-mean-square error to a set of N data points.
-
llsq_test
-
lobatto_polynomial,
a C code which
evaluates Lobatto polynomials similar to Legendre polynomials
except that they are 0 at both endpoints.
-
lobatto_polynomial_test
-
local_min,
a C code which
finds a local minimum of a scalar function of a scalar variable,
without the use of derivative information,
by Richard Brent.
-
local_min_test
-
local_min_rc,
a C code which
finds a local minimum of a scalar function of a scalar variable,
without the use of derivative information,
using reverse communication (RC),
by Richard Brent.
-
local_min_rc_test
-
log_normal,
a C code which
returns quantities related to the log normal Probability
Distribution Function (PDF).
-
log_normal_test
-
log_normal_truncated_ab,
a C code which
returns quantities related to the log normal Probability
Distribution Function (PDF) truncated to the interval [A,B].
-
log_normal_truncated_ab_test
-
logistic_exact,
a C code which
evaluates an exact solution of the logistic equation,
an ordinary differential equation (ODE)
which models population growth in the face of a limited carrying capacity.
-
logistic_exact_test
-
lorenz_ode,
a C code which
approximates solutions to the Lorenz system of ordinary differential
equations (ODE), creating output files that can be displayed
by gnuplot().
-
lorenz_ode_test
-
luhn,
a C code which
computes the Luhn check digit for a string, or verify a string,
as used for error detection in credit card numbers.
-
luhn_test
-
machar,
a C code which
dynamically computes the values of various machine characteristic
constants, by William Cody;
-
machar_test
-
machine,
a C code which
returns tabulated values of the constants associated
with computer arithmetic;
-
machine_test
-
makefile_test,
a C code which
shows how a makefile can
be used to manage the compilation and loading of a C code.
-
mandelbrot,
a C code which
generates an ASCII Portable Pixel Map (PPM) image of
the Mandelbrot set;
-
mandelbrot_test
-
mandelbrot_ascii,
a C code which
generates an ASCII text image of the Mandelbrot set,
using just two lines of C code.
-
mandelbrot_ascii_test
-
mandelbrot_openmp,
a C code which
generates an ASCII Portable Pixel Map (PPM) image of the
Mandelbrot fractal set, using OpenMP for parallel execution;
-
mandelbrot_openmp_test
-
mandelbrot_ppm,
a C code which
generates a binary Portable Pixel Map (PPM) image
of the Mandelbrot set, by Eric Weeks.
-
mandelbrot_ppm_test
-
mario,
a C code which
creates a sort of "needlepoint" image of Mario, as an array of
colored squares.
-
mario_test
-
matmul,
a C code which
carries out a matrix multiplication benchmark;
-
matmul_test
-
matrix_chain_brute,
a C code which
finds the cost of the most efficient ordering to use when
multiplying a sequence of matrices, using brute force.
-
matrix_chain_brute_test
-
matrix_chain_dynamic,
a C code which
finds the cost of the most efficient ordering to use when
multiplying a sequence of matrices, using dynamic programming.
-
matrix_chain_dynamic_test
-
matrix_exponential,
a C code which
demonstrates some simple approaches to the problem of computing the
exponential of a matrix.
-
matrix_exponential_test
-
md,
a C code which
carries out a molecular dynamics (MD) simulation, and is intended as
a starting point for implementing an OpenMP parallel version.
-
md_test
-
md_openmp,
a C code which
carries out a molecular dynamics (MD) simulation
in parallel using OpenMP.
-
md_openmp_test
-
medit_mesh_io,
a C code which
reads or writes medit() MESH files defining a finite element mesh.
-
medit_mesh_io_test
-
medit_to_fem,
a C code which
reads a medit() MESH file
and writes a corresponding pair of node and element files that
correspond to the FEM format.
-
medit_to_fem_test
-
medit_to_ice,
a C code which
reads a medit() MESH file containing an ICE dataset and rewrites the
information as a netcdf() file.
-
medit_to_ice_test
-
memory,
a C code which
declares and uses a sequence of larger and larger arrays, to see
what the memory limits are on a given computer.
-
memory_test
-
mesh_bandwidth,
a C code which
returns the geometric bandwidth associated with a mesh of
elements of any order and in a space of M dimensions.
-
mesh_bandwidth_test
-
metis_test
-
mgmres,
a C code which
applies the restarted Generalized Minimum Residual (GMRES) algorithm
to solve a sparse linear system, using Compressed Row Storage (CRS) or
sparse triplet (ST) format, by Lili Ju.
-
mgmres_test
-
mgs,
a C code which
is an example of legacy code, which the student is encouraged to
study, understand, and document.
This example is due to Diane O'Leary.
-
mgs_test
-
middle_square,
a C code which
implements the middle square algorithm for generating random integers.
This is a very early method, attributed to von Neumann, which actually
is deeply flawed, with short cycles.
-
middle_square_test
-
midpoint,
a C code which
solves one or more ordinary differential equations (ODE)
using the (implicit) midpoint method, with a version of
fsolve() handling the associated nonlinear equation,
and using a fixed time step.
-
midpoint_test
-
midpoint_adaptive,
a C code which
solves one or more ordinary differential equations (ODE)
using the (implicit) midpoint method, with fsolve() solving
the implicit equation, and an adaptive time step.
Plots of the solution and timestep history are created using gnuplot().
-
midpoint_adaptive_test
-
midpoint_explicit,
a C code which
solves one or more ordinary differential equations (ODE)
using the explicit midpoint method, also called the
modified Euler method.
-
midpoint_explicit_test
-
midpoint_fixed,
a C code which
solves one or more ordinary differential equations (ODE)
using the implicit midpoint method, applying a fixed point
iteration to solve the associated nonlinear equation.
-
midpoint_fixed_test
-
midpoint_gsl_test,
a C code which
calls the Gnu Scientific Library (GSL) implicit midpoint method
solver for ordinary differential equation (ODE), and uses
gnuplot() to plot the resulting solution.
-
minpack,
a C code which
solves a system of nonlinear equations,
by Jorge More, Danny Sorenson, Burton Garbow, Kenneth Hillstrom.
-
minpack_test
-
mixed_test,
a C code which
tests various mixed language programs.
-
mm_io,
a C code which
reads and writes a Matrix Market (MM) Sparse Matrix File;
-
mm_io_test
-
monomial,
a C code which
enumerates, lists, ranks, unranks and randomizes multivariate
monomials in a space of M dimensions, with total degree less than N,
equal to N, or lying within a given range.
-
monomial_test
-
monomial_value,
a C code which
evaluates a monomial in M dimensions.
-
monomial_value_test
-
mpi_test,
a C code which
uses the Message Passing Interface (MPI)
for parallel programming;
-
mri_to_ascii,
a C code which
converts the binary data in a Magnetic Resonance Imaging (MRI) file
to ASCII text.
-
mri_to_ascii_test
-
mri_to_pgm,
a C code which
converts the binary data in a Magnetic Resonance Imaging (MRI) file
to a sequence of Portable Gray Map (PGM) image files.
-
mri_to_pgm_test
-
multitask_mpi,
a C code which
demonstrates how to multitask, that is, to execute several unrelated
and distinct tasks simultaneously, using MPI for parallel execution.
-
multitask_mpi_test
-
multitask_openmp,
a C code which
demonstrates how to multitask, that is, to execute several unrelated
and distinct tasks simultaneously,
using OpenMP for parallel execution.
-
multitask_openmp_test
-
mxm,
a C code which
sets up a matrix multiplication problem A=B*C of arbitrary size,
and compares the time required for ijk, ikj, jik, jki, kij and kji
orderings of the loops.
-
mxm_test
-
mxm_openmp,
a C code which
computes a dense matrix product C=A*B,
using OpenMP for parallel execution.
-
mxm_openmp_test
-
mxm_serial,
a C code which
sets up a matrix multiplication problem A=B*C,
intended as a starting point for implementing a parallel version.
-
mxm_serial_test
-
naca,
a C code which
takes the parameters of certain NACA airfoils and returns the
coordinates of a sequence of points that outline the wing shape.
The points can be plotted with gnuplot().
-
naca_test
-
nas,
a C code which
runs the NASA kernel benchmark.
-
nas_test
-
navier_stokes_2d_exact,
a C code which
evaluates an exact solution to the incompressible time-dependent
Navier-Stokes equations (NSE) over an arbitrary domain in 2D.
-
navier_stokes_2d_exact_test
-
navier_stokes_3d_exact,
a C code which
evaluates an exact solution to the incompressible time-dependent
Navier-Stokes equations (NSE) over an arbitrary domain in 3D.
-
navier_stokes_3d_exact_test
-
nearest_interp_1d,
a C code which
interpolates a set of data using a piecewise constant interpolant
defined by the nearest neighbor criterion,
creating graphics files for processing by gnuplot().
-
nearest_interp_1d_test
-
netcdf_test
-
newton_interp_1d,
a C code which
finds a polynomial interpolant to data using Newton divided
differences.
-
newton_interp_1d_test
-
nintlib,
a C code which
implements approximate integration or quadrature in M dimensions;
-
nintlib_test
-
normal,
a C code which
implements random number generators (RNG)
for normally distributed values.
-
normal_test
-
ode,
a C code which
solves a system of ordinary differential equations (ODE),
by Shampine and Gordon;
-
ode_test
-
ode_moshier,
a C code which
implements the Adams-Bashforth-Moulton and Runge-Kutta (RK) methods of
solving systems of ordinary differential equations (ODE),
by Steven Moshier.
-
ode_moshier_test
-
openmp_test,
a C code which
uses OpenMP for parallel programming;
-
optimize_test
-
ornstein_uhlenbeck,
a C code which
approximates solutions of the Ornstein-Uhlenbeck
stochastic ordinary differential equation (SODE)
using the Euler method,
the Euler-Maruyama method, and the Milstein method,
and creating graphics files for processing by gnuplot().
-
ornstein_uhlenbeck_test
-
owen,
a C code which
evaluates the Owen T function;
-
owen_test
-
padua,
a C code which
returns the coordinates of the 2D Padua points,
as well as interpolation weights or quadrature weights,
and images of the points to be processed by gnuplot().
-
padua_test
-
partial_digest,
a C code which
solves the partial digest problem;
-
partial_digest_test
-
partition_brute,
a C code which
uses a brute force algorithm to seek solutions of the partition problem,
splitting a set of integers into two subsets with equal sum.
-
partition_brute_test
-
patterson_rule,
a C code which
returns the points and weights of a 1D Gauss-Patterson quadrature
rule of order 1, 3, 7, 15, 31, 63, 127, 255 or 511.
-
patterson_rule_test
-
pbma_io,
a C code which
reads or writes an ASCII Portable Bit Map (PBM) bit map graphics file;
-
pbma_io_test
-
pbmb_io,
a C code which
reads or writes a binary Portable Bit Map (PBM) graphics file;
-
pbmb_io_test
-
pbmlib,
a C code which
reads or writes graphics files in the Portable Bit Map (PBM) format;
-
pbmlib_test
-
pce_burgers,
a C code which
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_burgers_test
-
pce_ode_hermite,
a C code which
sets up a simple scalar ordinary differential equation (ODE)
for exponential decay with an uncertain decay rate,
using a polynomial chaos expansion in terms of Hermite polynomials.
-
pce_ode_hermite_test
-
pcg_basic,
a C code which
returns a sequence of uniformly distributed pseudorandom numbers,
by Melissa O'Neill.
-
pcg_basic_test
-
pcg_minimal,
a C code which
is a minimal implementation of a permuted congruential generator (PCG)
of random numbers, by Melissa O'Neill.
-
pcg_minimal_test
-
pdflib,
a C code which
evaluates Probability Density Functions (PDF)
and produces random samples from them,
including beta, binomial, chi, exponential, gamma, inverse chi,
inverse gamma, multinomial, normal, scaled inverse chi, and uniform.
-
pdflib_test
-
pentominoes,
a C code which
forms or plots any of the 12 members of the pentomino family,
shapes formed from 5 adjacent squares.
-
pentominoes_test
-
peri1d,
a C code which
sets up and solves a 1D time-dependent peridynamics problem,
by Miroslav Stoyanov;
-
peri1d_test
-
persistence,
a C code which
demonstrates how to initialize, get, or set data stored
within a function, using static/persistent/saved/local memory.
-
persistence_test
-
pgma_io,
a C code which
reads or writes ASCII Portable Gray Map (PGM) 2D graphics files;
-
pgma_io_test
-
pgmb_io,
a C code which
reads or writes a binary Portable Gray Map (PGM) 2D graphics file;
-
pgmb_io_test
-
pig_latin,
a C code which
converts its input to Pig Latin; a winner of the International
Obfuscated C Code Competition in the Most Humorous category,
by Don Dodson;
-
pig_latin_test
-
pink_noise,
a C code which
computes a pink noise signal obeying a 1/f power law.
-
pink_noise_test
-
ply_io,
a C code which
reads or writes a 3D graphics file in PLY format,
by Greg Turk;
-
ply_to_obj,
a C code which
converts a PLY 3D graphics file to an OBJ file.
-
ply_to_obj_test
-
png_io,
a C code which
reads and writes files in the Portable Network Graphics (PNG) format.
-
png_io_test
-
point_merge,
a C code which
considers N points in M-dimensional space, and counts or indexes
the unique or tolerably unique items.
-
point_merge_test
-
poisson_1d,
a C code which
solves a discretized version of the Poisson equation -uxx = f(x)
on the interval a ≤ x ≤ b, with Dirichlet boundary conditions
u(a) = ua, u(b) = ub.
The linear system is solved using Gauss-Seidel iteration.
-
poisson_1d_test
-
poisson_1d_multigrid,
a C code which
applies the multigrid method to a discretized version of the
1D Poisson equation.
-
poisson_1d_multigrid_test
-
poisson_2d,
a C code which
computes a solution to the Poisson equation in a rectangle,
and is intended as the starting point for the creation of a
parallel version.
-
poisson_2d_test
-
poisson_mpi,
a C code which
computes a solution to the Poisson equation in a rectangle,
using the Jacobi iteration to solve the linear system, and MPI to
carry out the Jacobi iteration in parallel.
-
poisson_mpi_test
-
poisson_openmp,
a C code which
computes a 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_openmp_test
-
poisson_simulation,
a C code which
simulates a Poisson process in which events randomly occur with an
average waiting time of Lambda,
creating graphics files for processing by gnuplot().
-
poisson_simulation_test
-
polpak,
a C code which
evaluates a variety of mathematical functions, polynomials, and
sequences, including Bell, Benford, Bernoulli, Bernstein, Cardan,
Catalan, Charlier, Chebyshev, Collatz, Delannoy, Euler, Fibonacci,
Gegenbauer, Gudermannian, Harmonic, Hermite, Hofstadter,
Hypergeometric 2F1, Jacobi,
Krawtchouk, Laguerre, Lambert, Legendre, Lerch, Meixner, Mertens,
Moebius, Motzkin, Phi, Stirling Number, Tau, Tribonacci, Zernike.
-
polpak_test
-
polygon,
a C code which
computes properties of an arbitrary polygon in the plane, defined
by a sequence of vertices, including interior angles, area, centroid,
containment of a point, convexity, counter clockwise ordering, diameter,
distance to a point, inradius, lattice area, nearest point in set,
outradius, uniform sampling, and triangulation.
-
polygon_test
-
polygon_grid,
a C code which
generates a grid of points
over the interior of a polygon in 2D.
-
polygon_grid_test
-
polygon_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of a polygon in 2D.
-
polygon_integrals_test
-
polygon_monte_carlo,
a C code which
applies a Monte Carlo method to estimate the integral of a function
over the interior of a polygon in 2D.
-
polygon_monte_carlo_test
-
polygon_triangulate,
a C code which
triangulates a possibly nonconvex polygon in 2D,
and which can use gnuplot() to display the external edges and
internal diagonals of the triangulation.
-
polygon_triangulate_test
-
polynomial,
a C code which
adds, multiplies, differentiates, evaluates and prints multivariate
polynomials in a space of M dimensions.
-
polynomial_test
-
polynomial_conversion,
a C code which
converts representations of a polynomial between monomial, Bernstein,
Chebyshev, Gegenbauer, Hermite, Laguerre and Legendre forms.
-
polynomial_conversion_test
-
polynomial_root_bound,
a C code which
computes the Cauchy bound on the magnitude of all roots
of a polynomial with complex coefficients.
-
polynomial_root_bound_test
-
polyominoes,
a C code which
utilities for manipulating polyominoes and tilings.
-
polyominoes_test
-
porous_medium_exact,
a C code which
returns an exact solution of the porous medium equation (PME),
dudt=Del^2(u^m), a partial differential equation (PDE) related
to the diffusion equation, based on the Barenblatt solution.
-
porous_medium_exact_test
-
power_method,
a C code which
carries out the power method for finding a dominant eigenvalue
and its eigenvector.
-
power_method_test
-
power_rule,
a C code which
constructs a power rule, that is, a product quadrature rule
from identical 1D factor rules.
-
power_rule_test
-
ppc_array,
a C code which
allocates and frees memory for vectors and matrices,
for a variety of types,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_array_test
-
ppc_array_mine,
a C code which
is an alternate version of ppc_array(), and
manages the dynamic allocation and release of arrays,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_array_mine_test
-
ppc_bvp,
a C code which
solves a 1 dimensional boundary value
problem (BVP), using triangle() for the mesh, the finite element
method (FEM) for discretization, umfpack() to solve the linear
system, and geomview() for visualization,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_bvp_test
-
ppc_evolution,
a C code which
simulates the process of evolution on a model world of creatures,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_evolution_test
-
ppc_evolution_io,
a C code which
reads or writes world data files in WDF format, used by
ppc_evolution(), which
simulates the process of evolution on a model world of creatures,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_evolution_io_test
-
ppc_fd1,
a C code which
solves the 1 dimensional time-dependent heat equation,
using the finite difference method (FDM) for discretization,
and offering a variety of solvers, including explicit,
implicit, Crank-Nicolson, and Seidman sweep,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_fd1_test
-
ppc_fetch_line,
a C code which
transfers lines of text from a file to a buffer,
trimming initial and trailing whitespace, and comments,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_fetch_line_test
-
ppc_fgets_demo,
a C code which
demonstrates how the fgets() function transfers data from
a file to an internal C buffer,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_fgets_demo_test
-
ppc_gauss_quad,
a C code which
implements Gauss quadrature rules for approximate integration,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_gauss_quad_test
-
ppc_haar,
a C code which
applies forward and backward Haar transforms to vectors and matrices,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_haar_test
-
ppc_image_analysis,
a C code which
analyzes and manipulates an image stored in PGM or PBM format,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_image_analysis_test
-
ppc_image_reduce,
a C code which
reduces the size of an image stored in PGM or PBM format,
by applying a Haar transform and removing modes of low importance,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_image_reduce_test
-
ppc_ll,
a C code which
demonstrates the use of linked lists,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_ll_test
-
ppc_mesh,
a C code which
uses a version of Jonathan Shewchuk's triangle() code to
create a triangular mesh of a region bounded by a polygonal
arc, and possibly including holes,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_mesh_test
-
ppc_nelder_mead,
a C code which
implements the Nelder-Mead moving simplex function minimization
algorithm,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_nelder_mead_test
-
ppc_netpbm,
a C code which
demonstrates the use of netpbm() to read and write images,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_netpbm_test
-
ppc_netpbm_io,
a C code which
reads and writes netpbm() files in pgm or ppm format,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_netpbm_io_test
-
ppc_netpbm_random,
a C code which
creates a random MxN array of 0's and 1's,
regarded as a portable bit map (PBM) image,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_netpbm_random_test
-
ppc_neural_ode,
a C code which
uses a neural network to model an ordinary differential equation
and to approximate its solution,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_neural_ode_test
-
ppc_neural_pde,
a C code which
uses a neural network to model a partial differential equation
and to approximate its solution,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_neural_pde_ell,
a C code which
calls ppc_neural_pde(), which
uses a neural network to model a partial differential equation (PDE)
in the form of a boundary value problem (BVP) posed in an L-shaped
region and to approximate its solution,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_neural_pde_square,
a C code which
calls ppc_neural_pde(), which
uses a neural network to model a partial differential equation (PDE)
in the form of a boundary value problem (BVP) posed in a square
region and to approximate its solution,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_neural_pde_square_hole,
a C code which
calls ppc_neural_pde(), which
uses a neural network to model a partial differential equation (PDE)
in the form of a boundary value problem (BVP)
posed in a square region with a circular hole,
and to approximate its solution,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_neural_pde_test
-
ppc_poisson,
a C code which
solves the 1 dimensional Poisson equation as a boundary value
problem (BVP), using triangle() for the mesh, the finite element
method (FEM) for discretization, umfpack() to solve the linear
system, and geomview() for visualization,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_poisson_test
-
ppc_porous_medium,
a C code which
solves the porous medium equation, dudt=Del^2(u^m),
from Rouben Rostamian's "Programming Projects in C";
-
ppc_porous_medium_test
-
ppc_sparse_matrix,
a C code which
packs a sparse MxN matrix into compressed column storage (CCS),
or unpacks a compressed column storage matrix to MxN format,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_sparse_matrix_test
-
ppc_triangle,
a C code which
is the library version of Jonathan Shewchuk's triangle() code,
for computing a triangular mesh from a given set of points,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_truss,
a C code which
models a truss structure under a load,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_truss_test
-
ppc_truss_io,
a C code which
reads or writes a file defining a truss structure under a load,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_truss_io_test
-
ppc_truss_to_eps,
a C code which
creates an Encapsulated PostScript image of a truss structure
under a load,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_truss_to_eps_test
-
ppc_twb_quad,
a C code which
defines Taylor, Wingate, Bos quadrature rules for triangles,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_twb_quad_test
-
ppc_twb_quad_minimal,
a C code which
is a minimal demonstration of
defines Taylor, Wingate, Bos quadrature rules for triangles,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_twb_quad_minimal_test
-
ppc_umfpack_test,
a C code which
defines a sparse linear system and then requests a solution
using umfpack(),
from Rouben Rostamian's "Programming Projects in C";
-
ppc_xmalloc,
a C code which
manages the allocation of memory,
from Rouben Rostamian's "Programming Projects in C";
-
ppc_xmalloc_test
-
ppma_io,
a C code which
reads or writes an ASCII Portable Pixel Map (PPM) 2D graphics file;
-
ppma_io_test
-
ppmb_io,
a C code which
reads or writes a binary Portable Pixel Map (PPM) 2D graphics file;
-
ppmb_io_test
-
praxis,
a C code which
minimizes a scalar function of several variables, without
requiring derivative information,
by Richard Brent.
-
praxis_test
-
predator_prey_ode,
a C code which
solves a time-dependent predator-prey system
of ordinary differential equations (ODE).
-
predator_prey_ode_test
-
prime,
a C code which
counts the number of primes between 1 and N,
and is intended as a starting point for a parallel version.
-
prime_test
-
prime_mpi,
a C code which
counts the primes between 1 and N,
using MPI for parallel execution.
-
prime_mpi_test
-
prime_openmp,
a C code which
counts the number of primes between 1 and N,
using OpenMP for parallel execution.
-
prime_openmp_test
-
prime_pi,
a C code which
evaluates Pi(n), the number of primes less than or equal to an integer n.
-
prime_pi_test
-
prism_jaskowiec_rule,
a C code which
returns symmetric quadrature rules, with exactness up to total
degree 20, over the interior of a prism with triangular base,
by Jan Jaskowiec, Natarajan Sukumar.
-
prism_jaskowiec_rule_test
-
prism_witherden_rule,
a C code which
returns a symmetric Witherden quadrature rule for a prism with
triangular base, with exactness up to total degree 10.
-
prism_witherden_rule_test
-
prob,
a C code which
evaluates, samples, inverts, and characterizes a number of
Probability Density Functions (PDF)
and Cumulative Density Functions (CDF), including anglit, arcsin,
benford, birthday, bernoulli, beta_binomial, beta, binomial, bradford,
burr, cardiod, cauchy, chi, chi squared, circular, cosine, deranged,
dipole, dirichlet mixture, discrete, empirical, english sentence and
word length, error, exponential, extreme values, f, fisk,
folded normal, frechet, gamma, generalized logistic, geometric,
gompertz, gumbel, half normal, hypergeometric, inverse gaussian,
laplace, levy, logistic, log normal, log series, log uniform,
lorentz, maxwell, multinomial, nakagami, negative binomial, normal,
pareto, planck, poisson, power, quasigeometric, rayleigh, reciprocal,
runs, sech, semicircular, student t, triangle, uniform, von mises,
weibull, zipf.
-
prob_test
-
product_rule,
a C code which
creates an M-dimensional quadrature rule
from a product of distinct 1d quadrature rules;
-
product_rule_test
-
pthreads_test
-
pwl_approx_1d,
a C code which
approximates a set of data using a piecewise linear function.
-
pwl_approx_1d_test
-
pwl_interp_1d,
a C code which
interpolates a set of data using a piecewise linear function.
creating graphics files for processing by gnuplot().
-
pwl_interp_1d_test
-
pwl_interp_2d,
a C code which
evaluates a piecewise linear interpolant to data defined on
a regular 2D grid.
-
pwl_interp_2d_test
-
pwl_interp_2d_scattered,
a C code which
evaluates a piecewise linear interpolant to data which is available
at an irregularly arranged set of points.
-
pwl_interp_2d_scattered_test
-
pwl_product_integral,
a C code which
calculates the exact value of the integral of the product of two
piecewise linear functions f(x) and g(x).
-
pwl_product_integral_test
-
pyramid_exactness,
a C code which
investigates the polynomial exactness of a quadrature rule
over the interior of the unit pyramid in 3D.
-
pyramid_exactness_test
-
pyramid_felippa_rule,
a C code which
returns a Felippa quadrature rule for approximating integrals
over the interior of a pyramid in 3D.
-
pyramid_felippa_rule_test
-
pyramid_grid,
a C code which
computes a grid of points
over the interior of the unit pyramid in 3D;
-
pyramid_grid_test
-
pyramid_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of the unit pyramid in 3D.
-
pyramid_integrals_test
-
pyramid_jaskowiec_rule,
a C code which
returns quadrature rules, with exactness up to total degree 20,
over the interior of a pyramid in 3D,
by Jan Jaskowiec, Natarajan Sukumar.
-
pyramid_jaskowiec_rule_test
-
pyramid_monte_carlo,
a C code which
applies a Monte Carlo method to estimate integrals of a function
over the interior of the unit pyramid in 3D;
-
pyramid_monte_carlo_test
-
pyramid_rule,
a C code which
computes a conical product quadrature rule
over the interior of the unit pyramid in 3D.
-
pyramid_rule_test
-
pyramid_witherden_rule,
a C code which
returns a Witherden quadrature rule, with exactness up to total
degree 10, over the interior of a pyramid.
-
pyramid_witherden_rule_test
-
qr_solve,
a C code which
computes the linear least squares (LLS) solution of a system A*x=b.
-
qr_solve_test
-
quad_mpi,
a C code which
applies a quadrature rule to estimate an
integral, working in parallel by using MPI;
-
quad_mpi_test
-
quad_openmp,
a C code which
applies a quadrature rule to estimate an integral over a 1D interval,
using OpenMP for parallel execution;
-
quad_openmp_test
-
quad_rule,
a C code which
defines quadrature rules for approximating integrals;
-
quad_rule_test
-
quad_serial,
a C code which
applies a quadrature rule to estimate an integral,
intended as a starting point for parallelization exercises.
-
quad_serial_test
-
quad2d,
a C code which
applies a product quadrature rule to estimate an integral
over a 2D rectangle, intended as a starting point
for parallelization exercises.
-
quad2d_test
-
quad2d_openmp,
a C code which
applies a product quadrature rule to estimate an integral
over a 2D rectangle, using OpenMP for parallel execution;
-
quadmom,
a C code which
computes a Gaussian quadrature rule for a weight function rho(x)
based on the Golub-Welsch procedure that only requires knowledge
of the moments of rho(x).
-
quadmom_test
-
quadrature_golub_welsch,
a C code which
computes the points and weights of a Gaussian quadrature rule using
the Golub-Welsch procedure.
-
quadrature_golub_welsch_test
-
quadrature_least_squares,
a C code which
computes weights for "sub-interpolatory" quadrature rules,
that is, it estimates integrals by integrating a polynomial that
approximates the function data in a least squares sense.
-
quadrature_least_squares_test
-
quadrature_weights_vandermonde,
a C code which
computes the weights of a quadrature rule using the Vandermonde
matrix, assuming that the points have been specified.
-
quadrature_weights_vandermonde_test
-
quadrature_weights_vandermonde_2d,
a C code which
computes the weights of a 2D quadrature rule using the Vandermonde
matrix, assuming that the points have been specified.
-
quadrature_weights_vandermonde_2d_test
-
quadrilateral_witherden_rule,
a C code which
returns a symmetric Witherden quadrature rule for the quadrilateral,
with exactness up to total degree 21.
-
quadrilateral_witherden_rule_test
-
quaternions,
a C code which
carries out some simple arithmetic operations for quaternions.
-
quaternions_test
-
r83,
a C code which
contains linear algebra routines for r83 matrices,
real, 64 bit, tridiagonal 3xN format.
-
r83_test
-
r83_np,
a C code which
contains linear algebra routines for r83_np matrices
(real, 64 bit, tridiagonal 3xN format, nonpivoting factorization).
-
r83_np_test
-
r83p,
a C code which
contains linear algebra routines for r83p matrices
(real, 64 bit, tridiagonal periodic format).
-
r83p_test
-
r83s,
a C code which
contains linear algebra routines for r83s matrices
(real, 64 bit, tridiagonal scalar format).
-
r83s_test
-
r83t,
a C code which
contains linear algebra routines for r83t matrices
(real, 64 bit, tridiagonal Mx3 format).
-
r83t_test
-
r83v,
a C code which
contains linear algebra routines for r83v matrices
(real, 64 bit, tridiagonal three vector format).
-
r83v_test
-
r85,
a C code which
contains linear algebra routines for r85 matrices
(real, 64 bit, pentadiagonal format).
-
r85_test
-
r8bb,
a C code which
contains linear algebra routines for r8bb matrices
(real, 64 bit, border banded format).
-
r8bb_test
-
r8blt,
a C code which
contains linear algebra routines for r8blt matrices
(real, 64 bit, band lower triangular format).
-
r8blt_test
-
r8bto,
a C code which
contains linear algebra routines for r8bto matrices
(real, 64 bit, block Toeplitz format).
-
r8bto_test
-
r8but,
a C code which
contains linear algebra routines for r8but matrices
(real, 64 bit, band upper triangular format).
-
r8but_test
-
r8cb,
a C code which
contains linear algebra routines for r8cb matrices
(real, 64 bit, Compressed Band format).
-
r8cb_test
-
r8cbb,
a C code which
contains linear algebra routines for r8cbb matrices
(real, 64 bit, Compressed Border Banded format).
-
r8cbb_test
-
r8ccs,
a C code which
contains linear algebra routines for r8ccs matrices
(real, 64 bit, Compressed Column Storage (Colptr,Row,Value) format).
-
r8ccs_test
-
r8ci,
a C code which
contains linear algebra routines for r8ci matrices
(real, 64 bit, circulant format).
-
r8ci_test
-
r8col,
a C code which
contains utility routines for an R8COL, that is,
a double precision real MxN array, considered as N column vectors,
each of length M. The data may be thought of as a matrix of
multiple columns, and many operations will be carried out columnwise.
-
r8col_test
-
r8gb,
a C code which
contains linear algebra routines for r8gb matrices
(real, 64 bit, General Banded format).
-
r8gb_test
-
r8gd,
a C code which
contains linear algebra routines for r8gd matrices
(real, 64 bit, general diagonal format).
-
r8gd_test
-
r8ge,
a C code which
contains linear algebra routines for R8GE matrices,
real, 64 bit, General format.
-
r8ge_test
-
r8lib,
a C code which
contains many utility routines,
using double precision real (R8) arithmetic.
-
r8lib_test
-
r8lt,
a C code which
contains linear algebra routines for R8LT matrices,
real, 64 bit, Lower Triangular format.
-
r8lt_test
-
r8ltt,
a C code which
contains linear algebra routines for r8ltt matrices
(real, 64 bit, lower triangular Toeplitz format).
-
r8ltt_test
-
r8ncf,
a C code which
contains linear algebra routines for r8ncf matrices
(real, 64 bit, nonsymmetric coordinate format).
-
r8ncf_test
-
r8pbl,
a C code which
contains linear algebra routines for r8pbl matrices
(real, 64 bit, symmetric positive definite (SPD) band lower format).
-
r8pbl_test
-
r8pbu,
a C code which
contains linear algebra routines for r8pbu matrices
(real, 64 bit, symmetric positive definite (SPD) band upper format).
-
r8pbu_test
-
r8po,
a C code which
contains linear algebra routines for r8po matrices
(real, 64 bit, symmetric positive definite (SPD) format).
-
r8po_test
-
r8poly,
a C code which
operates on real polynomials, including evaluation, differentiation,
integration, multiplication, synthetic division, shifting the
base, computing a power, taking the norm. It also defines
Chebyshev, Lagrange and Legendre polynomials.
-
r8poly_test
-
r8pp,
a C code which
contains linear algebra routines for r8pp matrices
(real, 64 bit, symmetric positive definite (SPD) packed format).
-
r8pp_test
-
r8ri,
a C code which
contains linear algebra routines for r8ri matrices
(real, 64 bit, row indexed format).
-
r8ri_test
-
r8row,
a C code which
contains utility routines for an R8ROW, that is,
a double precision real MxN array, considered as M row vectors,
each of length N. The data may be thought of as a matrix of
multiple rows, and many operations will be carried out rowwise.
-
r8row_test
-
r8sd,
a C code which
contains linear algebra routines for r8sd matrices
(real, 64 bit, symmetric diagonal format).
-
r8sd_test
-
r8sm,
a C code which
contains linear algebra routines for r8sm matrices
(real, 64 bit, Sherman-Morrison A-u*v' format).
-
r8sm_test
-
r8sr,
a C code which
carries out linear algebra operations for r8sr matrices
(real, 64 bit, diagonal + compressed row offdiagonal format).
-
r8sr_test
-
r8ss,
a C code which
carries out linear algebra operations for r8ss matrices
(real, 64 bit, symmetric skyline format).
-
r8ss_test
-
r8st,
a C code which
contains linear algebra routines for r8st matrices,
real, 64 bit, Sparse Triplet format.
-
r8st_test
-
r8sto,
a C code which
contains linear algebra routines for r8sto matrices
(real, 64 bit, symmetric Toeplitz N format).
-
r8sto_test
-
r8to,
a C code which
contains linear algebra routines for r8to matrices
(real, 64 bit, Toeplitz 2*N-1 format).
-
r8to_test
-
r8ut,
a C code which
contains linear algebra routines for r8ut matrices,
real, 64 bit, Upper Triangular format.
-
r8ut_test
-
r8utp,
a C code which
carries out linear algebra operations on r8utp matrices,
real 64 bit, Upper Triangular Packed format.
-
r8utp_test
-
r8utt,
a C code which
contains linear algebra routines for r8utt matrices
(real, 64 bit, upper triangular Toeplitz format).
-
r8utt_test
-
r8vm,
a C code which
contains linear algebra routines for r8vm matrices
(real, 64 bit, vandermonde format).
-
r8vm_test
-
rand48_test,
a C code which
calls rand48(), which
demonstrates the use of several stdlib functions, which
uses 48-bit arithmetic to generate uniformly distributed pseudorandom
value. The results can be returned as double precision values
in [0.0,1.0], or as long integers in [-2^31,2^31], or as
nonnegative long integers in [0,2^31].
-
randlc,
a C code which
implements a random number generator (RNG)
used by the NAS Benchmark.
-
randlc_test
-
random_data,
a C code which
uses a random number generator (RNG) to sample points for
various probability distributions, spatial dimensions, and geometries,
including the M-dimensional cube, ellipsoid, simplex and sphere.
-
random_data_test
-
random_mpi,
a C code which
generates the same sequence of random numbers
for both sequential execution and parallel execution under MPI.
-
random_mpi_test
-
random_openmp,
a C code which
illustrates how a parallel program using OpenMP can generate multiple
distinct streams of random numbers.
-
random_openmp_test
-
random_sorted,
a C code which
generates vectors of random values which are already sorted.
-
random_sorted_test
-
ranlib,
a C code which
produces random samples from Probability Density Functions (PDF),
including Beta, Chi-square Exponential, F, Gamma, Multivariate normal,
Noncentral chi-square, Noncentral F, Univariate normal,
random permutations, Real uniform, Binomial, Negative Binomial,
Multinomial, Poisson and Integer uniform,
by Barry Brown and James Lovato.
-
ranlib_test
-
rbf_interp_1d,
a C code which
defines and evaluates radial basis function (RBF) interpolants
to 1D data.
-
rbf_interp_1d_test
-
rbf_interp_2d,
a C code which
defines and evaluates radial basis function (RBF) interpolants
to 2D data.
-
rbf_interp_2d_test
-
rbf_interp_nd,
a C code which
defines and evaluates radial basis function (RBF) interpolants
to M-dimensional data.
-
rbf_interp_nd_test
-
reactor simulation,
a C code which
is a Monte Carlo simulation of the shielding effect of a slab
of a certain thickness in front of a neutron source. This code was
provided as an example with the book "Numerical Methods and Software."
-
reactor simulation_test
-
ring_mpi,
a C code which
uses the MPI parallel programming environment, and measures the time
necessary to copy a set of data around a ring of processes.
-
ring_mpi_test
-
rk4,
a C code which
applies the fourth order Runge-Kutta (RK) algorithm to estimate the
solution of an ordinary differential equation (ODE)
at the next time step.
-
rk4_test
-
rkf45,
a C code which
applies the Runge-Kutta-Fehlberg (RKF)
algorithm to solve a system of ordinary differential equations (ODE);
-
rkf45_test
-
rnglib,
a C code which
implements a random number generator (RNG) with splitting facilities,
allowing multiple independent streams to be computed,
by L'Ecuyer and Cote.
-
rnglib_test
-
root_rc,
a C code which
seeks a solution of a scalar nonlinear equation f(x)=0,
using reverse communication (RC), by Gaston Gonnet.
-
root_rc_test
-
roots_rc,
a C code which
seeks solutions of a system of nonlinear equations,
using reverse communication (RC), by Gaston Gonnet.
-
roots_rc_test
-
rot13,
a C code which
makes a copy of a file which has
been encoded using the ROT13 coding and a ROT5 coding for digits.
-
rot13_test
-
row_echelon_integer,
a C code which
carries out the exact computation of the integer row echelon form
(IREF) and integer reduced row echelon form (IRREF) of an integer
matrix.
-
row_echelon_integer_test
-
sandia_rules,
a C code which
produces a standard 1D Gauss quadrature rule of
Chebyshev, Gegenbauer, generalized Hermite, generalized Laguerre,
Hermite, Jacobi, Laguerre, and Legendre types.
-
sandia_rules_test
-
satisfy_brute,
a C code which
uses brute force to find all assignments of values to a set of
logical variables which make a complicated logical statement true.
-
satisfy_brute_test
-
satisfy_mpi,
a C code which
demonstrates, for a particular circuit, an exhaustive search
for solutions of the circuit satisfy problem,
using MPI to perform the calculation in parallel.
-
satisfy_mpi_test
-
satisfy_openmp,
a C code which
demonstrates, for a particular circuit, an exhaustive search
for solutions of the circuit satisfy problem,
using OpenMP for parallel execution.
-
satisfy_openmp_test
-
schedule_openmp,
a C code which
demonstrates the default, static, and dynamic methods of scheduling
loop iterations in OpenMP to avoid work imbalance.
-
schedule_openmp_test
-
screenshot_opengl,
a C code which
uses OpenGL() to save a
screenshot of the graphics being displayed.
-
sde,
a C code which
illustrates properties of
stochastic ordinary differential equations (SODE), and
common algorithms for their analysis, including the Euler method,
the Euler-Maruyama method, and the Milstein method,
making graphics files for processing and display by gnuplot(),
by Desmond Higham;
-
sde_test
-
search,
a C code which
searches the integers from A to B for a value J such that F(J) = C.
this is intended as a starting point for
a parallel approach.
-
search_test
-
search_mpi,
a C code which
searches integers between A and B for a solution J such that F(J)=C,
carried out in parallel using MPI.
-
search_mpi_test
-
set_theory,
a C code which
demonstrates various set theoretic operations
using several models of a set.
-
set_theory_test
-
sftpack,
a C code which
implements the slow Fourier transform, intended as a teaching
tool and comparison with the Fast Fourier Transform (FFT).
-
sftpack_test
-
sgefa_openmp,
a C code which
compares a standard linear algebra solver against a revised version
which can be run in parallel with OpenMP.
-
sgefa_openmp_test
-
sgmga,
a C code which
creates sparse grids using a mixture of 1D quadrature rule families,
allowing user specified growth rates for each family,
allowing anisotropic weights for each dimension.
-
sgmga_test
-
shallow_water_1d,
a C code which
simulates the evolution of a 1D fluid governed by the
time-dependent shallow water equations.
-
shallow_water_1d_test
-
shepard_interp_1d,
a C code which
defines and evaluates Shepard interpolants to 1D data,
based on inverse distance weighting.
-
shepard_interp_1d_test
-
shepard_interp_2d,
a C code which
defines and evaluates Shepard interpolants to 2D data,
based on inverse distance weighting.
-
shepard_interp_2d_test
-
shepard_interp_nd,
a C code which
defines and evaluates Shepard interpolants to M-dimensional data,
based on inverse distance weighting.
-
shepard_interp_nd_test
-
showme,
a C code which
displays triangulations and meshes,
by Jonathan Shewchuk;
-
showme_test
-
sigmoid_derivative,
a C code which
evaluates derivatives of any order for the sigmoid function
s(x)=1/(1+exp(-x)). The test code creates graphics images
using gnuplot().
-
sigmoid_derivative_test
-
simplex_coordinates,
a C code which
computes the Cartesian coordinates of the vertices of a regular
simplex in M dimensions.
-
simplex_coordinates_test
-
simplex_gm_rule,
a C code which
defines Grundmann-Moeller quadrature rules
over the interior of a triangle in 2D, a tetrahedron in 3D, or
over the interior of the simplex in M dimensions.
-
simplex_gm_rule_test
-
simplex_grid,
a C code which
generates a regular grid of points
over the interior of an arbitrary simplex in M dimensions.
-
simplex_grid_test
-
simplex_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of the unit simplex in M dimensions.
-
simplex_integrals_test
-
simplex_monte_carlo,
a C code which
uses the Monte Carlo method to estimate an integral
over the interior of the unit simplex in M dimensions.
-
simplex_monte_carlo_test
-
sine_gordon_exact,
a C code which
returns an exact solution of the Sine-Gordon equation,
a partial differential equation (PDE) of the form uxy=sin(u).
-
sine_gordon_exact_test
-
sine_transform,
a C code which
demonstrates some simple properties of the discrete sine transform.
-
sine_transform_test
-
smolpack,
a C code which
estimates the integral of a function
over a M-dimensional hypercube using a sparse grid,
by Knut Petras;
-
smolpack_test
-
snakes_and_ladders,
a C code which
provides tools for the analysis of the game
of Snakes and Ladders.
-
snakes_and_ladders_test
-
solve,
a C code which
implements a linear solver which makes it easy to create
doubly-dimensioned arrays and solve associated linear systems.
-
solve_test
-
sor,
a C code which
implements a simple version of the Successive Over-Relaxation (SOR)
method for the iterative solution of a linear system of equations.
-
sor_test
-
sort_rc,
a C code which
sorts a list of any kind of objects,
using reverse communication (RC).
-
sort_rc_test
-
sparse_display,
a C code which
reads information defining a matrix of numbers and displays
the sparsity pattern or location of the nonzero elements using
gnuplot(). This operation is already available in the built-in
MATLAB spy() command.
-
sparse_display_test
-
sparse_grid_cc,
a C code which
creates sparse grids based on Clenshaw-Curtis rules.
-
sparse_grid_cc_test
-
sparse_grid_hw,
a C code which
creates sparse grids based on Gauss-Legendre, Gauss-Hermite,
Gauss-Patterson, or a nested variation of Gauss-Hermite rules,
by Florian Heiss and Viktor Winschel.
-
sparse_grid_hw_test
-
sparse_interp_nd,
a C code which
defines a sparse interpolant to a function f(x) of a
multidimensional argument.
-
sparse_interp_nd_test
-
sphere_exactness,
a C code which
tests the polynomial exactness of a quadrature rule
over the surface of the unit sphere in 3D;
-
sphere_exactness_test
-
sphere_fibonacci_grid,
a C code which
uses a Fibonacci spiral to create a grid of points
on the surface of the unit sphere in 3D.
-
sphere_fibonacci_grid_test
-
sphere_grid,
a C code 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 surface of the unit sphere in 3D.
-
sphere_grid_test
-
sphere_integrals,
a C code which
defines test functions for integration
over the surface of the unit sphere in 3D.
-
sphere_integrals_test
-
sphere_lebedev_rule,
a C code which
computes Lebedev quadrature rules
over the surface of the unit sphere in 3D;
-
sphere_lebedev_rule_test
-
sphere_llq_grid,
a C code which
uses longitudes and latitudes to create grids of points,
lines, and quadrilaterals
on the surface of the unit sphere in 3D.
-
sphere_llq_grid_test
-
sphere_llt_grid,
a C code which
uses longitudes and latitudes to create grids of points,
lines, and triangles
on the surface of the unit sphere in 3D.
-
sphere_llt_grid_test
-
sphere_monte_carlo,
a C code which
applies a Monte Carlo method to estimate the integral of a function
over the surface of the unit sphere in 3D;
-
sphere_monte_carlo_test
-
sphere_quad,
a C code which
used triangulation to approximate an integral
over the surface of the unit sphere in 3D;
-
sphere_quad_test
-
sphere_stereograph,
a C code which
computes the stereographic mapping between points on the
unit sphere in 3D
and points on the plane Z = 1; a generalized mapping is
also available.
-
sphere_stereograph_test
-
sphere_triangle_monte_carlo,
a C code which
used the Monte Carlo method to estimate the integral of a function
defined in a triangle
on the surface of the unit sphere in 3D.
-
sphere_triangle_monte_carlo_test
-
sphere_triangle_quad,
a C code which
uses quadrature to estimate the integral of a function
in a spherical triangle on the surface of the unit sphere in 3D.
-
sphere_triangle_quad_test
-
spiral_exact,
a C code which
computes a 2D velocity vector field that is an exact solution
of the continuity equation.
-
spiral_exact_test
-
spline,
a C code which
interpolates or approximates data by piecewise polynomial functions;
-
spline_test
-
square_arbq_rule,
a C code which
returns quadrature rules,
with exactness up to total degree 20,
over the interior of the symmetric square in 2D,
by Hong Xiao and Zydrunas Gimbutas.
-
square_arbq_rule_test
-
square_exactness,
a C code which
investigates the polynomial exactness of quadrature rules for f(x,y)
over the interior of a rectangle in 2D.
-
square_exactness_test
-
square_felippa_rule,
a C code which
returns a Felippa quadrature rules for approximating integrals
over the interior of a square in 2D.
-
square_felippa_rule_test
-
square_grid,
a C code which
computes a grid of points
over the interior of a square in 2D.
-
square_grid_test
-
square_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of the unit square or symmetric unit square in 2D.
-
square_integrals_test
-
square_minimal_rule,
a C code which
returns "almost minimal" quadrature rules,
with exactness up to total degree 55,
over the interior of the symmetric square in 2D,
by Mattia Festa and Alvise Sommariva.
-
square_minimal_rule_test
-
square_monte_carlo,
a C code which
applies a Monte Carlo method to estimate the integral of a function
over the interior of the unit square in 2D.
-
square_monte_carlo_test
-
square_symq_rule,
a C code which
returns symmetric quadrature rules,
with exactness up to total degree 20,
over the interior of the symmetric square in 2D,
by Hong Xiao and Zydrunas Gimbutas.
-
square_symq_rule_test
-
st_io,
a C code which
reads and writes sparse linear systems
stored in the Sparse Triplet (ST) format.
-
st_io_test
-
st_to_ccs,
a C code which
converts a matrix from the Sparse Triplet (ST) format
to the Compressed Column Storage (CCS) format.
-
st_to_ccs_test
-
stiff_ode,
a C code which
considers an ordinary differential equation (ODE) which is
an example of a stiff ODE.
-
stiff_ode_test
-
stochastic_diffusion,
functions which
implement several versions of a stochastic diffusivity coefficient.
-
stochastic_diffusion_test
-
stochastic_heat2d,
a C code which
implements a finite difference method (FDM) for the steady
time-independent 2D heat equation,
with a stochastic heat diffusivity coefficient,
using gnuplot() to illustrate the results.
-
stochastic_heat2d_test,
-
stochastic_rk,
a C code which
applies a Runge-Kutta (RK) scheme to a
stochastic ordinary differential equation (SODE).
-
stochastic_rk_test
-
stokes_2d_exact,
a C code which
evaluates exact solutions to the incompressible steady
Stokes equations over the unit square in 2D.
-
stokes_2d_exact_test
-
string_pde,
a C code which
sets up and solves the partial differential equations (PDE) describing
a vibrating string,
creating files that can be displayed by gnuplot().
-
string_pde_test
-
stroud_rule,
a C code which
defines quadrature rules for a variety of M-dimensional regions,
including the interior of the square, cube and hypercube,
the pyramid,
cone and ellipse, the hexagon, the M-dimensional octahedron,
the circle, sphere and hypersphere, the triangle, tetrahedron and
simplex, and the surface of the circle, sphere and hypersphere.
-
stroud_rule_test
-
subpak,
a C code which
includes a number of utility routines.
-
subpak_test
-
subset,
a C code which
enumerates, generates, randomizes, ranks and unranks combinatorial
objects including combinations, compositions, Gray codes, index sets,
partitions, permutations, polynomials, subsets, and Young tables.
Backtracking routines are included to solve some
combinatorial problems.
-
subset_test
-
subset_sum,
a C code which
seeks solutions of the subset sum problem, in which it is desired
to find a subset of integers which has a given sum.
-
subset_sum_test
-
subset_sum_backtrack,
a C code which
uses backtracking to find solutions of the subset sum problem,
in which it is desired to find a subset of integers which has a given sum.
-
subset_sum_backtrack_test
-
subset_sum_brute,
a C code which
uses brute force to find solutions of the subset sum problem,
in which it is desired to find a subset of integers which has a given sum.
-
subset_sum_brute_test
-
subset_sum_swap,
a C code which
uses swapping to try to improve an initial estimated solution
of the subset sum problem, which seeks a subset of a set of integers
which has a given sum. Even when an exact solution exists, this
approach often only finds an approximate solution.
-
subset_sum_swap_test
-
super_blas,
a C code which
implements some of the BLAS routines, for
particular use by superlu();
-
super_blas_test
-
superlu_test,
a C code which
illustrates how to use superlu(),
which applies a fast direct solution method to solve
sparse linear systems,
by James Demmel, John Gilbert, and Xiaoye Li.
-
svd_test,
a C code which
demonstrates the computation of the singular value decomposition (SVD)
and a few of its properties.
-
svd_snowfall,
a C code which
reads a file containing historical snowfall data and
analyzes the data with the Singular Value Decomposition (SVD).
-
svd_snowfall_test
-
svd_truncated,
a C code which
demonstrates the computation of the reduced or truncated
Singular Value Decomposition (SVD) that is useful for cases when
one dimension of the matrix is much smaller than the other.
-
svd_truncated_test
-
table_io,
a C code which
reads and writes a simple dataset stored as a table file;
-
table_io_test
-
task_division,
a C code which
implements a simple procedure for smoothly dividing T tasks among
P processors; such a method can be useful in MPI and other parallel
environments, particularly when T is not an exact multiple of P,
and when the processors can be indexed starting from 0 or from 1.
-
task_division_test
-
test_approx,
a C code which
implements test problems for approximation,
provided as a set of (x,y) data.
-
test_approx_test
-
test_eigen,
a C code which
implements test matrices for eigenvalue analysis.
-
test_eigen_test
-
test_int,
a C code which
implements test problems for
approximate integration or quadrature in one dimension.
-
test_int_test
-
test_int_2d,
a C code which
implements test problems for
approximate integration or quadrature in two dimensions.
-
test_int_2d_test
-
test_interp,
a C code which
defines test problems for interpolation,
provided as a set of (x,y) data.
-
test_interp_test
-
test_interp_1d,
a C code which
defines test problems for interpolation of data y(x),
which depends on a 1D argument.
-
test_interp_1d_test
-
test_interp_2d,
a C code which
defines test problems for interpolation of data z(x,y),
which depends on a 2D argument.
-
test_interp_2d_test
-
test_interp_nd,
a C code which
defines test problems for interpolation of data z(x),
depending on an M-dimensional argument.
-
test_interp_nd_test
-
test_interp_fun,
a C code which
provides formulas of certain functions that are useful for
testing an interpolation algorithm using a varying number of points.
-
test_interp_fun_test
-
test_lls,
a C code which
implements linear least squares (LLS) test problems of the form A*x=b.
-
test_lls_test
-
test_matrix,
a C code which
defines test matrices for which the condition number, determinant,
eigenvalues, eigenvectors, inverse, null vectors, P*L*U factorization
or linear system solution are known. Examples include the
Fibonacci, Hilbert, Redheffer, Vandermonde, Wathen and Wilkinson
matrices.
-
test_matrix_test
-
test_matrix_exponential,
a C code which
defines a set of test cases for computing the matrix exponential.
-
test_matrix_exponential_test
-
test_min,
a C code which
implements test problems for
minimization of a scalar function of a scalar variable.
-
test_min_test
-
test_opt_con,
a C code which
defines test problems for the minimization of
a scalar function of several variables, with the search constrained
to lie within a specified hyper-rectangle.
-
test_opt_con_test
-
test_optimization,
a C code which
implements test problems for optimization
of a scalar function of several variables,
as described by Molga and Smutnicki.
-
test_optimization_test
-
test_partial_digest,
a C code which
generates examples of the partial digest problem.
-
test_partial_digest_test
-
test_values,
a C code which
supplies test values of various mathematical functions, including
Abramowitz, AGM, Airy, Bell, Bernoulli, Bessel, Beta, Binomial,
Bivariate Normal, Catalan, Cauchy, Chebyshev, Chi Square, Clausen,
Clebsch Gordan, Collatz, Cosine integral, Dawson, Debye, Dedekind,
dilogarithm, Dixon elliptic functions, Exponential integral, Elliptic,
Error, Euler, Exponential integral, F probability, Fresnel, Frobenius,
Gamma, Gegenbauer, Goodwin, Gudermannian, Harmonic, Hermite,
Hypergeometric 1F1, Hypergeometric 2F1, inverse trigonometic,
Jacobi Elliptic functions sn(), cn(), dn(), the Julian Ephemeris Date,
Kelvin, Laguerre, Lambert W, Laplace, Legendre, Lerch, Lobachevsky,
Lobatto, Logarithmic integral, Log normal, McNugget numbers,
Mersenne primes, Mertens, Mittag-Leffler, Moebius,
Multinomial, Negative binomial, Nine J, Normal, Omega, Owen, Partition,
Phi, Pi, Poisson, Polylogarithm, Polynomial Resultant, Polyomino, Prime,
Psi, Rayleigh, Hyperbolic Sine integral, Sigma, Sine Power integral,
Sine integral, Six J, Sphere area, Sphere volume, Spherical harmonic,
Stirling, Stromgen, Struve, Student, Subfactorial, Student probability,
Three J, Transport, Trigamma, Truncated normal, van der Corput, von Mises,
Weibull, Wright Omega, Zeta.
-
test_values_test
-
test_zero,
a C code which
implements test problems for the solution
of a single nonlinear equation in one variable.
-
test_zero_test
-
tester,
a BASH script which runs the test programs.
-
tet_mesh,
a C code which
carries out various tasks associated with tetrahedral meshes in 3D;
-
tet_mesh_test
-
tetrahedron,
a C code which
computes properties, including the centroid,
circumsphere, dihedral angles, edge lengths, face angles, face areas,
insphere, quality, solid angles, and volume,
of a tetrahedron in 3D.
-
tetrahedron_test
-
tetrahedron_arbq_rule,
a C code which
returns quadrature rules,
with exactness up to total degree 15,
over the interior of a tetrahedron in 3D,
by Hong Xiao and Zydrunas Gimbutas.
-
tetrahedron_arbq_rule_test
-
tetrahedron_exactness,
a C code which
tests the polynomial exactness of a quadrature rule
over the interior of a tetrahedron in 3D.
-
tetrahedron_exactness_test
-
tetrahedron_felippa_rule,
a C code which
returns a Felippa quadrature rules for approximating integrals
over the interior of a tetrahedron in 3D.
-
tetrahedron_felippa_rule_test
-
tetrahedron_grid,
a C code which
computes a grid of points
over the interior of a tetrahedron in 3D.
-
tetrahedron_grid_test
-
tetrahedron_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of the unit tetrahedron in 3D.
-
tetrahedron_integrals_test
-
tetrahedron_jaskowiec_rule,
a C code which
returns quadrature rules, with exactness up to total degree 20,
over the interior of a tetrahedron in 3D,
by Jan Jaskowiec, Natarajan Sukumar.
-
tetrahedron_jaskowiec_rule_test
-
tetrahedron_keast_rule,
a C code which
defines a Keast quadrature rule, of degree of exactness 0 through 8,
over the interior of the tetrahedron in 3D.
-
tetrahedron_keast_rule_test
-
tetrahedron_monte_carlo,
a C code which
uses the Monte Carlo method to estimate an integral
over the interior of a general tetrahedron in 3D.
-
tetrahedron_monte_carlo_test
-
tetrahedron_ncc_rule,
a C code which
defines Newton-Cotes closed (NCC) quadrature rules
over the interior of a tetrahedron in 3D.
-
tetrahedron_ncc_rule_test
-
tetrahedron_nco_rule,
a C code which
defines Newton-Cotes open (NCO) quadrature rules
over the interior of a tetrahedron in 3D.
-
tetrahedron_nco_rule_test
-
tetrahedron_witherden_rule,
a C code which
returns a symmetric Witherden quadrature rule for the tetrahedron,
with exactness up to total degree 10.
-
tetrahedron_witherden_rule_test
-
tetrahedron01_monte_carlo,
a C code which
uses the Monte Carlo method to estimate an integral
over the interior of the unit tetrahedron in 3D.
-
tetrahedron01_monte_carlo_test
-
three_body_ode,
a C code which
simulates the behavior of three planets,
constrained to lie in a plane,
and moving under the influence of gravity,
by Walter Gander and Jiri Hrebicek.
-
three_body_ode_test
-
timer_test,
a C code which
computes the elapsed CPU time or elapsed
wall clock time in a calculation.
-
timestamp,
a C code which
returns the current YMDHMS date as a timestamp,
and performs other timing chores;
-
timestamp_test
-
toeplitz_cholesky,
a C code which
computes the Cholesky factorization of
a symmetrid positive definite (SPD) Toeplitz matrix.
-
toeplitz_cholesky_test
-
toms097,
a C code which
computes the distance between all pairs of nodes in a directed graph
with weighted edges, using the Floyd algorithm.
This is a version of ACM TOMS algorithm 97.
-
toms097_test
-
toms112,
a C code which
determines whether a point is contained in a polygon,
by Moshe Shimrat.
This is a version of ACM TOMS algorithm 112.
-
toms112_test
-
toms178,
a C code which
seeks the minimizer of a function of several variables, using the
Hooke-Jeeves direct search method, by Arthur Kaupe.
This is a version of ACM TOMS algorithm 178.
-
toms178_test
-
toms179,
a C code which
calculates the incomplete Beta ratio,
by Oliver Ludwig;
this is a version of ACM TOMS algorithm 179.
-
toms179_test
-
toms243,
a C code which
evaluates the logarithm of a complex value,
by David Collens.
This is a version of ACM TOMS algorithm 243.
-
toms243_test
-
toms291,
a C code which
approximates the logarithm of the Gamma function;
This is a version of ACM TOMS algorithm 291.
-
toms291_test
-
toms322,
a C code which
evaluates the F and the Student T Cumulative Density Function (CDF);
This is a version of ACM TOMS algorithm 322.
-
toms322_test
-
toms443,
a C code which
evaluates the Lambert W function.
This is a version of ACM TOMS algorithm 443.
-
toms443_test
-
toms446,
a C code which
manipulates Chebyshev series for interpolation and approximation.
This is a version of ACM TOMS algorithm 446,
by Roger Broucke.
-
toms446_test
-
toms462,
a C code which
evaluates the upper right tail of the bivariate normal distribution;
that is, the probability that normal variables X and Y
with correlation R will satisfy H <= X and K <= Y.
This is a version of ACM TOMS algorithm 462.
-
toms462_test
-
toms515,
a C code which
selects subsets of size K from a set of size N,
This is a version of ACM TOMS Algorithm 515,
by Bill Buckles, Matthew Lybanon.
-
toms515_test
-
toms577,
a C code which
evaluates the Carlson elliptic integral functions RC, RD, RF and RJ.
This is a version of ACM TOMS algorithm 577.
-
toms577_test
-
toms655,
a C code which
computes the weights for interpolatory quadrature rule;
this code is commonly called IQPACK,
by Sylvan Elhay and Jaroslav Kautsky.
This is a version of ACM TOMS algorithm 655.
-
toms655_test
-
toms743,
a C code which
evaluates the Lambert W function.
This is a version of ACM TOMS algorithm 743,
by Barry, Barry and Culligan-Hensley.
-
toms743_test
-
toms886,
a C code which
defines the Padua points for interpolation in a 2D region,
including the rectangle, triangle, and ellipse,
by Marco Caliari, Stefano de Marchi, Marco Vianello.
This is a version of ACM TOMS algorithm 886.
-
toms886_test
-
toms917,
a C code which
evaluates the Wright Omega function,
by Piers Lawrence, Robert Corless, David Jeffrey.
This is a version of ACM TOMS algorithm 917.
-
toms917_test
-
trapezoidal,
a C code which
solves one or more ordinary differential equations (ODE)
using the (implicit) trapezoidal method, and a version of
fsolve() to handle the nonlinear equation.
-
trapezoidal_test
-
treepack,
a C code which
defines, analyzes, and manipulates trees,
a simple kind of graph with no circuits.
Special cases include rooted and binary trees.
Representations include adjacency, arc, Pruefer code,
and parent.
Operations include center, diameter, eccentricity, enumeration,
generation one at a time, random selection, traversal.
-
treepack_test
-
triangle,
a C code which
computes properties, including angles, area, centroid, circumcircle,
edge lengths, incircle, orientation, orthocenter, and quality,
of a triangle in 2D.
-
triangle_test
-
triangle_analyze,
a C code which
reads a triangle defined in a file, and
computes angles, area, centroid, circumcircle, edge lengths,
incircle, orientation, orthocenter, and quality.
-
triangle_analyze_test
-
triangle_bench,
a C code which
sets up sample datasets of random points in the unit square,
writes them to a file acceptable by Jonathan Shewchuk's triangle()
program for computing Delaunay triangulations and Voronoi diagrams,
which can then be benchmarked by timing the computation for
increasing large sets.
-
triangle_bench_test
-
triangle_exactness,
a C code which
tests the polynomial exactness of a quadrature rule
over the interior of a triangle in 2D.
-
triangle_exactness_test
-
triangle_fekete_rule,
a C code which
returns a Fekete rule
for interpolation or quadrature
over the interior of a triangle in 2D.
-
triangle_fekete_rule_test
-
triangle_felippa_rule,
a C code which
returns a Felippa quadrature rules for approximating integrals
over the interior of a triangle in 2D.
-
triangle_felippa_rule_test
-
triangle_grid,
a C code which
computes a grid of points
over the interior of a triangle in 2D.
-
triangle_grid_test
-
triangle_integrals,
a C code which
returns the exact value of the integral of any polynomial
over the interior of an arbitrary triangle in 2D.
-
triangle_integrals_test
-
triangle_interpolate,
a C code which
shows how vertex data can be interpolated at any point
in the interior of a triangle.
-
triangle_interpolate_test
-
triangle_io,
a C code which
reads or writes some of the files created by the triangle() program
of Jonathan Shewchuk.
-
triangle_io_test
-
triangle_monte_carlo,
a C code which
uses the Monte Carlo method to estimate an integral
over the interior of a general triangle in 2D.
-
triangle_monte_carlo_test
-
triangle_ncc_rule,
a C code which
defines Newton-Cotes closed (NCC) quadrature rules
over the interior of a triangle in 2D.
-
triangle_ncc_rule_test
-
triangle_nco_rule,
a C code which
defines Newton-Cotes open (NCO) quadrature rules
over the interior of a triangle in 2D.
-
triangle_nco_rule_test
-
triangle_nodefile_random,
a C code which
generates a set of N random nodes in M dimensions, and writes them
to a file suitable for processing by Jonathan Shewchuk's triangle()
program.
-
triangle_nodefile_random_test
-
triangle_shewchuk,
a C code which
generates meshes, Delaunay triangulations, and Voronoi diagrams,
by Jonathan Shewchuk;
-
triangle_shewchuk_test
-
triangle_svg,
a C code which
uses Scalable Vector Graphics (SVG) to plot a triangle and
any number of points, to illustrate quadrature rules and
sampling techniques.
-
triangle_svg_test
-
triangle_symq_rule,
a C code which
returns efficient symmetric quadrature rules,
with exactness up to total degree 50,
over the interior of a triangle in 2D,
by Hong Xiao and Zydrunas Gimbutas.
-
triangle_symq_rule_test
-
triangle_to_fem,
a C code which
reads the NODE and ELE files
created by the triangle() program to
describe a triangular mesh, and writes a corresponding pair of
node and element files in the 2D FEM format.
-
triangle_to_fem_test
-
triangle_to_medit,
a C code which
reads the NODE and ELE files
created by the triangle() program to
describe a triangular mesh, and writes a corresponding
medit() mesh file.
-
triangle_to_medit_test
-
triangle_to_xml,
a C code which
reads the NODE and ELE files created by triangle() to
describe a triangular mesh in 2D, and writes out a corresponding XML mesh
file for use by DOLFIN or FENICS.
-
triangle_to_xml_test
-
triangle_twb_rule,
a C code which
generates the points and weights of quadrature rules
over the interior of a triangle in 2D,
determined by Taylor, Wingate, and Bos.
-
triangle_twb_rule_test
-
triangle_witherden_rule,
a C code which
returns a symmetric Witherden quadrature rule for the triangle,
with exactness up to total degree 20.
-
triangle_witherden_rule_test
-
triangle01_integrals,
a C code which
returns the integral of any monomial
over the interior of the unit triangle in 2D.
-
triangle01_integrals_test
-
triangle01_monte_carlo,
a C code which
uses the Monte Carlo method to estimate an integral
over the interior of the unit triangle in 2D.
-
triangle01_monte_carlo_test
-
triangulate,
a C code which
triangulates a polygonal region,
by Joseph ORourke;
-
triangulate_test
-
triangulation,
a C code which
computes the triangulation of a set of points in the plane,
and performs various operations using a triangulation, including
searching a Delaunay triangulation to find
which triangle contains a given point.
-
triangulation_test
-
triangulation_node_to_element,
a C code which
reads files describing a set of nodes, their triangulation, and the
value of one or more quantities at each node, and outputs a file
that averages the quantities for each element. This operation
in effect creates an "order1" finite element model of the data.
-
triangulation_node_to_element_test
-
triangulation_svg,
a C code which
creates an SVG image of a triangulation, which can be displayed
by a web browser.
-
triangulation_svg_test
-
triangulation_triangle_neighbors,
a C code which
reads data defining a triangulation, finds the three neighbor
triangles for each triangle, and writes them to a file;
-
triangulation_triangle_neighbors_test
-
trig_to_neib,
a C code which
reads node and ele files,
a format prescribed by the triangle() program of Jonathan Shewchuk,
describing a triangulation, and produces a file defining the
neighbor triangles of each element; the code can also produce
information about the Voronoi diagram. The code is by Lili Ju.
-
trig_to_neib_test
-
truncated_normal,
a C code which
works with the truncated normal distribution over [A,B], or
[A,+oo) or (-oo,B], returning the probability density function (PDF),
the cumulative density function (CDF), the inverse CDF, the mean,
the variance, and sample values.
-
truncated_normal_test
-
truncated_normal_rule,
a C code which
computes a quadrature rule for a
normal probability density function (PDF), sometimes called a
Gaussian distribution, that has been truncated to [A,+oo), (-oo,B],
or [A,B].
-
truncated_normal_rule_test
-
tsp_brute,
a C code which
reads a file of city-to-city distances and solves a small
traveling salesperson problem (TSP), using brute force.
-
tsp_brute_test
-
ubvec,
a C code which
demonstrates how nonnegative integers can be stored as
unsigned binary vectors, and arithmetic can be performed on them.
-
ubvec_test
-
umfpack_test,
a C code which
calls umfpack(), which
solves sparse linear systems,
part of the SuiteSparse package, by Timothy Davis.
-
unicycle,
a C code which
considers permutations containing a single cycle,
sometimes called cyclic permutations.
-
unicycle_test
-
uniform,
a C code which
contains uniform random number generators (RNG) for several
arithmetic types.
-
uniform_test
-
upc,
a C code which
computes the check digit associated with a uniform product code (UPC),
or reports whether a 12-digit UPC is actually valid.
-
upc_test
-
valgrind_test,
a C code which
uses valgrind(), a suite of programs which includes
a memory leak detector.
-
van_der_corput,
a C code which
computes elements of
the van der Corput one-dimensional Quasi Monte Carlo (QMC) sequence,
using a simple interface.
-
van_der_corput_test
-
vandermonde,
a C code which
implements the Bjork-Pereyra algorithm for accurate solution of
linear systems involving the Vandermonde matrix.
-
vandermonde_test
-
vandermonde_approx_1d,
a C code which
finds a polynomial approximant to data y(x) of a 1D argument
by solving an overdetermined linear system
for the polynomial coefficients involving the Vandermonde matrix.
-
vandermonde_approx_1d_test
-
vandermonde_approx_2d,
a C code which
finds a polynomial approximant p(x,y) to data z(x,y)
of a 2D argument by setting up and
solving an overdetermined linear system for the
polynomial coefficients involving the Vandermonde matrix.
-
vandermonde_approx_2d_test
-
vandermonde_interp_1d,
a C code which
finds a polynomial interpolant to data y(x) of a 1D argument
by setting up and solving a linear system
for the polynomial coefficients involving the Vandermonde matrix,
creating graphics files for processing by gnuplot().
-
vandermonde_interp_1d_test
-
vandermonde_interp_2d,
a C code which
finds a polynomial interpolant to data z(x,y) of a 2D argument
by setting up and
solving a linear system for the polynomial coefficients
involving the Vandermonde matrix.
-
vandermonde_interp_2d_test
-
walker_sample,
a C code which
efficiently samples a discrete probability vector using
Walker sampling.
-
walker_sample_test
-
walsh_transform,
a C code which
implements the Walsh data transform.
-
walsh_transform_test
-
wathen_matrix,
a C code which
compares storage schemes: full, banded, sparse triplet, and
solution strategies: Linpack full, Linpack banded,
conjugate gradient (CG), for linear systems involving the Wathen
matrix, which can arise when solving a problem using the
finite element method (FEM).
-
wathen_matrix_test
-
wave_mpi,
a C code which
uses the finite difference method (FDM) and MPI
to estimate a solution to the wave equation.
-
wave_mpi_test
-
wavelet,
a C code which
does some simple calculations with wavelet transforms;
-
wavelet_test
-
wedge_exactness,
a C code which
investigates the polynomial exactness of a quadrature rule
over the interior of the unit wedge in 3D.
-
wedge_exactness_test
-
wedge_felippa_rule,
a C code which
returns quadrature rules for approximating integrals
over the interior of the unit wedge in 3D.
-
wedge_felippa_rule_test
-
wedge_grid,
a C code which
computes a grid of points
over the interior of the unit wedge in 3D.
-
wedge_grid_test
-
wedge_integrals,
a C code which
returns the exact value of the integral of any monomial
over the interior of the unit wedge in 3D.
-
wedge_integrals_test
-
wedge_monte_carlo,
a C code which
uses the Monte Carlo method to estimate an integral
over the interior of the unit wedge in 3D.
-
wedge_monte_carlo_test
-
weekday,
a C code which
determines the day of the week corresponding to a given date,
such as 14 October 1066, Julian calendar, ... which was a Saturday.
-
weekday_test
-
wishart_matrix,
a C code which
produces sample matrices from the Wishart or Bartlett distributions,
useful for sampling random covariance matrices.
-
wishart_matrix_test
-
wtime,
a C code which
returns a reading of the wall clock time in seconds.
-
wtime_test
-
x_window_test
-
zero_brent,
a C code which
seeks a solution of a scalar nonlinear equation f(x)=0,
by Richard Brent.
-
zero_brent_test
-
zero_chandrupatla,
a C code which
finds a zero of a scalar function of a scalar variable,
starting from a change of sign interval, using the
Chandrupatla method, which can converge faster than
bisection, regula falsi, or Brent's method,
by Tirupathi Chandrapatla.
-
zero_chandrupatla_test
-
zero_itp,
a C code which
finds a zero of a scalar function of a scalar variable,
starting from a change of sign interval, using the
Interpolate/Truncate/Project (ITP) method, which has
faster convergence than the bisection method.
-
zero_itp_test
-
zero_laguerre,
a C code which
uses Laguerre's method to find the zero of a function.
The method needs first and second derivative information.
The method almost always works when the function is a polynomial.
-
zero_laguerre_test
-
zero_muller,
a C code which
seeks a root of a nonlinear equation using the Muller method,
with complex arithmetic.
-
zero_muller_test
-
zero_rc,
a C code which
seeks a solution of a scalar nonlinear equation f(x)=0,
using reverse communication (RC), by Richard Brent.
-
zero_rc_test
-
ziggurat,
a C code which
samples the uniform, normal or exponential distributions,
using the ziggurat method, by Marsaglia and Tsang.
-
ziggurat_test
-
ziggurat_inline,
a C code which
generates variates from the uniform, normal or exponential distributions,
using an inline random number generator for very fast execution,
by Marsaglia and Tsang.
-
ziggurat_inline_test
-
ziggurat_openmp,
a C code which
demonstrates how ziggurat() can be used as a
random number generator (RNG) in an OpenMP parallel program.
-
ziggurat_openmp_test
Last revised on 18 October 2024.