Although it's not an architectural limitation of the DX data model, the
modules expect the positions component of a field to be float.
Alternatively, you could import the array as doubles, using Compute to
convert to floats and then Replace (for example) to make them a positions
component of a field.




"Nick Shaw" <[EMAIL PROTECTED]>@opendx.watson.ibm.com on 05/18/2000
09:14:17 AM

Please respond to [email protected]

Sent by:  [EMAIL PROTECTED]


To:   <[email protected]>
cc:
Subject:  Re: [opendx-users] Very novice like question (reading netCDF
      file)



Thank you very much Lloyd.
I had never thought that changing float to double would have such an
effect.

For future reference and for anyone else that is interested, here is a copy
of the netCDF file and a skeleton of the Visual program...

--------------netCDF file tst.nc------------------------------------

netcdf tst {
dimensions:
        xpts = 256 ;
        ypts = 256 ;
        naxis = 2 ;
        ndeltas = 2 ;
        ntime = UNLIMITED ; // (50 currently)
        npts = 128 ;
        three = 3 ;
variables:
        float grid(naxis, ndeltas) ;
        double z(xpts, ypts) ;
                z:positions = "grid, regular" ;
                z:field = "z, scalar" ;
        float locations(ntime, npts, three) ;
        double d(ntime, npts) ;
                d:field = "d, scalar, series" ;
                d:positions = "locations" ;
data:

 grid =
  -10, 0.07843138,
  -10, 0.07843138 ;

 z =
  0.137, 0.138, 0.139, 0.140,  0.141, 0.143, 0.144,
  0.145, 0.146, 0.148, 0.149, 0.150, 0.152,  0.153,
  0.154, 0.155, 0.157, 0.158, 0.160,  .... etc (there are 65536 points in
this data array)

 locations =
    7.92, 1.16, 0.47,
    5.38, 1.78, 1.33, ....(there are 128 x ntime of these)
    ...

 d =
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ....(128 of these)
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ....(etc for all of the time steps)
     ...
     ...
--------------------end of tst.nc-----------------------

In openDX I used 2 Selects to get hold of the "d" member and the "z"
members
separately.
"z" was passed to RubberSheet - Colour - Collect
And "d" was passed to another Select to choose the time position and then
AutoGlyph - Colour - Collect - Image.
A sequencer can be used to control the second select for "d".

The final result is a landscape with balls moving around on it.





> You're close (See Appendix B.5 of the DX user's guide) for details, which
> you may have seen before.  The positions component has to be float and
get
> rid of "locations:field = "locations, vector" ;"  Yes, what you suggest
for
> series should work but not with Slice.  Take the output of Sequencer to
the
> start/stop inputs of Import.




Reply via email to