- VERSION 1.2 (beta release - August 1997) -

What is simjava?

simjava is a process based discrete event simulation package for Java, similar to Jade's Sim++, with animation facilities. If that means nothing to you, then take a look at the examples to see what's possible.

The basic idea is a collection of entities each of which runs in its own thread. These entities are connected together by ports and can communicate with each other by sending and receiving event objects. A central system class controls all the threads, advances the simulation time, and delivers the events. The progress of the simulation is recorded through trace messages produced by the entities, and saved in a file.

A simulation layout

What's new in version 1.2?

Applet examples

Some examples of the applet animation features of simjava in action.

(NB These all use release 1.1 of Java, and will not work under browsers which only support Java version 1.0.2. HotJava1.0 currently supports JDK1.1, and the next releases of Explorer and Netscape claim to, but these applets have only been tested using Sun's JDK1.1.3 and HotJava1.0 on Solaris. Additionnally, it appears that some older version of Netscape may fail to load images correctly where Mozilla browser do not.)

Download simjava

See the simjava home page for download details.


There are three tutorial guides and a design document: And three reference documents generated using javadoc:

Directory structure

  index.html		-- This file
  classes/		-- The .class files
  eduni/		-- The source code
  doc/	                -- Documentation
    ref/		-- javadoc generated detailed docs
    simjava_guide/	-- User guides
  jars/			-- jar archives
  examples/		-- Examples, see README.txt for details


If you have any comments on the package, or bugs to report, then please send them to the address below. We would also like to hear from you if you've written a new animation applet and have it on the web.
Fred Howell -
Ross McNab
Department of Computer Science
University of Edinburgh