TABLE_IO is a FORTRAN90 library which can read or write a TABLE file.
A TABLE file is a simple format for storing a double-indexed array of data. We regard this is a situation involving N points in M dimensions, with M relatively small (often just 2 or 3, but possibly 10 or 20) while N can be "enormous" (10, 100, 1,000 or 10,000).
To keep things simple, then, the data is written to an ASCII file, with optional comment lines (which must start with the '#' character) and blank lines (which are ignored). The point data is stored by writing the coordinates of each point on a separate line. No information about M or N is explicitly included in the file. It is up to the I/O program to determine this.
TABLE_IO supplies routines by which a TABLE file can easily be written or read. A typical write operation for a double precision real table simply calls routine R8MAT_WRITE. A typical read operation will probably first want to call R8MAT_HEADER_READ to determine the values of M and N, and then allocate space for the table, and then call R8MAT_DATA_READ to read the data.
TABLE_IO includes routines to read and write table datasets whose entries are integers (I4MAT) or double precision reals (R8MAT).
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
TABLE_IO is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version and
TABLE_BARPLOT_PPMA, a FORTRAN90 program which reads a table file and creates a PPMA bargraph of the data.
TABLE_BORDER, a FORTRAN90 program which can be used to add a border (of zero values) to a table file.
TABLE_COLUMNS, a FORTRAN90 program which can extract specific columns of data from a table file.
TABLE_COLUMNS_PERMUTE, a FORTRAN90 program which permutes the columns of a table file.
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_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 FORTRAN program which can be used to compute information about the Voronoi diagram of the points.
You can go up one level to the FORTRAN90 source codes.