General Advice

Visad-compatriots -

I've been on this list for nearly 2 years and watched this community grow and mature during that time and I know there is a great deal of expertise and wisdom collected here in the general arena of scientific visualization, information visualization and java/java3D.

I have written a little Java3D w/o visad and used visad 2D/3D plotting in limited ways but have not gone deeply into either one. I've got more experience with C/C++ and OpenGL but much prefer Java/Java3D and really like what I see in Visad and the many uses it has been put to here by all of you.

I'm working on the requirements and specification for a fairly ambitious project to unify a number of different simulation and analysis tools developed here with a single UI and set of Viz capabilities. I have no doubts about Java/Java3D and especially Visad's relative leverage and portability from a developers standpoint but I do have to answer criticisms and questions from many sides about it's effeciency. As many of you are doing scientific/information visualization, I am sure you are always pushing the performance limits of Java3D as well as perhaps Visad's and Java's ability to render and manipulate large, complex and heterogenous data structures. What I'm looking for is some "instant wisdom", if there is any to be had around the obvious issues in performance that we will encounter using Java3D.

Thumbnail sketch:
Various large (multi-year, multi-person) models have been developed here and simulations written to study regional, national and global infrastructure problems. Highway transportation, electrical power, gas pipelines, air traffic, rail traffic, communications and related infrastructural networks are all examples of the general problem domain that we have been working from many angles. For the most part these efforts were seeking relatively specific answers to relatively specific questions when they were started but new and more general questions have been asked along the way and these various simulations and models are being asked to relate to one another, to feed into eachother, et cetera. Each of these simulations generates extremely large amounts of data when run in earnest and the various tools used to visualize and analyze the results were developed to provide overly narrow capabilities and cannot be extended/expanded easily or they are commercial tools with only the most general capabilities such as S+ or XGobi for example.

All of these infrastructure domain areas have some georeferencing... some sense of being registered in a space defined by a few thousand meters underground/sea to earth orbits... with the bulk of them a few meters from the earth surface. The scale of interest ranges from meters to continental, if not global. The majority of the data is structured naturally as discrete points in space with some existence and evolution over time and/or networks/graphs over time. Some of the data is field oriented over areas or volumes and many fields can be imagined to be derived which would help in analysis (density distributions of various quantities such as population or resources or financials or even weather as it relates to reliability or usefulness of various networks). I know this sounds really aggressive and it is, but by trying to apprehend the whole scope of the problem I hope to be able to specify a subset of it which will reap much of the low-hanging fruit without limiting long-term capabilities. When I have looked at Visad, I do not see a lot of specific support for network/graph-like structures but I may be missing things and may not be creative enough to see how some of the other structures such as arbitrary mesh data might be useful. I apologize for the long-winded description but if any of you have been curious enough to read the whole mess and have any ideas, input or pointers to similar projects or other tool suites, I would appreciate the feedback a great deal.

 Steve Smith
   Decision Support and Analysis
   Los Alamos National Laboratory