public class GriddedSet extends SampledSet implements GriddedSetIface
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.
DataImpl.Syncher
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 and Description |
---|
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) |
Modifier and Type | Method and Description |
---|---|
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
|
float[][] |
valueToGrid(float[][] value,
int[] guess)
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)
A guess for the first value may be supplied
|
void |
valueToInterp(float[][] value,
int[][] indices,
float[][] weights,
int[] guess) |
clone, computeRanges, computeRanges, cram_missing, finalize, getHi, getLow, getMySamples, getNeighbors, getSamples, getSamples, isMissing, make1DGeometry, make3DGeometry, makePointGeometry, setCacheSizeThreshold, setGeometryArray, setGeometryArray, setMySamples
getManifoldDimension
__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
__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
addReference, removeReference
getHi, getLow
cram_missing, doubleToIndex, equalUnitAndCS, getCoordinateSystem, getDimension, getDoubles, getDoubles, getLength, getManifoldDimension, getNeighbors, getSamples, getSamples, getSetErrors, getSetUnits, indexToDouble, make1DGeometry, make2DGeometry, make3DGeometry, makeIsoLines, makeIsoSurface, makePointGeometry, merge1DSets
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
addReference, removeReference
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
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 valuesVisADException
- 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 samplesVisADException
- 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
dimensionVisADException
- 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()
public float[][] indexToValue(int[] index) throws VisADException
indexToValue
in interface SetIface
indexToValue
in class Set
index
- array of integer indicesVisADException
- 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 valuesVisADException
- 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, int[] guess) throws VisADException
VisADException
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 valueToInterp(float[][] value, int[][] indices, float[][] weights, int[] guess) throws VisADException
VisADException
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 int hashCode()
Object.hashCode()
should be
overridden whenever Object.equals(Object)
is.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 lineVisADException
Copyright © 1996–2023 The SSEC Visualization Project. All rights reserved.