next up previous contents
Next: Building and Installing Up: A Discrete EVent system Previous: Contents   Contents

About this manual

The purpose of this manual is to get you working with Adevs as quickly as possible. To that end, it documents the simulation engine's major features with a focus on how they are used. The table of contents summarizes those aspects of the simulator that are described here.

Among the features omitted from this manual, the Java language bindings for the Adevs simulator are both useful enough and mature enough to warrant a brief mention. Build instructions for the Java bindings are given in the ``Build and Install" section. How to use these bindings will be more or less obvious once you have perused the C++ interface: the interfaces for building models and running simulations are essentially the same.

Use of the Java bindings entails several trade offs. There are three chief disadvantages. First, you pay a (usually unnoticeable) cost in execution time for the extra work that Adevs must to do manage memory associated with input and output objects and models orphaned during structure changes. Second, the facilities for combined simulation of discrete event and continuous models have not been implemented for Java. Third, this is not a `pure Java' simulation engine; it uses a great deal of native code to do its work (though this is invisible to the programmer).

There are at least two very positive aspects of the Java bindings. First is that it omits the need for managing memory. The Java garbage collector (plus some extra work by the simulation engine) takes care of this for you. Second, you have access to all of the very nice features and standard libraries of the Java programming language.

Other topics not included in this manual are theory (why was the simulator build this way?) and experimental features of the simulation engine. Among the latter are support for simulation of hybrid differential-algebraic systems and conservative, parallel simulation using multi-core processors. If you are interested in any of these subjects, I offer the following (greatly abridged) list of books and articles:

  1. A. M. Uhrmacher. Dynamic structures in modeling and simulation: a reflective approach, ACM Transactions on Modeling and Computer Simulation, Vol. 11, No. 2 , pp. 206-232. April 2001. The approach by Adevs to modeling and simulation of dynamic structure systems is described in this paper.
  2. Bernard P. Zeigler, Tag Gon Kim and Herbert Praehofer. Theory of Modeling and Simulation, Second Edition. Academic Press. 2000. The Discrete Event System Specification (DEVS) is developed in this book from its roots in abstract systems theory.
  3. James J. Nutaro. Building Software for Simulation: Theory and Algorithms, with Applications in C++. Wiley. 2010. This book presents the Discrete Event Systems Specification along side code for the (slightly abridged) Adevs simulator and examples of its use. This book describes the conservative, parallel simulator, documentation for which is not included in this manual. It also discusses the construction of new ODE and event finding modules for Adevs.
Question and comments about this software can be sent to its maintainer, Jim Nutaro, at nutarojj@ornl.gov.
next up previous contents
Next: Building and Installing Up: A Discrete EVent system Previous: Contents   Contents
rotten 2011-09-07