Lloyd A Treinish wrote:
>
> Use CollectSeries instead of Collect, that way you can assign an
> appropriate Z level, when you Stack. Pass the output of CollectSeries
> to Append, to go beyond the limitation of inputs to CollectSeries.
>
Thanks Lloyd,
I am trying the CollectSeries module and it actually lets me connect all
22 copies without using the append which is nice. I sent this to Stack
and then on to the rest of the network. The problem is that it seems to
affect an Isosurface that (as far as I can tell) has no connection to
this Depth variable. The iso-surface usually looks like a blob which is
pictured above the bottom of the ocean floor. When I use the Stacked 3D
object, the iso-surface goes through the ocean floor and down to many
thousands of units, whereas the true bottom has been scaled to a maximum
of about 70 units. By scaling the iso-surface down I have tried to see
if the characteristics are correct but just stretched for some reason
but I can't find much correlation.
I've used the Print module to take a look at what the newly created 3D
object looks like compared to the one that is imported in from the
NetCDF file that works well. I see two differences. The first is that
the order of the components is different:
3D object from NetCDF:
Component number 0, name 'data':
Component number 1, name 'positions':
Component number 2, name 'connections':
Component number 3, name 'box':
3D object from Stacked 2D objects:
Component number 0, name 'connections':
Component number 1, name 'positions':
Component number 2, name 'data':
Component number 3, name 'box':
So Components 0 and 2 are just switched.
The second difference is that the one coming from the NetCDF file also
has an added attribute in Component 3:
Attribute. Name 'name':
String. "depth"
Could either of these be causing this problem?
I also did a print: Rd comparison and found that the Stacked data is not
exactly like the NetCDF data, although it is very close. About 1000
values out of 475,200 are different but they are all very close. As far
as I can see these differences shouldn't be causing any problems,
although I'm a bit alarmed that there is a difference at all. The
Bathymetry map looks fine to my eye even with these changes.
Thanks very much for your help.
Steve
P.S. I've included the complete Print:rd listings below.
=============================================
3D object from NetCDF file:
=============================================
Begin Execution
0: Null Object.
Field. 4 components.
Component number 0, name 'data':
Generic Array. 475200 items, float, real, scalar
first 25 and last 25 data values only:
56.619999 56.368797 56.1054 55.827202
55.704399
55.525002 55.332798 55.099598 54.822998
55.038399
54.730602 54.435001 55.377201 55.642799
54.813999
54.5798 55.747204 56.366402 55.563797
55.288399
55.072403 56.304798 55.976002 55.3554
56.219799
...
0 0 0
0 0
0 0 0
0 0
0 0 0
0 0
0 0 0
0 0
0 0 0
0 0
Attribute. Name 'valid_range':
Generic Array. 2 items, float, real, scalar
data values:
0 5000
Attribute. Name 'long_name':
String. "Bathymetry"
Attribute. Name 'units':
String. "meters"
Attribute. Name 'missing_value':
Generic Array. 1 item, float, real, scalar
data values:
-99999
Attribute. Name 'dep':
String. "positions"
Component number 1, name 'positions':
Product Array. 3 terms.
Product term 0: Regular Array. 22 items, float, real, 3-vector
start value [ 0, 0, 0 ], delta [ 1, 0, 0 ], for 22 repetitions
Product term 1: Regular Array. 120 items, float, real, 3-vector
start value [ 0, 0, 0 ], delta [ 0, 1, 0 ], for 120 repetitions
Product term 2: Regular Array. 180 items, float, real, 3-vector
start value [ 0, 0, 0 ], delta [ 0, 0, 1 ], for 180 repetitions
Attribute. Name 'dep':
String. "positions"
Component number 2, name 'connections':
Mesh Array. 3 terms.
Mesh offset: 0, 0, 0
Mesh term 0: Path Array. connects 22 items
Mesh term 1: Path Array. connects 120 items
Mesh term 2: Path Array. connects 180 items
Attribute. Name 'element type':
String. "cubes"
Attribute. Name 'ref':
String. "positions"
Attribute. Name 'dep':
String. "connections"
Component number 3, name 'box':
Generic Array. 8 items, float, real, 3-vector
data values:
0 0 0
0 0 179
0 119 0
0 119 179
21 0 0
21 0 179
21 119 0
21 119 179
Attribute. Name 'der':
String. "positions"
Attribute. Name 'name':
String. "depth"
=============================================
3D object from Stacked 2d objects:
=============================================
Begin Execution
0: Null Object.
Field. 4 components.
Component number 0, name 'connections':
Mesh Array. 3 terms.
Mesh offset: 0, 0, 0
Mesh term 0: Path Array. connects 22 items
Mesh term 1: Path Array. connects 120 items
Mesh term 2: Path Array. connects 180 items
Attribute. Name 'element type':
String. "cubes"
Attribute. Name 'dep':
String. "connections"
Attribute. Name 'ref':
String. "positions"
Component number 1, name 'positions':
Product Array. 3 terms.
Product term 0: Regular Array. 22 items, float, real, 3-vector
start value [ 0, 0, 0 ], delta [ 1, 0, 0 ], for 22 repetitions
Product term 1: Regular Array. 120 items, float, real, 3-vector
start value [ 0, 0, 0 ], delta [ 0, 1, 0 ], for 120 repetitions
Product term 2: Regular Array. 180 items, float, real, 3-vector
start value [ 0, 0, 0 ], delta [ 0, 0, 1 ], for 180 repetitions
Attribute. Name 'dep':
String. "positions"
Component number 2, name 'data':
Generic Array. 475200 items, float, real, scalar
first 25 and last 25 data values only:
56.619999 56.368797 56.1054 55.827202
55.704399
55.525002 55.332798 55.099598 54.822998
55.038399
54.730602 54.435001 55.377201 55.642799
54.813999
54.5798 55.747204 56.366402 55.563797
55.288399
55.072403 56.304798 55.976002 55.3554
56.219799
...
0 0 0
0 0
0 0 0
0 0
0 0 0
0 0
0 0 0
0 0
0 0 0
0 0
Attribute. Name 'valid_range':
Generic Array. 2 items, float, real, scalar
data values:
0 5000
Attribute. Name 'long_name':
String. "Bathymetry"
Attribute. Name 'units':
String. "meters"
Attribute. Name 'missing_value':
Generic Array. 1 item, float, real, scalar
data values:
-99999
Attribute. Name 'dep':
String. "positions"
Component number 3, name 'box':
Generic Array. 8 items, float, real, 3-vector
data values:
0 0 0
0 0 179
0 119 0
0 119 179
21 0 0
21 0 179
21 119 0
21 119 179
Attribute. Name 'der':
String. "positions"
>
>
>
>
> Steve Cousins <[EMAIL PROTECTED]>
Sent by: To: opendx
[EMAIL PROTECTED] <[email protected]>
cc:
08/26/2004 06:12 PM Subject:
Please respond to opendx-users [opendx-users] How to create a 3D
array from a 2D array?
>
>
>
> I've got an "array" that is 120 x 180. I'd like to create a 3D array
> that is 120x180x22 where each of the 22 levels is identical.
>
> Some background: I'm bringing the data in from a NetCDF file and I
> have
> the network doing what I want, except that I've faked the Depth
> variable
> by manually creating a 3D version in the NetCDF file instead of the
> regular 2D version. The Depth variable just holds the bottom depth in
>
> meters at each XY grid point. The reason I have needed to have a 3D
> version of this is because it is used in a Compute module that works
> with two other variables that are 3D variables and all of the inputs
> to
> the Compute module need to be the same size.
>
> I've tried to use Collect but it has a maximum of 21 inputs. If it
> could take 22 inputs then I think it would work. I tried using 3
> collects like (sorry for the crude ASCII art):
>
>
> _|_|_|_ ... _|_ _|_|_|_ ... _|_
> | Collect | | Collect |
> ------------- -------------
> | |
> ----------------------
> |
> ____ |_____
> | Collect |
> -------------
> |
> ____ |_____
> | Stack |
> -------------
>
> Each of the top two Collects have 11 inputs. This however creates two
>
> arrays, each with 11 levels. In place of the bottom Collect, I tried
> to
> use Append but this doesn't work either.
>
> Anyone have any ideas about how to do this? The end result that I
> want
> is to have an object that looks the same as when I Import->Select the
> faked 3D version.
>
> Thanks for your help.
>
> Steve
> --
> ______________________________________________________________________
>
> Steve Cousins, Ocean Modeling Group Email: [EMAIL PROTECTED]
> Marine Sciences, 208 Libby Hall http://rocky.umeoce.maine.edu
> Univ. of Maine, Orono, ME 04469 Phone: (207) 581-4302
>
>
>
--
______________________________________________________________________
Steve Cousins, Ocean Modeling Group Email: [EMAIL PROTECTED]
Marine Sciences, 208 Libby Hall http://rocky.umeoce.maine.edu
Univ. of Maine, Orono, ME 04469 Phone: (207) 581-4302