Wave Simulation Version 1.0 Copyright (C) 2002 David C. Banks banks@csit.fsu.edu ---------------------------------------------------------------------- Short Summary Type "make" and then run "waveSimulator". Has been tested under Operating System Processor ------------------ -------------------- Irix 6.5 MIPS R1200 Linux Redhat 7.3 Intel Pentium 4 Application requirements Open Inventor 2.1 http://oss.sgi.com/projects/inventor/ OpenGL http://oss.sgi.com/projects/ogl-sample/ GLX http://www.sgi.com/software/opensource/glx/ X11R6 http://www.x.org/ Motif http://www.opengroup.org/desktop/motif.html http://www.x.org/resources.htm Documentation requirements GNU make http://www.gnu.org/software/make/make.html ImageMagick convert http://www.imagemagick.org/ Adobe Acroread http://www.adobe.com/products/acrobat/ (PDF spec) http://partners.adobe.com/asn/developer/acrosdk/docs/filefmtspecs/PDFReference.pdf ---------------------------------------------------------------------- Purpose of the software This software simulates waves generated by an oscillator. Properties of the oscillator, the medium, and the grid can be controlled by clicking and dragging on 3D widgets in the scene. The software was developed to support a multi-disciplinary graduate course titled Interactive Computational Simulation, taught within the School of Computational Science and Information Technology (CSIT) at Florida State University, Fall 2002. When real-time input governs a simulation as it is running, the result is sometimes called "computational steering" and the system is sometimes called a "problem solving environment". The idea is that a user can experiment with the simulation in order to gain insight into a physical problem. ---------------------------------------------------------------------- Technical details of the software The code is written in C++. It was originally developed for SGI (formerly Silicon Graphics, Inc.) computers running Irix (a version of the Unix operating system) with the X Windowing system. It was modified to run under the Linux operating system. The code that is concerned with 3D graphics uses Open Inventor, a graphics library developed by SGI and released as open source software. Open Inventor uses Open GL, a graphics standard developed largely by SGI, which later sold the patent rights to Microsoft. The code concerned with the window's menu bar uses the X toolkit "xt" and the Motif window manager toolkit "xm". A GNU version of Motif, called Lesstif, is available for systems running Linux. ---------------------------------------------------------------------- Using the software As the simulation proceeds, its state depends on parameters such as oscillator : position, velocity, amplitude, frequency, phase fluid medium : waveSpeed, damping grid : dimensions These parameters can be specified * from the command line * from a parameter file * through user interaction with 3D controls (draggers) in the scene ---------------------------------------------------------------------- Documentation The code is self-documenting, in the sense that it can be formatted to include images that illustrate its various sections. The tool that formats the code is GNU's "enscript", which produces output in the Adobe "postscript" language suitable for postscript printers. The postscript document can be converted to pdf (portable document format) for viewing by Adobe's free "acroread" viewer. To generate the documentation, type make doc at the command line. The resulting pdf files will be created in the doc/ subdirectory. The images are generated by the c-shell script figures.csh