table_io


table_io, a FORTRAN77 code which reads or writes 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.

The code 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.

The code includes routines to read and write table datasets that are integer (I4MAT) or double precision real (R8MAT).

Licensing:

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages:

table_io is available in a C version and a C++ version and a Fortan90 version and a MATLAB version and an Octave version and a Python version.

Related Data and Programs:

table_io_test

table, the data format which is used to store data in files.

TABLE_BARPLOT_PPMA, a FORTRAN90 program which reads a table file and creates a ASCII PPM 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 FORTRAN90 program which can be used to compute information about the Voronoi diagram of the points.

Source Code:

Examples and Tests:


Last revised on 07 September 2023.