From: [email-masked] (Iraj Daizadeh)
Date: Thu, 10 Jul 1997 10:12:28 -0700

Hello.

Below is a summary of the responses I have received concerning visualization of
3-D data, in particular, visualization of a 3-d flow field.  I have also
included possible solutions to a recent problem sent to the CCL which
corresponds to a related aspect of data analysis; viz., visualization of some
sort of iso-surface (generalized contouring).

I have attempted to make all listings below as anonymous as possible
(plagarism).  For the most part, all programs shown below were compiled (or
precompiled binaries used) on a SGI (SiliconGraphics,Inc.) R10000 running IRIX
6.2 (except for the Fortner products).  I should note that there were many
others I have tested as well; a list of those follow:

		Plotmtv	- Great, almost as easy as xmgr!!!!!!
		YetAnoextHuckMolorbprog - Nice for display of band structures,
						etc.
		graph3d -
		robot -
		scian -
		tecate -
		tipsy -
		uncert -

The last six are vacuous since either I do not remember the programs efficacy
or there were compilation problems.

Any questions, comments or concerns, please do not hesitate to send me an
email.

Iraj.

P.S. I should note that Vu is a beautiful program that has aided us in our
projects tremendously (sp).  Images created from this program can be found at
http://www.cerca.umontreal.ca/vu/Welcome_eng.html.  Make sure you check out the
gallery at http://www.cerca.umontreal.ca/vu/gallery/Welcome_eng.html.  The
people behind Vu are very gratious and the program is free for those in
acadamia.

Iraj Daizadeh
Department of Chemistry
University of California
Davis, CA 95616
email: [email-masked]
Phone: 916.754.8695

--------------------------------------------------------------------------------
Below was the problem:

Hello.

Would anyone know an easy-to-learn program that allows for visualizing data
from a file in 3-dimension Euclidean space something that looks like a fluid
dynamics simulation?  I started to write such a piece of code using Tcl/Tk but
speed is of the essence (as always).

Thanks in advance.

Iraj Daizadeh
Department of Chemistry
University of California
Davis, CA 95616

--------------------------------------------------------------------------------

#1)

I use FAST, developed here, and available for free (I think).  It does
3D scalar and vector fields on a wide variety of grids, including, of
course, uniform cartesian.

For some examples of what it can do for molecules, see

http://science.nas.nasa.gov/~creon/papers/mgms96/

for availablitty of FAST, look at

http://science.nas.nasa.gov/Software/FAST/

#2)

Check out software at

        http://www.fortner.com/

     I have never used their stuff, but it looks impressive (and they have
  been in business for a while). It is not free - but I think their main
  modules come as a package for less than $1,000.

Fortner:

http://www.fortner.com/docs/demos_all.html

#3)

Try pgplot.  It's not available in netlib but it's excellent and free.
See   http://astro.caltech.edu/~tjp/pgplot/
It may not do *exactly* what you need but I think it'll come close,
probably a lot closer than other free tools.

#4)

Sorry about the delay, but hours are not always so extensible as I might wish!

Yes! VU can create pictures of 3-d fields using streamlines and/or vectors.
Yes!! VU can displayed atoms and links between them using spheres and
cylinders colored according to the usual standards.
And Yes!!! you can put all of this on screen at the same time!

We have created a couple of new images in the VU gallery representing small
molecules in which a cutting plane is used to probe and visualize a scalar
field.  These are not big protein but rather small molecules, but the idea
is the same.  I invited you to go check again the VU home page at
http://www.cerca.umontreal.ca/vu/gallery/ to check these new additions.
VU is developped mainly for use in Computational Fluid Dynamics (CFD), but
it also usefull for other application domains.  It is being use extensively
for chemistry applications here at Cerca and nearby universities, and also
at the University of Hannover with AllChem (their web address is in VU
HomePage).

** VU allows for 2-d and 3-d exploration of scalar fields as well as vector
fields.  Furthermore, VU can also display geometric entities such as curves and
surfaces.

** Scalar fields can be probed/represented using either :
  - iso-surfaces in 3-d space,
  - iso-lines on arbitrary cutting planes
  - iso-lines on surfaces of constant coordinate from a structured grid.
  - graphs, i.e. continuously shaded images representing the values of a
    scalar field on  cutting planes (or surfaces of constant coordinate from
    a structured grid).

** Vector fields can be probed/represented using either :
  - arrows (scalable)
  - streamlines in various number and location, all of which is specified
interactivally.
  - dynamic particle tracing: non static images in which particle
    (represented as small spheres) are injected in various location to probe
    the vector fields.

** VU can extract information from these various fields and present them
in a tabular form in a file or directly at the cursor location.

** VU uses `expressions' such as "sqrt(px*px+py*py+pz*pz)" to indicate color
mapping, deformation or scaling factor for use in creating images (at least
colorfull if not always meaningfull!).

** VU can also use transparency in any image, in order to be able able to `see'
what is behind a cutting plane or an iso-surface.

** VU uses OpenGL and Motif (both fairly standard libraries) and works on
UNIX workstations: IRIX, AIX, HP-UX, OSF1 and Linux.

In a nutshell, VU can creates many and various images of 2-d and 3-d scalar
and vector fields from a solution computed over a set of grid nodes.  The
input file for VU specifies the mesh used and the computed solution fields.
You may see and read about some examples in the VU Web pages.  However, if
the fact that some of the web pages crucial for a full understanding of the
capabilities of the program and of its input file might not be in english,
you could forward a sample test case of your data to support_vu in order to
establish its usuability in your case.  Even if the documentation has not
been yet completely translated and made avalailable on the Web, VU is
nonetheless available in four languages: french, english, german and spanish.

#5)

IBM visualization data explorer/IRIS explorer will do.
A while ago, i downloaded the comparison of these visualization softwares.
Now  I dont remember the  URL. But u can find them in my homepage.

http://144.16.73.100/~parthi/home.html

and CLICK "visualization". u can see the comparison of four
visualization softwares.

#6)

One possibility for almost all visualization tasks is to write a
simple program to transform the data to a VRML file and then use a
VRML browser to visualize it. For more information about VRML, look at
the VRML repository (http://www.sdsc.edu/vrml/). For an example of
code that generates VRML, look at the VRML module on my Python page
(http://www.yi.com/home/HinsenKonrad/python.html).

#7)

I'm glad you enjoyed the site.  I usually use Matlab or Mathematica to plot
my vectors.  Unfortunately, both of these programs are commercial so you
must buy them.  There may be shareware available on the internet to do the
same thing.  Happy hunting.

#8)

I don't know what your constraints are: systems, time, money,
expertise ...  but if I were in your position, I could knock out a
visualization of "data from a file in 3-dimension Euclidean space
something that looks like a fluid dynamics simulation" in 30-60
minutes using AVS.  Have you any familiarity with it at all?  There
were other packages (IBM's Data Explorer and SGI's IRIS Explorer)
which did much the same thing and were all the rage 3-4 years ago.

#9)

Vis5D will suit your needs if your data are sampled on a rectangular
3-D grid, and you have values for px, py and pz at each grid point.
See Section 3.1 of the Vis5D README file for instructions about
getting your data into Vis5D.  I recommend map projection 0 (generic)
and vertical coordinate system 0 (generic), since your data are not
related to Earth coordinat (latitude and longitude).  If you use
the names 'U', 'V' and 'W' for px, py and pz then Vis5D will
recognize these as the three components of a vector field.  If you
don't, then you can use the 'UVW VARS' widget to tell Vis5D which
fields are vector components.  In generic coordinates, vector
components are in the units given for North, South, East, West,
Top and Bottom bounds, per second.  If you have a time sequence of
data (i.e., a changing vector field), Vis5D will trace motion trajectories
for you.  You'll need to correctly assign dates and times to time steps
to get realistic motions.  If you only have one time step, you can still
look at motion trajectories by just repeating the same data over a sequence
of times.  Good luck.

#10)

The purpose of this message is to give you a quick feeling for how the NCAR
graphics package can be used to display graphs of your data from the Cray. The
NCAR graphics package consists of libraries of C and Fortran callable subrou-
tines for creating graphs and utilities for displaying them.

#11)

MSI's software developer's kit does exactly what you want. It includes
an API set to visualize iso-surfaces, molecular structure, trajectories,
normal modes, plots/graphs, etc. It also allows you in a few steps to put
an interface together to any computational chemistry code.

For general information about this toolkit visit:
http://www.msi.com/support/sdk/

for specific information on plotting iso-surfaces visit:
http://www.msi.com/support/sdk/users/examples/iso/README.html

#12)

Dear CCLers, although I'm pretty sure this question has been already
posed (and I beg your pardon for posing it again), I have to ask about a
3D visualisation tool. I worked with SciAn, which is pretty good indeed,
but the only existing version needs Z buffer and DGL. Looking on the net
I found a software called vis5d, pretty good the same but tuned for
metereological data and I found too time-expensive to adapt it to
visualize orbitals, electronic density and so on. I'm using molden but I
would like to find out soemthing more general (I'm trying to use ELF
also, and this feature is not implemented in molden).
The software I'm looking for should manage x,y,z,function_value in order
to give isosurfaces of the function I'm trying to plot. Something not
strictly platform-dependant would be very fine.
Thank you for all the information you will provide.
Iraj Daizadeh
Department of Chemistry
University of California
Davis, CA  95616
email:  [email-masked]
Phone:  916.754.8695
Fax:    916.752.8995