Teaching computational physics using Java

Simeon Warner (http://www.phy.syr.edu/~simeon)

Department of Physics, University of Syracuse,
Syracuse, NY 13244-1130, USA.

Monday 13th December 1996.

The rest of the team

Simon Catterall, Eric Gregory, Metin Sezgin.

Project

`Integration of Information Age Networking and Parallel Supercomputer Simulations into University General Science and K-12 Curricula'.

This is an NSF-MRA (Metacenter Regional Alliance) of Syracuse Physics, Syracuse Engineering, Cornell Physics, Cornell Engineering and NPAC.

We aim to develop interactive educational modules to be integrated into undergraduate courses, and then into K-12 curricula.
-- Thinking both in terms of individual study and in terms of classroom situations

Intend to use best available technologies; currently Web, Java, maybe VRML soon.
-- A bit of a moving target but this is unavoidable

Four simulation modules are being developed;

Related work

Before Java was available, the Syracuse entry-level Physics course `Science for the 21st Century' used cgi-and-forms based interaction to provide web access to Neural Network models.

NPAC have experience with web material for K-12 from the Living Textbook Project
(now Living Schoolbook Project).

Membranes - Introduction

Understanding the properties of two-dimensional interfaces and membranes has become an important goal for many fields of science, including: Behavior of red blood cells in the body can be described by the same theories very similar to the string theories of particle physics.

Aim to bring out generality of membrane models. A range of explorations from the biology of life processes through materials to cosmology.

Leverage interest in physics from more familiar biological context?

Membranes - Real membranes

Want to model accurately the underlying microscopic dynamics
=> calculations require high performance computers.

Artificial amphiphilic membranes are a lively research field; applications in

Membranes able to close in on themselves forming vesicles (small closed surfaces), designed to open up and release their load when the `correct' physical chemical conditions are found.
=> useful as drug carriers.

Membranes - Particle physics

String theories can be thought of as theories of random surfaces.

Thermal fluctuations in the biological context replaced by quantum fluctuations.

Hope to draw on common thread with `real' membranes.
-- Hard to see how we can explain any meaningful particle physics to anyone but the high-end of K-12. Still much work to be done here! First intend to concenmtrate on `real membranes' and bilogical context in particular.

Membrane physics

Research interest driven by numerical simulation.

Two main classes of `membrane':

  1. fluid membranes
    => molecules can freely flow around each other for any shape of the membrane surface
  2. crystalline or polymerized membranes
    => molecules held in place by strong covalent bonds.
At any finite temperature these membranes undergo thermal fluctuations and the physical properties of the surface depend on the interplay between these disordering effects and the ordering associated with a curvature-suppressing energy term.

Complex phase structures exist between `smooth' surfaces, `crumpled' surfaces and other more exotic possibilities.

Teaching tools

Aim to assemble a suite of simulations illustrate a variety of phenomena. Where possible use Java, supported by text, video and interactive simulation-on-demand.

Link Java simulations of small/toy systems with video and remote simulation of larger systems.

Java will provide the most interactive `hands-on' experience for students.

`Edutainment'

Simple idea:

However:

Simplicity

In spite of the need to be `neat', I think simplicity is very important!
-- Maybe this is an expression of my artistic preferences or simply a secret Luddite tendency. However, I shall try to justify a little.

Crystalline membrane simulation (1)

Snapshot of a Java applet running a simulation of an 8 by 8 triangulation near the crumpling transition but in the `flat' phase. The applet allows the viewpoint to be arbitrarily rotated as the membrane evolves under Monte Carlo updates.

Crystalline membrane simulation (2)

Code very similar to research simulation (C++)
-- in fact C++ simulation based on my Java code.

Uses OOGL_OFF class written by Daeron Meyer of The Geometry Center:

So far, applet is proof of principle - rather small. Main limitation is display speed.

VRML

Obvious choice for 3D display.

VRML API's for Java may prove useful -- haven't tried it yet, currently no standard.
-- SGI Cosmo on Wondows is only current example. Cornell collaborators have demonstrated is successfully with hysteresis code.

Have tried canned VRML:

Have also made canned movies.

Fluid membrane simulation

Dynamical triangulations code have both node moves and geometry changes (link flips).

Similar display and control requirements to crystalline membrane. Current implementation optionally highlights link flips.

Troublesome Monte Carlo

First impression is good but rather false. Need to look at statistics - idea is to sample representative ensemble of equilibrium configurations.

Supporting applets

Don't use Java solely for headline simulations.

Example: applet to explain `springs' used in membrane model.

Here the user may move either the mass or one of the graph tracers to plot out the force-extension and energy-extension graphs for a simple spring obeying Hook's Law. We have purposefully made the inteface very simple with buttons that clear the graphs, draw in the whole graphs and offer help (including expanation of the other two buttons). The help information appears in a pop-up window.

Speed

Java and client-side computation:

We tune size and complexity of Java models to expected client performance.

Equation may be significantly affected by widespread use if JIT compilers.

Collaboration

Obvious application of collaborative technologies to classroom situation - teacher controls all displays or passes control to a chosen student.

Statistical studies like Monte Carlo are ideal candidates for combined data collection from a classroom of workstations. Good to illustrate benefit of more data.
-- If one were sneaky, one could even imagine doing real physics on random peoples computers by way of some smart server software and Java simulation code. The secret RSA challenge. However, you would have to develop the killer applet to get enough people to run it.

Keeping abreast of collaborative systems work at NPAC.
-- Marek Podgorny demonstrated `Tango' at our last meeting. NPAC have ported a couple of simple physics applets as demonstrations.

Prospects, hopes, where are we going?

[ Index ]


Parallel Supercomputer Simulations for Education
Written by Simeon Warner
Last updated