Back to Joe's Java Index Back to Joe's Java Index.


Functional Table Reader

 

Table Reader is a Java application that can read n-dimensional functional tables from various file formats and convert between them. In addition, the program allows you to interactively do lookups into the tables and includes a simple plotting capability. The Table Reader program can currently read and write four ASCII table file formats, FDA, CSV, NASA 2,3, or 4 argument, and two different FlightLab SAV file formats. In addition, it can read, but not write, C81 airfoil aerodynamics tables.

FDA stands for "Function Data Handling System ASCII". FDA is the most complete ASCII format that this program supports. It allows for any number of tables per file, with any number of dimensions per table, and it allows for both table level and file level comments (which are currently ignored by the table classes implemented in Table Reader).

CSV stands for "Comma Separated Value". The CSV format is convenient for moving tables to and from Excel, but it requires that all the tables in the file have the exact same set of breakpoints and has only file level notes (not table level) that are contained in 4 lines of header at the start of the file.

The NASA 2,3,or 4 argument table file is a name list format that only works with tables that have dimensions between 2 and 4. It does allow for table level notes, but not file level.

The two supported ART (Advanced Rotorcraft Technology, Inc) FlightLab SAV file formats are the 2D airfoil high/low alpha aerodynamics and the fuselage 2D uniform increment aerodynamics tables. These are very specific formats that are used by ART's FlightLab simulation system and are not used elsewhere. Even the parameter names are hard-coded, so unless you use FlightLab, you aren't going to use these formats. Examples of these four table file formats can be found below.

C81 airfoil aerodynamics tables are data tables used to provide airfoil aerodynamics data to the Bell C81 helicopter simulation system. Table Reader assumes that there are three tables per file and that they are (in order): sectional cl, cd, and cm. Each of these three tables can have a different set of Mach and angle of attack breakpoints.

I've included the entire source code for Table Reader for you to download below. This program and it's source code are free software protected by the General Public License.

Table Reader requires Java 1.2 (Java 2) or later. This program works with MacOS X straight out of the box. Under MS Windows, you should install the latest version of Java 2 and I'm not sure what the oldest version is that will support this program. I no longer support a MacOS 8/9 version of this program.

My Table Reader program is available in three formats. One is set up as a double-clickable application under MacOS X. The other two include installers for use under Windows and UNIX. Download the one that is appropriate for your platform. If you would like the raw class files for use on other platforms, just e-mail me and I'll be glad to send them to you.

MacOS Application
(1.2 MB)

Version 1.5.0

Application that will run under MacOS X. This file is a disk image file. Includes the full source code.

Windows Application
(3.3 MB)

Version 1.5.0

Application that will run under Windows. Requires that you have Java 1.2 (Java 2) installed. This file is a Zip archive containing an executable installer that will install the files and place an item in your Start-Programs menu for you.

UNIX Application
(3.4 MB)

Version 1.5.0

Application that will run on any flavor of UNIX that supports Java 1.2 or later. This is an executable shell script that will help you to properly install the application.

Example Tables
(16 kB)

Examples of FDA, CSV, NASA formatted, FlightLab SAV and C81 table files. If you have further questions about any of these formats, just contact me. This is a ZIP compressed file.

Source Code
(6.2 MB)

Version 1.5.0

The full source code for Table Reader program. This is a ZIP compressed file. Includes JAR files for the MRJ Adapter, Ostermiller Utilities and JFreeChart libraries used by this program.

Change history.

Need help?


Created: February 27, 2000
Modified: February 17, 2008