visad
Class LinearNDSet
- java.lang.Object
-
- visad.ThingImpl
-
- visad.DataImpl
-
- visad.Set
-
- visad.SimpleSet
-
- visad.SampledSet
-
- visad.GriddedSet
-
- visad.LinearNDSet
-
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, Data, GriddedSetIface, LinearSet, SampledSetIface, SetIface, SimpleSetIface, Thing
- Direct Known Subclasses:
- IntegerNDSet
public class LinearNDSet extends GriddedSet implements LinearSet
LinearNDSet represents a finite set of samples of R^Dimension in a cross product of arithmetic progressions.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.
- See Also:
- Serialized Form
-
-
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
Constructors Constructor and Description LinearNDSet(MathType type, double[] firsts, double[] lasts, int[] lengths)Construct an N-dimensional set as the product of N arithmetic progressions (lengths[i] samples between firsts[i] and lasts[i]), with null errors, CoordinateSystem and Units are defaults from typeLinearNDSet(MathType type, double[] firsts, double[] lasts, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors)Construct an N-dimensional set as the product of N arithmetic progressions (lengths[i] samples between firsts[i] and lasts[i]), coordinate_system and units must be compatible with defaults for type, or may be null; errors may be null.LinearNDSet(MathType type, double[] firsts, double[] lasts, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors, boolean cache)Construct an N-dimensional set as the product of N arithmetic progressions (lengths[i] samples between firsts[i] and lasts[i]), coordinate_system and units must be compatible with defaults for type, or may be null; errors may be null.LinearNDSet(MathType type, Linear1DSet[] l)Construct an N-dimensional set as the product of N Linear1DSets, with null errors, CoordinateSystem and Units are defaults from type.LinearNDSet(MathType type, Linear1DSet[] l, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors)Construct an N-dimensional set as the product of N Linear1DSets; coordinate_system and units must be compatible with defaults for type, or may be null; errors may be nullLinearNDSet(MathType type, Linear1DSet[] l, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors, boolean cache)Construct an N-dimensional set as the product of N Linear1DSets; coordinate_system and units must be compatible with defaults for type, or may be null; errors may be null
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description java.lang.ObjectcloneButType(MathType type)Return a clone of this object with a new MathType.static LinearSetcreate(MathType type, double[] firsts, double[] lasts, int[] lengths)General Factory method for creating the proper linear set (Linear1DSet, Linear2DSet, etc.).static LinearSetcreate(MathType type, double[] firsts, double[] lasts, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors)booleanequals(java.lang.Object set)Check to see if this LinearNDSet is equal to the Object in question.double[]getFirsts()Get the array of first values of each of the arithmetic progressions in this cross product.double[]getLasts()Get the array of last values of each of the arithmetic progressions in this cross product.Linear1DSetgetLinear1DComponent(int i)Get the indexed component.float[][]getSamples(boolean copy)Return the array of values in R^N space corresponding to this cross product of arithmetic progressions.float[][]gridToValue(float[][] grid)transform an array of non-integer grid coordinates to an array of values in R^DomainDimensioninthashCode()Returns the hash code for this instance.float[][]indexToValue(int[] index)convert an array of 1-D indices to an array of values in R^DomainDimensionbooleanisMissing()Check to see if this is an empty cross-product.java.lang.StringlongString(java.lang.String pre)Extended version of the toString() method.static voidmain(java.lang.String[] args)run 'java visad.LinearNDSet' to test the LinearNDSet classfloat[][]valueToGrid(float[][] value)transform an array of values in R^DomainDimension to an array of non-integer grid coordinates-
Methods inherited from class visad.GriddedSet
create, create, create, create, getLength, getLengths, getNeighbors, getNeighbors, getWedge, makeSpatial, valueToGrid, valueToIndex, valueToInterp, valueToInterp
-
Methods inherited from class visad.SampledSet
clone, computeRanges, computeRanges, cram_missing, finalize, getHi, getLow, getNeighbors, getSamples, make1DGeometry, make3DGeometry, makePointGeometry, setCacheSizeThreshold, setGeometryArray, setGeometryArray
-
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, 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 interface visad.SampledSetIface
getHi, getLow
-
Methods inherited from interface visad.SetIface
cram_missing, doubleToIndex, equalUnitAndCS, getCoordinateSystem, getDimension, getDoubles, getDoubles, getLength, getManifoldDimension, getNeighbors, 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, 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
-
LinearNDSet
public LinearNDSet(MathType type, Linear1DSet[] l) throws VisADException
Construct an N-dimensional set as the product of N Linear1DSets, with null errors, CoordinateSystem and Units are defaults from type.- Parameters:
type- MathType for this LinearNDSet. Must be consistent with MathType-s of sets.l- Linear1DSets that make up this LinearNDSet.- Throws:
VisADException- problem creating VisAD objects.
-
LinearNDSet
public LinearNDSet(MathType type, double[] firsts, double[] lasts, int[] lengths) throws VisADException
Construct an N-dimensional set as the product of N arithmetic progressions (lengths[i] samples between firsts[i] and lasts[i]), with null errors, CoordinateSystem and Units are defaults from type- Parameters:
type- MathType for this LinearNDSet.firsts- array of first values for each of the arithmetic progressionslasts- array of last values for each of the arithmetic progressionslengths- array of number of samples for each of the arithmetic progressions- Throws:
VisADException- problem creating VisAD objects.
-
LinearNDSet
public LinearNDSet(MathType type, double[] firsts, double[] lasts, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors) throws VisADException
Construct an N-dimensional set as the product of N arithmetic progressions (lengths[i] samples between firsts[i] and lasts[i]), coordinate_system and units must be compatible with defaults for type, or may be null; errors may be null.- Parameters:
type- MathType for this LinearNDSet.firsts- array of first values for each of the arithmetic progressionslasts- array of last values for each of the arithmetic progressionslengths- array of number of samples for each of the arithmetic progressionscoord_sys- CoordinateSystem for this set. May be null, but if not, must be consistent withtype.units- Unit-s for the values insets. May be null, but must be convertible with default oftypeif not null.errors- ErrorEstimate-s for values insets, may be null- Throws:
VisADException- problem creating VisAD objects.
-
LinearNDSet
public LinearNDSet(MathType type, double[] firsts, double[] lasts, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors, boolean cache) throws VisADException
Construct an N-dimensional set as the product of N arithmetic progressions (lengths[i] samples between firsts[i] and lasts[i]), coordinate_system and units must be compatible with defaults for type, or may be null; errors may be null.- Parameters:
type- MathType for this LinearNDSet.firsts- array of first values for each of the arithmetic progressionslasts- array of last values for each of the arithmetic progressionslengths- array of number of samples for each of the arithmetic progressionscoord_sys- CoordinateSystem for this set. May be null, but if not, must be consistent withtype.units- Unit-s for the values insets. May be null, but must be convertible with default oftypeif not null.errors- ErrorEstimate-s for values insets, may be nullcache- if true, enumerate and cache the samples. This will result in a larger memory footprint, but will reduce the time to return samples from calls toSampledSet.getSamples().- Throws:
VisADException- problem creating VisAD objects.
-
LinearNDSet
public LinearNDSet(MathType type, Linear1DSet[] l, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors) throws VisADException
Construct an N-dimensional set as the product of N Linear1DSets; coordinate_system and units must be compatible with defaults for type, or may be null; errors may be null- Parameters:
type- MathType for this LinearNDSet. Must be consistent with MathType-s of sets.l- Linear1DSets that make up this LinearNDSet.coord_sys- CoordinateSystem for this set. May be null, but if not, must be consistent withtype.units- Unit-s for the values insets. May be null, but must be convertible with default oftypeif not null.errors- ErrorEstimate-s for values insets, may be null- Throws:
VisADException- problem creating VisAD objects.
-
LinearNDSet
public LinearNDSet(MathType type, Linear1DSet[] l, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors, boolean cache) throws VisADException
Construct an N-dimensional set as the product of N Linear1DSets; coordinate_system and units must be compatible with defaults for type, or may be null; errors may be null- Parameters:
type- MathType for this LinearNDSet. Must be consistent with MathType-s of sets.l- Linear1DSets that make up this LinearNDSet.coord_sys- CoordinateSystem for this set. May be null, but if not, must be consistent withtype.units- Unit-s for the values insets. May be null, but must be convertible with default oftypeif not null.errors- ErrorEstimate-s for values insets, may be nullcache- if true, enumerate and cache the samples. This will result in a larger memory footprint, but will reduce the time to return samples from calls toSampledSet.getSamples().- Throws:
VisADException- problem creating VisAD objects.
-
-
Method Detail
-
create
public static LinearSet create(MathType type, double[] firsts, double[] lasts, int[] lengths) throws VisADException
General Factory method for creating the proper linear set (Linear1DSet, Linear2DSet, etc.).- Throws:
VisADException
-
create
public static LinearSet create(MathType type, double[] firsts, double[] lasts, int[] lengths, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors) throws VisADException
- Throws:
VisADException
-
indexToValue
public float[][] indexToValue(int[] index) throws VisADExceptionconvert an array of 1-D indices to an array of values in R^DomainDimension- Specified by:
indexToValuein interfaceSetIface- Overrides:
indexToValuein classGriddedSet- Parameters:
index- array of integer indices- Returns:
- float[domain_dimension][indices.length] array of Set values
- Throws:
VisADException- a VisAD error occurred
-
gridToValue
public float[][] gridToValue(float[][] grid) throws VisADExceptiontransform an array of non-integer grid coordinates to an array of values in R^DomainDimension- Specified by:
gridToValuein interfaceGriddedSetIface- Overrides:
gridToValuein classGriddedSet- Parameters:
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.- Returns:
- The interpolated samples of the set. Element [i][j] is the i-th coordinate of the j-th interpolation point.
- Throws:
VisADException- VisAD failure.
-
valueToGrid
public float[][] valueToGrid(float[][] value) throws VisADExceptiontransform an array of values in R^DomainDimension to an array of non-integer grid coordinates- Specified by:
valueToGridin interfaceGriddedSetIface- Overrides:
valueToGridin classGriddedSet- Parameters:
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.- Returns:
- The array of grid coordinates corresponding to the points. Element [i][j] is the i-th non-integer grid coordinate of the j-th point.
- Throws:
VisADException- VisAD failure.
-
isMissing
public boolean isMissing()
Check to see if this is an empty cross-product.- Specified by:
isMissingin interfaceData- Overrides:
isMissingin classSampledSet- Returns:
- always false.
-
getFirsts
public double[] getFirsts() throws VisADExceptionGet the array of first values of each of the arithmetic progressions in this cross product.- Returns:
- array of first values.
- Throws:
VisADException
-
getLasts
public double[] getLasts() throws VisADExceptionGet the array of last values of each of the arithmetic progressions in this cross product.- Returns:
- array of last values.
- Throws:
VisADException
-
getSamples
public float[][] getSamples(boolean copy) throws VisADExceptionReturn the array of values in R^N space corresponding to this cross product of arithmetic progressions.- Specified by:
getSamplesin interfaceSetIface- Overrides:
getSamplesin classSampledSet- Parameters:
copy- if true, return a copy of the samples.- Returns:
- array of values in R^N space.
- Throws:
VisADException- problem creating samples.
-
equals
public boolean equals(java.lang.Object set)
Check to see if this LinearNDSet is equal to the Object in question.- Specified by:
equalsin interfaceSetIface- Overrides:
equalsin classGriddedSet- Parameters:
set- Object in question- Returns:
- true if
setis a LinearNDSet and each of the Linear1DSet-s that make up this cross product are equal.
-
hashCode
public int hashCode()
Returns the hash code for this instance.- Overrides:
hashCodein classGriddedSet- Returns:
- The hash code for this instance.
-
getLinear1DComponent
public Linear1DSet getLinear1DComponent(int i)
Get the indexed component.- Specified by:
getLinear1DComponentin interfaceLinearSet- Parameters:
i- Index of component- Returns:
- The requested component
- Throws:
java.lang.ArrayIndexOutOfBoundsException- If an invalid index is specified.
-
cloneButType
public java.lang.Object cloneButType(MathType type) throws VisADException
Return a clone of this object with a new MathType.- Specified by:
cloneButTypein interfaceSetIface- Overrides:
cloneButTypein classGriddedSet- Parameters:
type- new MathType.- Returns:
- new LinearNDSet with
type. - Throws:
VisADException- iftypeis not compatible with MathType of component Linear1DSets.
-
longString
public java.lang.String longString(java.lang.String pre) throws VisADExceptionExtended version of the toString() method.- Specified by:
longStringin interfaceData- Overrides:
longStringin classGriddedSet- Parameters:
pre- prefix for string.- Returns:
- wordy string describing this LinearNDSet.
- Throws:
VisADException
-
main
public static void main(java.lang.String[] args) throws VisADExceptionrun 'java visad.LinearNDSet' to test the LinearNDSet class- Throws:
VisADException
-
-
DMelt 3.0 © DataMelt by jWork.ORG