R.D. Kriz* and A.D. Falck**
The Internet and the World Wide Web (Web) have truly revolutionized our lives in many ways but how, as scientists and engineers, can we best take advantage of the Web to do research? At Virginia Tech graduate students and professors are taking a first step by creating an interactive environment on the Web with PV-Wave and Java.
Arturo Falck, a graduate student in the Atomistic Computer Simulation Laboratory, has been experimenting with visual data analysis tools and Web technology to create a highly interactive environment to model and study the influence of cracks and dislocations on ductility in intermetallic and ceramic materials using the embedded atom method. This was also the topic for his class project in Scientific Visual Data Analysis and Multimedia (ESM4984). Arturo explains, "What we learn from this project is the first step in implementing a more general multidisciplinary tool to enhance the research environment for both students and faculty". This project will be the first of many projects that will become part of the Sun-VNI Scientific Modeling and Visualization Classroom at Virginia Tech. As partners, Sun, Visual Numerics and Virginia Tech faculty will begin to explore how VDA and the Web can be used both as a multidisciplinary tool and as part of a distributed visual computing environment on campus.
With atomistic simulation as a focus, Arturo created an impressive interactive Web site that has now transformed into the Combined Reaserach and Curriculum Development (CRCD) Web site. Starting at this home page, the reader can get to the interactive simulation part by selecting the Nano-9 m topic in the uppper right and then select "Modles / Interactive Computer Programs". Supporting this interactive section are Lectures and Assignments where the user can inquire about reference materials and potentials that will be used in the atomistic models. Future interfaces will allow the user to select modules that will become part of the simulation model. To access the simulation section the user must enter their email address. These atomistic models are typically very large computationally-intensive jobs that must be submitted to a remote supercomputer. In the original interface files associated with the Open button, which were previously generated, can be selected, viewed, modified, and submitted in the adjacent left frame. But now the user simply selects the submit button and the user receives an email message upon completion and results of this simulation are returned as a viewable file associated with the simulation results. The user can immediately look at the results as a viewable file where PV-Wave and Java applets are used together to help the scientist begin to understand the results. Of course the raw simulation data can be post processed later but with an interactive / viewable interface the user can post process this raw data in a more informed fashion.
The core of the interactive aspect of our code lies in a fairly simple CGI (common gateway interface) program that processes Web-page based forms and takes care of the background networking. The CGI program translates the information from the form into the input file used by the old code, moves it to a remote location and submits a batch job on the remote computer. This was all written in C. When the user asks the CGI program to display the output of the simulation, the program retrieves the output file from the remote computer, filters out unwanted information using PV-Wave (this is specific to the type of visualization scheme chosen), and displays it on the Web using Java Applets. Again the CGI takes care of coordinating the programs written in Java and PV-Wave. The new CRCD Web server has replaced the CGI interface which is now all written in Java.
Four programs were needed to create and process the forms, run the simulation, create a visual representation of the results, and display the output on-line. The CGI program makes calls to the other three programs and takes care of the networking. The main difficulty lies in the fact that six different syntax were used to produce the correct results (C, PV-Wave, Java, FORTRAN, HTML, and UNIX commands), sometimes embedding the syntax of one language in the code of another. This application is a simple example of what can be done through the Internet by combining the strengths of several programming environments, but the real challenge is to provide scientists with the ability to do the same on their own (without the nuisance of having to learn three of four different programming languages)
The next step is to create Visual Programming Environments (VPEs) where simple syntax languages like PV-Wave can be combined with other useful software tools that will allow scientists and engineers to program seemingly complex systems with different programming languages without worrying about difficulties in syntax. For example, many engineers and scientists generate large data sets from computer-controlled laboratory experiments where LabVIEW is often used to interface with the actual laboratory equipment. PV-Wave, like LabVIEW, are both friendly but can they be integrated together with HTML and Java into modules that will bring the powerful feature of each of these languages into a unified Web-based graphical programming environment?
Another example is when engineers and scientists already have data and do not need to access a full-featured VDA tool-kit on their own personal computer that does not have the memory or speed necessary for an initial evaluation. For these applications the user would prefer to access a simple VDA tool kit on the Web. We are working on a Web-based interface where engineers and scientists can visualize their second-order tensors in Cartesian coordinate space by access to a more powerful remote workstation. If more complex analysis justifies developing a customized VDA tool then the user can access PV-Wave on a more appropriate workstation. This type of interface can bring VDA to many more users on campus.
These and other issues are the focus of research at Virginia Tech but for now our attention is focused on learning by creating a usable interface for the materials research community for those researchers interested in modeling the embedded atom method. Although work will be extended on developing other interfaces, work will continue on developing interfaces for the Atomistic Computer Simulation Laboratory. As work progresses, we will continue to update http://www.jwave.vt.edu and http://www.jwave.vt.edu/crcd/.
In all of our efforts we will emphasize the creation of a distributed visual computing environment using PV-Wave and Java together with other software tools that are typically used by engineers and scientists in their quest for knowledge.
**Arturo Falck is a Graduate Research Assistant in the Department of Materials Science and Engineering at Virginia Tech.