Inputs:

input: field with 1-,2-, or 3-dimensional "positions" or list of 1-,2-, or
        3-dimensional vectors.

grid: base with dimensionality matching input.

nearest: integer or "infinity". The number of nearest points (to each grid
        point) to be used in computing an average data value.

radius: scalar or "infinity". Specifies the max radius (from gridpoint) within
        which the nearest neighbors can be found.

exponent: Averaging weight (1/radius^exponent).

missing: used when radius is set to a value other than "infinity". Specifies
        how to treat those grid points for which no points in input occur
        within the specified radius.

If missing is not set, the module creates an "invalid positions" component, and grid points with no assigned data value are invalidated. If missing is set, the data value is inserted for the missing data values. It must match the data component of input in rank, type, and shape.

All components that are position-dependent are treated in the same way as the "data" component.

The following are not addressed by this specification:

1. If input has components that are connection dependent, what happens? What should happen? Error message, warning, removed?

2. If input or grid has "invalid positions" what happens? What if missing is set or not set?

The reason I'm asking is it appears that the behavior is unpredictable.
Here is what I see for the answers.

1. Connection dependent data for input should be converted to position dependent data at the cell centers before being regridded. At the very minimum, I think a warning message should be given.

2. For my personal applications, here is how I'd like to see "invalid positions" handled. But even if agreement is reached in any fashion, I could write a macro to make it work this way. The problem is, that there appears to me no consistency with the way they are handled.

a. Start out with grid and its "invalid positions" as the base grid.
b. With missing not set, put data values onto the base grid and anywhere that
   there was a missing value, it would "add" to the base grid's "invalid
   positions."
c. With missing set, "invalid positions" should be the base grid's.
d. If the input has "invalid positions/connections" and a grid position only
   finds invalid data (data at "invalid positions"), then this position is
   invalid. However valid data should be averaged in (same effect as "culling"
   data.)
--
.............................................................................
David L. Thompson                          The University of Montana
mailto:[EMAIL PROTECTED]                 Computer Science Department
http://www.cs.umt.edu/u/dthompsn           Missoula, MT  59812
                                           Work Phone : (406)257-8530

Reply via email to