TABLE_BORDER is a FORTRAN90 program which adds a layer of zero boundary values to a table.
To understand what's going on, assume that we begin with a set of (scalar) values on an M by N grid; we illustrate with M = 3 and N = 5:
11 12 13 14 15 21 22 23 24 25 31 32 33 34 35
Suppose that this data represents the values of some quantity on the interior points of a 5 x 7 grid, and that we'd like to make a new version of the table which includes entries for these boundary values; that is, we want the M+2 by N+2 array created by adding one row and column to the beginning and end of the original table, and setting those values to 0. For our example, this would be:
0 0 0 0 0 0 0 0 11 12 13 14 15 0 0 21 22 23 24 25 0 0 31 32 33 34 35 0 0 0 0 0 0 0 0
The TABLE_BORDER program is designed to do this, using the command line.
Now we are probably going to be dealing with much larger sets of data, stored in a file. So we have to figure out the rules for doing that:
Input file format: The initial data, which is "really" an M by N array, is to be thought of as a vector of length M * N, created by listing the first column, the second column, and so on to the last column. This data is stored in a file using the TABLE format. Our example data would be:
# Comments are OK in a file if preceded by the comment character! # 11 21 31 12 22 ... 34 15 25 35We will presume this file is called "u.txt".
(Pie in the Sky): In a future version of this program, the data at each node will be allowed to be vector-valued. That's one reason we are forcing the data currently to be listed with just a single value per line in the file!
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
TABLE_BORDER is available in a C++ version and a FORTRAN90 version.
TABLE_BARPLOT_PPMA, a FORTRAN90 program which reads a table file and creates an ASCII Portable Pixel Map (PPM) bargraph of the data.
TABLE_DELAUNAY, a FORTRAN90 program which computes the Delaunay triangulation of a set of points.
TABLE_HISTOGRAM, a FORTRAN90 program which can make a histogram of a set of points stored in a table file.
TABLE_IO, a FORTRAN90 library which supplies the routines used to read the TABLE file.
TABLE_LATINIZE, a FORTRAN90 program which reads a file of points and creates a "latinized" version by adjusting the data.
TABLE_MERGE, a FORTRAN90 program which reads a file of points, and removes duplicates, and points that are close to each other.
TABLE_ORTHONORMALIZE, a FORTRAN90 program which reads a file of points and orthonormalizes the columns.
TABLE_QUALITY, a FORTRAN90 program which reads a file of points and computes the quality of dispersion.
TABLE_RECORD_MATCH, a FORTRAN90 program which finds close records in a table file.
TABLE_SCALE, a FORTRAN90 program which multiplies the entries of a table file by a scale vector.
TABLE_SHIFT, a FORTRAN90 program which shifts the entries of a table file by a shift vector.
TABLE_STATS, a FORTRAN90 program which reads a table file and computes certain statistics.
TABLE_TET_MESH, a FORTRAN90 program which reads a table file of 3D data, and computes a tetrahedral mesh.
TABLE_TOP, a FORTRAN90 program which reads a table file of M-dimensional data and makes a table of plots of all pairs of coordinates.
TABLE_UNBORDER, a FORTRAN90 program which removes the border from a table file.
TABLE_UNIFORM_NOISE, a FORTRAN90 program which adds a uniform noise term to the data in a table file.
TABLE_VORONOI, a FORTRAN90 program which computes information about the Voronoi diagram of the points.
Our test data is the results of the command
table_border u_01.txt v_01.txt 3 5Note that the program will automatically repeat the command on a numerical sequence of input files! Test files you may copy include:
You can go up one level to the FORTRAN90 source codes.