| Sponsors | Beth Schroeder and Davis King |
| Area | Systems |
Problem
A current research area under the direction of Prof. Karsten Schwan focuses on the concept of distributed laboratories. Distributed laboratories are environments that allow scientists, engineers, and others from different fields and different locations to combine their expertise by simultaneously viewing, interacting with, and steering high performance computations. Our work in this area has focused on an atmospheric model of ozone production. The atmospheric lab consists of a steering interface with which atmospheric scientists or NASA researchers may run at a variety of terminals, a model running on a collection of high performance machines and processors, and a backbone called DataExchange that allows the components to communicate.
Your task is to build a Netscape-enabled, Java-based interface and visualization that is integrated into the Distributed Laboratories environment. A visualization running within Netscape might allow a class of students to view a simulation directed by an instructor, or to allow researchers to check a smaller part of the data with low overhead, or even as a test bed for developing new visualization tools rapidly.
The Distributed Laboratories environment is supported by a communication infrastructure developed by the Systems Group at Georgia Tech. The middleware enables clients to dynamically attach/detach to/from a group of communicating process and receive/send binary IO in a heterogeneous environment. There already exists a Java interface to the communication middleware and sample code of its use is available. An interesting and nontrivial part of your task will involve integrating the Java client into the Distributed Laboratories environment, in the process gaining greater understanding of the middleware requirements of a dynamic environment.
Given the project length and the requirement to integrate the tool into the Distributed Laboratories environment, the visualization will be relatively simple. One approach would be to plot 2D cross-sections, such as a polar plot of one atmospheric level, with controls for changing the level or switching to a longitudinal or latitudinal slice. Another approach would be to use an existing Java toolkit to rotate and move through a 3D image. Other ideas are possible, but developing tools for 3D display from scratch is clearly beyond the scope of this project.
Since your project will serve as a basis from which other Java visualization tools can be constructed, a well-structured, modular, and commented implementation is essential.
Background
Deliverables
Evaluation
Evaluation will be based on the effectiveness of the implementation
in meeting the stated objective, the modularity of the code, and
the completeness of the programmer's guide. Please feel free to
contact either Beth Schroeder or Davis King to discuss details of
the project.