|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object visad.ThingImpl visad.DataImpl visad.Set visad.SimpleSet visad.SampledSet visad.GriddedSet
public class GriddedSet
GriddedSet is implemented by those Set sub-classes whose samples lie on a rectangular grid topology (but note the geometry need not be rectangular). It is a M-dimensional array of points in R^N where ManifoldDimension = M <= N = DomainDimension.
The order of the samples is the rasterization of the orders of the 1D components, with the first component increasing fastest. For more detail, see the example in Linear2DSet.java.
Grid coordinates are zero-based and in the range -0.5 to length-0.5 i.e., there are "length" intervals of length 1.0, the first centered on 0.0 and the last centered on length-1.0 points outside this range are indicated by the grid coordinate Double.NaN.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class visad.DataImpl |
---|
DataImpl.Syncher |
Field Summary |
---|
Fields inherited from interface visad.Data |
---|
ABS, ACOS, ACOS_DEGREES, ADD, ASIN, ASIN_DEGREES, ATAN, ATAN_DEGREES, ATAN2, ATAN2_DEGREES, CEIL, COS, COS_DEGREES, DEGREES_TO_RADIANS, DEPENDENT, DIVIDE, EXP, FLOOR, INDEPENDENT, INV_ATAN2, INV_ATAN2_DEGREES, INV_DIVIDE, INV_POW, INV_REMAINDER, INV_SUBTRACT, LOG, MAX, MIN, MULTIPLY, NEAREST_NEIGHBOR, NEGATE, NO_ERRORS, NOP, POW, RADIANS_TO_DEGREES, REMAINDER, RINT, ROUND, SIN, SIN_DEGREES, SQRT, SUBTRACT, TAN, TAN_DEGREES, WEIGHTED_AVERAGE |
Constructor Summary | |
---|---|
GriddedSet(MathType type,
float[][] samples,
int[] lengths)
construct a GriddedSet with samples |
|
GriddedSet(MathType type,
float[][] samples,
int[] lengths,
CoordinateSystem coord_sys,
Unit[] units,
ErrorEstimate[] errors)
construct a GriddedSet with samples and non-default CoordinateSystem |
|
GriddedSet(MathType type,
float[][] samples,
int[] lengths,
CoordinateSystem coord_sys,
Unit[] units,
ErrorEstimate[] errors,
boolean copy)
|
Method Summary | |
---|---|
Object |
cloneButType(MathType type)
copy this Set, but give it a new MathType; this is safe, since constructor checks consistency of DomainCoordinateSystem and SetUnits with Type |
static GriddedSet |
create(MathType type,
float[][] samples,
int[] lengths)
Abreviated Factory method for creating the proper gridded set (Gridded1DSet, Gridded2DSet, etc.). |
static GriddedSet |
create(MathType type,
float[][] samples,
int[] lengths,
CoordinateSystem coord_sys,
Unit[] units,
ErrorEstimate[] errors)
General Factory method for creating the proper gridded set (Gridded1DSet, Gridded2DSet, etc.). |
static GriddedSet |
create(MathType type,
float[][] samples,
int[] lengths,
CoordinateSystem coord_sys,
Unit[] units,
ErrorEstimate[] errors,
boolean copy)
General Factory method for creating the proper gridded set (Gridded1DSet, Gridded2DSet, etc.). |
static GriddedSet |
create(MathType type,
float[][] samples,
int[] lengths,
CoordinateSystem coord_sys,
Unit[] units,
ErrorEstimate[] errors,
boolean copy,
boolean test)
General Factory method for creating the proper gridded set (Gridded1DSet, Gridded2DSet, etc.). |
boolean |
equals(Object set)
test for equality |
int |
getLength(int i)
Returns the number of grid points in a given dimension. |
int[] |
getLengths()
Returns the number of grid points in all dimensions. |
int[][] |
getNeighbors(int manifoldIndex)
Returns the indexes of the neighboring points along a manifold dimesion for every point in the set. |
void |
getNeighbors(int[][] neighbors)
Returns the indexes of the neighboring points for every point in the set. |
int[] |
getWedge()
returns a zig-zagging ennumeration of index values with good coherence |
float[][] |
gridToValue(float[][] grid)
transform an array of non-integer grid coordinates to an array of values in R^DomainDimension |
int |
hashCode()
Returns the hash code of this instance. |
float[][] |
indexToValue(int[] index)
convert an array of 1-D indices to an array of values in R^DomainDimension |
String |
longString(String pre)
|
Set |
makeSpatial(SetType type,
float[][] samples)
|
float[][] |
valueToGrid(float[][] value)
transform an array of values in R^DomainDimension to an array of non-integer grid coordinates |
int[] |
valueToIndex(float[][] value)
convert an array of values in R^DomainDimension to an array of 1-D indices |
void |
valueToInterp(float[][] value,
int[][] indices,
float[][] weights)
for each of an array of values in R^DomainDimension, compute an array of 1-D indices and an array of weights, to be used for interpolation; indices[i] and weights[i] are null if i-th value is outside grid (i.e., if no interpolation is possible) |
Methods inherited from class visad.SampledSet |
---|
clone, computeRanges, computeRanges, cram_missing, finalize, getHi, getLow, getMySamples, getNeighbors, getSamples, getSamples, isMissing, make1DGeometry, make3DGeometry, makePointGeometry, setCacheSizeThreshold, setGeometryArray, setGeometryArray, setMySamples |
Methods inherited from class visad.SimpleSet |
---|
getManifoldDimension |
Methods inherited from class visad.Set |
---|
__getitem__, __len__, addEqualsCache, addNotEqualsCache, copyDoubles, copyFloats, doubleToFloat, doubleToIndex, equalUnitAndCS, floatToDouble, getCoordinateSystem, getDimension, getDoubles, getDoubles, getLength, getSetErrors, getSetUnits, indexToDouble, longString, main, make2DGeometry, makeIsoLines, makeIsoSurface, merge1DSets, testEqualsCache, testNotEqualsCache, unary, unitAndCSHashCode |
Methods inherited from class visad.DataImpl |
---|
__add__, __add__, __div__, __div__, __mod__, __mod__, __mul__, __mul__, __neg__, __pow__, __pow__, __radd__, __rdiv__, __rmod__, __rmul__, __rpow__, __rsub__, __sub__, __sub__, abs, abs, acos, acos, acosDegrees, acosDegrees, add, add, adjustSamplingError, asin, asin, asinDegrees, asinDegrees, atan, atan, atan2, atan2, atan2Degrees, atan2Degrees, atanDegrees, atanDegrees, binary, binary, ceil, ceil, changeMathType, computeRanges, computeRanges, cos, cos, cosDegrees, cosDegrees, dataClone, divide, divide, exp, exp, floor, floor, getType, local, log, log, max, max, min, min, multiply, multiply, negate, negate, notifyReferences, pow, pow, remainder, remainder, rint, rint, round, round, sin, sin, sinDegrees, sinDegrees, sqrt, sqrt, subtract, subtract, tan, tan, tanDegrees, tanDegrees, toString, unary |
Methods inherited from class visad.ThingImpl |
---|
addReference, removeReference |
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface visad.SampledSetIface |
---|
getHi, getLow |
Methods inherited from interface visad.SetIface |
---|
cram_missing, doubleToIndex, equalUnitAndCS, getCoordinateSystem, getDimension, getDoubles, getDoubles, getLength, getManifoldDimension, getNeighbors, getSamples, getSamples, getSetErrors, getSetUnits, indexToDouble, make1DGeometry, make2DGeometry, make3DGeometry, makeIsoLines, makeIsoSurface, makePointGeometry, merge1DSets |
Methods inherited from interface visad.Data |
---|
abs, abs, acos, acos, acosDegrees, acosDegrees, add, add, adjustSamplingError, asin, asin, asinDegrees, asinDegrees, atan, atan, atan2, atan2, atan2Degrees, atan2Degrees, atanDegrees, atanDegrees, binary, binary, ceil, ceil, changeMathType, computeRanges, computeRanges, computeRanges, cos, cos, cosDegrees, cosDegrees, dataClone, divide, divide, exp, exp, floor, floor, getType, isMissing, local, log, log, longString, max, max, min, min, multiply, multiply, negate, negate, pow, pow, remainder, remainder, rint, rint, round, round, sin, sin, sinDegrees, sinDegrees, sqrt, sqrt, subtract, subtract, tan, tan, tanDegrees, tanDegrees, unary, unary |
Methods inherited from interface visad.Thing |
---|
addReference, removeReference |
Constructor Detail |
---|
public GriddedSet(MathType type, float[][] samples, int[] lengths) throws VisADException
VisADException
public GriddedSet(MathType type, float[][] samples, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors) throws VisADException
VisADException
public GriddedSet(MathType type, float[][] samples, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors, boolean copy) throws VisADException
VisADException
Method Detail |
---|
public static GriddedSet create(MathType type, float[][] samples, int[] lengths) throws VisADException
type
- MathType for the returned setsamples
- Set sampleslengths
- The dimensionality of the manifold.
lengths[i}
contains the number of points
in the manifold for dimension i
.
VisADException
- problem creating the setpublic static GriddedSet create(MathType type, float[][] samples, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors) throws VisADException
type
- MathType for the returned setsamples
- Set sampleslengths
- The dimensionality of the manifold.
lengths[i}
contains the number of points
in the manifold for dimension i
.coord_sys
- CoordinateSystem for the GriddedSetunits
- Unit-s of the values in samples
errors
- ErrorEstimate-s for the values
VisADException
- problem creating the setpublic static GriddedSet create(MathType type, float[][] samples, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors, boolean copy) throws VisADException
type
- MathType for the returned setsamples
- Set sampleslengths
- The dimensionality of the manifold.
lengths[i}
contains the number of points
in the manifold for dimension i
.coord_sys
- CoordinateSystem for the GriddedSetunits
- Unit-s of the values in samples
errors
- ErrorEstimate-s for the valuescopy
- make a copy of the samples
VisADException
- problem creating the setpublic static GriddedSet create(MathType type, float[][] samples, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors, boolean copy, boolean test) throws VisADException
type
- MathType for the returned setsamples
- Set sampleslengths
- The dimensionality of the manifold.
lengths[i}
contains the number of points
in the manifold for dimension i
.coord_sys
- CoordinateSystem for the GriddedSetunits
- Unit-s of the values in samples
errors
- ErrorEstimate-s for the valuescopy
- make a copy of the samplestest
- test to make sure samples are valid. Used
for creating Gridded*DSets where the
manifold dimension is equal to the domain
dimension
VisADException
- problem creating the setpublic Set makeSpatial(SetType type, float[][] samples) throws VisADException
makeSpatial
in interface SetIface
makeSpatial
in class Set
VisADException
public int getLength(int i)
GriddedSetIface
getLength
in interface GriddedSetIface
i
- The index of the dimension.
i
.public int[] getLengths()
GriddedSetIface
getLengths
in interface GriddedSetIface
i
.public int[] getWedge()
getWedge
in interface SetIface
getWedge
in class Set
public float[][] indexToValue(int[] index) throws VisADException
indexToValue
in interface SetIface
indexToValue
in class Set
index
- array of integer indices
VisADException
- a VisAD error occurredpublic int[] valueToIndex(float[][] value) throws VisADException
valueToIndex
in interface SetIface
valueToIndex
in class Set
value
- float[domain_dimension][number_of_values] array of
Set values
VisADException
- a VisAD error occurredpublic float[][] gridToValue(float[][] grid) throws VisADException
gridToValue
in interface GriddedSetIface
grid
- The coordinates of the interpolation grid
points for which interpolated sample values are
desired. grid[i][j]
is the i-th
grid coordinate of the j-th interpolation point.
VisADException
- VisAD failure.public float[][] valueToGrid(float[][] value) throws VisADException
valueToGrid
in interface GriddedSetIface
value
- The array of points for which non-integer
grid coordinates are desired.
value[i][j]
is the i-th coordinate
of the j-th point.
VisADException
- VisAD failure.public void valueToInterp(float[][] value, int[][] indices, float[][] weights) throws VisADException
valueToInterp
in interface SimpleSetIface
valueToInterp
in class SimpleSet
value
- An array of points. value[i][j]
is
the i-th coordinate of the j-th points.indices
- Indices of the neighboring samples in the set.
If the j-th points lies within the set, then
returned element [i][j] is the index of the
i-th neighboring sample in the set; otherwise,
returned array [j] is null
.weights
- Weights for interpolating the neighboring
samples in the set. If the j-th points lies
within the set, then returned element [i][j]
is the weight of the i-th neighboring sample
in the set; otherwise, returned array [j] is
null
.
VisADException
- VisAD failure.public void getNeighbors(int[][] neighbors) throws VisADException
neighbors.length
should be at least getLength()
.
On return, neighbors[i][j]
will be the index of the j
-th neighboring point of point i
. This method
will allocate and set the array neighbors[i]
for all
i
. For points in the interior of the set, the number of
neighboring points is equal to 2*getManifoldDimension()
. The
number of neighboring points decreases, however, if the point in question
is an exterior point on a hyperface, hyperedge, or hypercorner.
getNeighbors
in interface SetIface
getNeighbors
in class Set
neighbors
- The array to contain the indexes of the
neighboring points.
NullPointerException
- if the array is null
.
ArrayIndexOutOfBoundsException
- if neighbors.length < getLength()
.
VisADException
- if a VisAD failure occurs.public int[][] getNeighbors(int manifoldIndex)
[i][0]
and [i][1]
of the returned array are the indexes of the
neighboring sample points in the direction of decreasing and increasing
manifold index, respectively, for sample point i
. If a sample
point doesn't have a neighboring point (because it is an exterior point,
for example) then the value of the corresponding index will be -1.
getNeighbors
in interface SetIface
getNeighbors
in class Set
manifoldIndex
- The index of the manifold dimension along
which to return the neighboring points.
ArrayIndexOutOfBoundsException
- if manifoldIndex < 0 ||
manifoldIndex >= getManifoldDimension()
.SimpleSet.getManifoldDimension()
public boolean equals(Object set)
Set
equals
in interface SetIface
equals
in class Set
public int hashCode()
Object.hashCode()
should be
overridden whenever Object.equals(Object)
is.
hashCode
in class Object
public Object cloneButType(MathType type) throws VisADException
Set
cloneButType
in interface SetIface
cloneButType
in class Set
type
- The MathType for the clone.
VisADException
- VisAD failure.public String longString(String pre) throws VisADException
longString
in interface Data
longString
in class Set
pre
- String added to start of each line
VisADException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |