PACKAGES AND DIRECTORIES
The other files in this directory provide the HTML-based interface for the
SteadyStateFusionDemo applet (mostly, its help files). All of the code and
its documentation is in the classes directory. Each subdirectory there will
be described below.
This applet consists of several packages. Although most were developed with
this application in mind (some, written by others, were obviously not!), some
should be useful elsewhere. The packages are:
- ssfd
- Contains classes which are almost entirely specific to the
SteadyStateFusionDemo. The
FusionReactor and
ExpTauE classes would probably
be useful in different applets based on this same physical model (e.g.,
a time-dependent fusion reactor). The
OverlayPanel and
ICMFilter classes
which together are responsible for recoloring the plasma in the applet
might be of more general use.
- rootsolvers
- This package is built around the
RootSolver interface.
A single
implementation built on the
Bisection method is
included for use with the
SSFD applet. If more algorithms were added and the
RootSolverException class
strengthened, this package would be a very useful numerical tool (at this
point, it mostly serves as a simple example).
- observable
- This package contains several classes which deal with the
java.util.Observer and java.util.Observable classes. Their use is best
demonstrated by the
ObservableTest application
in the TestApplications
directory.
- palette
- These two classes deal with the palette used to color the plasma in
the SteadyStateFusionDemo. The
PaletteServer
class initializes instances of the IndexColorModel with one of these palettes
(only one is implemented presently). The
PaletteScale class
graphically shows the relationship between the color and its integer
index.
- dpscomponents
- Contained herein are some simpler classes of mine, as well as some
classes written by others (the
RelativeLayout
class and the "Mighty" classes in the button and slider sub-packages).
The
RoundedDouble
class formats a floating point number (double) with a specified number
of decimal digits.
The panel sub-package contains two potentially very useful classes: the
ImagePanel
turns an image into a layout-able component, and
MultiLabelPanel makes a multi-line Label.
- graph
- Leigh Brookshaw's graph classes. Their documentation is included here for the user's convenience.
The other directories here are:
- docs
- The javadoc-generated HTML documentation for all classes.
- TestApplications
- Simple java-command-line applications to test some of the classes.
These are, of course, also good usage examples. See the README file there
for help in running them.
DOCUMENTATION
javadoc does a good job of making it easy to navigate amongst the documents.
The package list is a good place to
start. If you're really interested in the physics model underlying the
SteadyStateFusionDemo, you might want to have a look at a paper documenting
the more general
FORTRAN code on which it's based. If you would like the paper in some
other format, let me know.
SOURCE CODE
Still not happy? You can get the source code and everything else in a
jar file,
or a zip file.
For UNIX fans,
you can grab it in a
tar file
if you'd rather.
MAINTENANCE INFORMATION
This is for my own benefit, mainly. But, here are the commands used to
compile all of the java code (run from the classes directory):
javac ssfd/*.java rootsolvers/*.java palette/*.java observable/*.java graph/*.java dpscomponents/*.java dpscomponents/button/*.java dpscomponents/panel/*.java dpscomponents/slider/*.java
To generate the documentation:
javadoc -version -author ssfd rootsolvers palette observable graph dpscomponents dpscomponents.button dpscomponents.slider dpscomponents.panel
To jar-up the class files to use with Netscape's "archive"
tag:
jar cfv ssfd.jar ssfd rootsolvers palette observable graph dpscomponents
The complete jar, tar, and zip files were created with:
tar cfv ssfd_all.tar ssf
jar cfv ssfd_all.jar ssf
and
zip -r ssfd_all ssf
CONTACT
This code was produced on my own time for the
IPPEX Project. General comments
about it should be directed to the folks there. Specific comments about the
SteadyStateFusionDemo may be sent to me.
Daren Stotler
Princeton Plasma Physics Laboratory
P.O. Box 451, MS 27
Princeton, NJ 08543

Home