Dear Chris
I did have a look in the M3fromelements macro, and late last night devised
a workaround so that the output of my macro is a 3 by 3 matrix.
essentially,the new macro builds 3 row vectors for the using 3 computes and
then makes a 3 by 3 from these by using another compute to merge the 3 row
vectors. If you tell me where to send it, I'll be happy to add it to the
general contributions.
With regards to your "UVNFromNormUpOrigin" and "UVNGlyphs" macros you refer
to. They both sound interesting and I would appreciate you forwarding them,
as the are in none of the distro's I have.
Take care
Peter
At 08:40 27/08/2001 -0400, you wrote:
Dear All,
From my FE results I have imported the individual components of a
stress tensor and compiled them into an M3 matrix using the
M3fromelements macro (the result of print (rd) on the data is an 1x9
matrix NOT a 3x3 matrix as expected).
Since I wrote it (about 8 yrs ago), here's a hint. Drop M3FromElements on
a net. Select it, choose Windows:Open Selected Macro. Once the macro
editor is open, choose Help:Application Comment. You'll see that I
documented the fact, lo these many years ago, that Compute does NOT work
with real 3x3 matrices, thus the 1x9 hack is required (and documented).
All the Vector/Matrix macros work together using this dodge. I would
recommend you restructure your data to 1x9 unless you feel like writing a
module, because I don't believe there's any easier way to deal with real
3x3 matrices. You may note that the DX Scripting language supports 3x3
(and other shape) matrices, but since Compute doesn't, that's not much
comfort. A few modules like Filter actually take a matrix in this script
syntax.
I have a macro called UVNFromNormUpOrigin (can't remember if that is in
the distribution or if I did it later) that takes a normal, up direction,
and frame origin and returns both a normalized and "raw" U, V, N vector (6
vectors on output). So you change either Norm or Up to rotate the frame.
This might be worth looking at. I did a UVNGlyphs to illustrate the output
(should be in Realization Category if you have it). If not, let me know.
Not guaranteeing it solves all eigen problems, but it may inspire you to
develop a more elaborate workaround. I seem to remember developing these
precisely for display of eigenvector data but it's been some years and
many other projects since then...
Now, I need to plot and work with the Principle stresses (both magnitudes
and orientations) which "fall out" of the stress tensor as the
eigenvalues and eigenvectors.
I hunted for an eigenvector/value module but didn't find one. What I did
notice though was that Autoglyph creates a plot similar to what I need
and so presumably must export the data as well. Thus, I connected the
output of the M3 macro to an autoglyph and tried to sent the output to
image. Unfortunately this doesn't work since autoglyph returns: invalid
data: data must be scalar, 2-vector, 3-vector, 2x2 or 3x3 matrix. I have
tried making the 3x3 matrix without the matrix macro, but always it ends
up in the 1x9 format and with the autoglyph error. Is there a way to
reconfigure the entire data set from the 1x9 matrix to 3x3? or do I have
to work on each record individually then recombine into the total dataset?
I looked into writing a eigenvactor/value module, but saw in Numerical
recipies that it is highly non trivial and since I doubt either my maths
or programming is up to it. However in the course of that hunt, I noticed
in the opendx source code the eigen.c and eigen.h routines, which are
presumably used by, amongst others, autoglyph. So, I looked in the
documentation for an DX_eigen call or similar but didn't find one in the
programmers manual. I know the manual is not up to date so am wondering
if the call exists but isn't listed anywhere I found or if it just isn't
part of the exported command set.
I'd greatly appreciate pointers on both of the above queries, namely the
description of my matrix and the possible implementation of
eigenvector/eigenvector calls in the programming and/or user interface.
Many thanks for your time
Peter
Dr Peter Connolly
____________________________________
Geophysikalisches Institut
der Universitat Karlsruhe
Hertzstrasse 16
76185 Karlsruhe
Germany
tel +49 (0)721 6084593
fax +49 (0)721 71173
Email addresses: (both checked)
[EMAIL PROTECTED]
OR
[EMAIL PROTECTED]
Chris Pelkie
Vice President/Scientific Visualization Producer
Conceptual Reality Presentations, Inc.
30 West Meadow Drive
Ithaca, NY 14850
[EMAIL PROTECTED]
_______________________________
Dr Peter Connolly
Ginsterweg 3
76149 Karlsruhe
Germany
+49 (0)721 789311
Email addresses: (both checked)
[EMAIL PROTECTED]
OR
[EMAIL PROTECTED]