[PYTHON MATRIX-SIG] Integrated Simulation Environment?

Paul F. Dubois dubois1@llnl.gov
Tue, 3 Sep 1996 09:59:23 -0700


David,

Some comments based on our experience.

a. For a system involving compiled code, we used a Perl script (Python
hadn't been invented yet!) to proceed from a small "project description
file" to create the
    correct "make" files. For persistance from the code itself we used
"PDB", a self-describing file format available in the
   public domain. We have made a basic interface from Python which is
freely available. (on our ftp site, ftp-icf.llnl.gov).
   PDB is part of the "Pact" project, available from coral.llnl.gov. 

b. Experience with "smart" simulation objects is not promising. Suppose,
for example, that you know something about
   arrays y and x, and wish to plot y vs. x. You want the labels, units,
etc. to be right. Supposing that you have 
  accomplished this, the next thing that will happen is that someone wants
to plot ln(1 + y**2) vs. ln(x), or something
  like that. There is no reasonable way to calculate the labels, units,
range, etc.

Therefore the standard approach to this is to make persistent files that
support these notions. The PDB library has
some support for this using a concept called mappings. There is also a more
elaborate interface named SILO which 
contains a larger number of standard objects. (SILO is on top of PDB). LLNL
is almost done with a Python/SILO interface.

On the graphics front, we have a working interface to Gist (part of the
Yorick project) which supports curves, contour maps,
cell arrays, etc., and are testing our "nice" interface, including 3-D
stuff. Lee Taylor of LLNL is well along on an interface to
the Pact graphics (called PGS). Geoff Furnish of LLNL has a Tk/PLPLOT
widget. We also have an interface to Narcisse,
a good 3-d exploratory graphics server produced by the Centre d'Etudes de
Limeil-Valenton; a recent message from them
indicates they are planning to release Narcisse for general use.

----------
> From: David Ascher <da@maigret.cog.brown.edu>
> To: matrix-sig@python.org
> Subject: [PYTHON MATRIX-SIG] Integrated Simulation Environment?
> Date: Monday, September 02, 1996 1:54 PM
> 
> Hi folks.
> 
> I keep working on simulations using NumPy, and I'd like to develop
> some tools which make it easier to use.  Here are some random thoughts
> on the topic.
> 
> 1) I'd like to have controlled persistency.  For example, I would like
>    to have "project files" which maintain a state accross invocations,
>    including but not restricted to:
> 	- configurable all/none/chosen intermediate variables
> 	- function definitions in the interpreter
> 	- graphs of data (using PIL or OpenGL or whatever else comes
>           along)
> 
> 2) I need "smart simulation objects", which incorporate notions like
>    labeled, unit-ful, range-ful axes, a notion of dependency between
>    objects (so that if I change the definition of "input_set", then all
>    of the relevant dependencies can be updated).
> 
> 3) I need graphing capabilities.  This is pretty obvious, so I'll just
>    say that if 2) above is implemented, some parts of this are easy --
>    labeling the axes in the correct units, etc., should be trivial.
> 
> I have some old (outdated) preliminary work addressing the "axis" part
> of 2), and I know that Konrad has thought about that issue as well, 
> both in terms of physical quantities and of labeled axes.  I keep 
> thinking about 3), but I've been waiting for some settling on the
> graphics front.  I haven't thought hard about 1) much at all, but I know
> from the discussions on this list that some have played with
> pickle/dump, which would clearly be at the core of that functionality.
> 
> These tools are what I think will make Python have a chance when
> compared to Matlab, S+, etc.  I'll be working on them for my own good,
> but I was wondering if others were thinking along the same lines.
> 
> --david
> 
> 
> =================
> MATRIX-SIG  - SIG on Matrix Math for Python
> 
> send messages to: matrix-sig@python.org
> administrivia to: matrix-sig-request@python.org
> =================

=================
MATRIX-SIG  - SIG on Matrix Math for Python

send messages to: matrix-sig@python.org
administrivia to: matrix-sig-request@python.org
=================