Package ucar.nc2.dt
Interface UGridDatatype
-
- All Superinterfaces:
Comparable<ucar.nc2.dt.GridDatatype>,ucar.nc2.dt.GridDatatype,ucar.ma2.IsMissingEvaluator
- All Known Implementing Classes:
MeshVariable
public interface UGridDatatype extends ucar.nc2.dt.GridDatatypeInterface for scientific datatype Grid.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ucar.nc2.AttributefindAttributeIgnoreCase(String name)Convenience function; lookup Attribute by name.StringfindAttValueIgnoreCase(String attName, String defaultValue)Convenience function; lookup Attribute value by name.List<ucar.nc2.Attribute>getAttributes()Get a List of Attribute specific to the Griducar.ma2.DataTypegetDataType()get the data typeStringgetDescription()Get the description/long_name of the Griducar.nc2.DimensiongetDimension(int i)get the ith dimensionList<ucar.nc2.Dimension>getDimensions()Returns a List of Dimension containing the dimensions used by this grid.ucar.nc2.DimensiongetEnsembleDimension()get the ensemble Dimension, if it existsintgetEnsembleDimensionIndex()get the ensemble Dimension index in the geogrid (canonical order), or -1 if noneStringgetInfo()human readable information about this Grid.UGridDataset.MeshsetgetMeshset()get the Grid's Coordinate System.ucar.ma2.MAMath.MinMaxgetMinMaxSkipMissingData(ucar.ma2.Array data)Get the minimum and the maximum data value of the previously read Array, skipping missing values as defined by isMissingData(double val).StringgetName()Get the name of the GridStringgetNameEscaped()Get the escaped name of the Griducar.unidata.geoloc.ProjectionImplgetProjection()get the Projection, if it exists.intgetRank()get the rankucar.nc2.DimensiongetRunTimeDimension()get the runtime Dimension, if it existsintgetRunTimeDimensionIndex()get the runtime Dimension index in the geogrid (canonical order), or -1 if noneint[]getShape()get the shape (canonical ordering)ucar.nc2.DimensiongetTimeDimension()get the time Dimension, if it existsintgetTimeDimensionIndex()get the time Dimension index in the geogrid (canonical order), or -1 if noneStringgetUnitsString()Get the unit stringucar.nc2.dataset.VariableDSgetVariable()Get the underlying Variable, if it exists.ucar.nc2.DimensiongetXDimension()get the x Dimension, if it existsintgetXDimensionIndex()get the x Dimension index in the geogrid (canonical order)ucar.nc2.DimensiongetYDimension()get the y Dimension, if it existsintgetYDimensionIndex()get the y Dimension index in the geogrid (canonical order)ucar.nc2.DimensiongetZDimension()get the z Dimension, if it existsintgetZDimensionIndex()get the z Dimension index in the geogrid (canonical order), or -1 if nonebooleanhasMissingData()true if there may be missing databooleanisMissingData(double val)if val is missing dataUGridDatatypemakeSubset(ucar.ma2.Range rt_range, ucar.ma2.Range e_range, ucar.ma2.Range t_range, ucar.ma2.Range z_range, ucar.ma2.Range y_range, ucar.ma2.Range x_range)Create a new GeoGrid that is a logical subset of this GeoGrid.UGridDatatypemakeSubset(ucar.ma2.Range t_range, ucar.ma2.Range z_range, ucar.unidata.geoloc.LatLonRect bbox, int z_stride, int y_stride, int x_stride)Create a new GeoGrid that is a logical subset of this GeoGrid.ucar.ma2.ArrayreadDataSlice(int t_index, int z_index, int y_index, int x_index)This reads an arbitrary data slice, returning the data in canonical order (t-z-y-x).ucar.ma2.ArrayreadDataSlice(int rt_index, int e_index, int t_index, int z_index, int y_index, int x_index)This reads an arbitrary data slice, returning the data in canonical order (rt-e-t-z-y-x).doublereadPointData(ucar.unidata.geoloc.LatLonPoint point)ucar.ma2.ArrayreadVolumeData(int t_index)Reads in the data "volume" at the given time index.float[]setMissingToNaN(float[] data)Convert (in place) all values in the given array that are considered as "missing" to Float.NaN, according to isMissing(val).-
Methods inherited from interface java.lang.Comparable
compareTo
-
-
-
-
Method Detail
-
getName
String getName()
Get the name of the Grid- Specified by:
getNamein interfaceucar.nc2.dt.GridDatatype- Returns:
- the name of the Grid
-
getNameEscaped
String getNameEscaped()
Get the escaped name of the Grid- Returns:
- the escaped name of the Grid
-
getDescription
String getDescription()
Get the description/long_name of the Grid- Specified by:
getDescriptionin interfaceucar.nc2.dt.GridDatatype- Returns:
- the description/long_name of the Grid
-
getUnitsString
String getUnitsString()
Get the unit string- Specified by:
getUnitsStringin interfaceucar.nc2.dt.GridDatatype- Returns:
- the unit string
-
getDataType
ucar.ma2.DataType getDataType()
get the data type- Specified by:
getDataTypein interfaceucar.nc2.dt.GridDatatype- Returns:
- the data type
-
getRank
int getRank()
get the rank- Specified by:
getRankin interfaceucar.nc2.dt.GridDatatype- Returns:
- the rank
-
getShape
int[] getShape()
get the shape (canonical ordering)- Specified by:
getShapein interfaceucar.nc2.dt.GridDatatype- Returns:
- the shape (canonical ordering)
-
getAttributes
List<ucar.nc2.Attribute> getAttributes()
Get a List of Attribute specific to the Grid- Specified by:
getAttributesin interfaceucar.nc2.dt.GridDatatype- Returns:
- a List of Attribute
-
findAttributeIgnoreCase
ucar.nc2.Attribute findAttributeIgnoreCase(String name)
Convenience function; lookup Attribute by name.- Specified by:
findAttributeIgnoreCasein interfaceucar.nc2.dt.GridDatatype- Parameters:
name- the name of the attribute- Returns:
- the attribute, or null if not found
-
findAttValueIgnoreCase
String findAttValueIgnoreCase(String attName, String defaultValue)
Convenience function; lookup Attribute value by name. Must be String valued- Specified by:
findAttValueIgnoreCasein interfaceucar.nc2.dt.GridDatatype- Parameters:
attName- name of the attributedefaultValue- if not found, use this as the default- Returns:
- Attribute string value, or default if not found.
-
getDimensions
List<ucar.nc2.Dimension> getDimensions()
Returns a List of Dimension containing the dimensions used by this grid. The dimension are put into canonical order: (rt, e, t, z, y, x). Only the x and y are required. If the Horizontal axes are 2D, the x and y dimensions are arbitrarily chosen to be gcs.getXHorizAxis().getDimension(1), gcs.getXHorizAxis().getDimension(0), respectively.- Specified by:
getDimensionsin interfaceucar.nc2.dt.GridDatatype- Returns:
- List with objects of type Dimension, in canonical order.
-
getDimension
ucar.nc2.Dimension getDimension(int i)
get the ith dimension- Specified by:
getDimensionin interfaceucar.nc2.dt.GridDatatype- Parameters:
i- index of dimension- Returns:
- the ith dimension
-
getTimeDimension
ucar.nc2.Dimension getTimeDimension()
get the time Dimension, if it exists- Specified by:
getTimeDimensionin interfaceucar.nc2.dt.GridDatatype- Returns:
- the time Dimension, or null
-
getZDimension
ucar.nc2.Dimension getZDimension()
get the z Dimension, if it exists- Specified by:
getZDimensionin interfaceucar.nc2.dt.GridDatatype- Returns:
- the z Dimension, or null
-
getYDimension
ucar.nc2.Dimension getYDimension()
get the y Dimension, if it exists- Specified by:
getYDimensionin interfaceucar.nc2.dt.GridDatatype- Returns:
- the y Dimension, or null
-
getXDimension
ucar.nc2.Dimension getXDimension()
get the x Dimension, if it exists- Specified by:
getXDimensionin interfaceucar.nc2.dt.GridDatatype- Returns:
- the x Dimension, or null
-
getEnsembleDimension
ucar.nc2.Dimension getEnsembleDimension()
get the ensemble Dimension, if it exists- Specified by:
getEnsembleDimensionin interfaceucar.nc2.dt.GridDatatype- Returns:
- the ensemble Dimension, or null
-
getRunTimeDimension
ucar.nc2.Dimension getRunTimeDimension()
get the runtime Dimension, if it exists- Specified by:
getRunTimeDimensionin interfaceucar.nc2.dt.GridDatatype- Returns:
- the runtime Dimension, or null
-
getTimeDimensionIndex
int getTimeDimensionIndex()
get the time Dimension index in the geogrid (canonical order), or -1 if none- Specified by:
getTimeDimensionIndexin interfaceucar.nc2.dt.GridDatatype- Returns:
- the time Dimension index in canonical order, or -1
-
getZDimensionIndex
int getZDimensionIndex()
get the z Dimension index in the geogrid (canonical order), or -1 if none- Specified by:
getZDimensionIndexin interfaceucar.nc2.dt.GridDatatype- Returns:
- the z Dimension index in canonical order, or -1
-
getYDimensionIndex
int getYDimensionIndex()
get the y Dimension index in the geogrid (canonical order)- Specified by:
getYDimensionIndexin interfaceucar.nc2.dt.GridDatatype- Returns:
- the y Dimension index in canonical order, or -1
-
getXDimensionIndex
int getXDimensionIndex()
get the x Dimension index in the geogrid (canonical order)- Specified by:
getXDimensionIndexin interfaceucar.nc2.dt.GridDatatype- Returns:
- the x Dimension index in canonical order, or -1
-
getEnsembleDimensionIndex
int getEnsembleDimensionIndex()
get the ensemble Dimension index in the geogrid (canonical order), or -1 if none- Specified by:
getEnsembleDimensionIndexin interfaceucar.nc2.dt.GridDatatype- Returns:
- the ensemble Dimension index in canonical order, or -1
-
getRunTimeDimensionIndex
int getRunTimeDimensionIndex()
get the runtime Dimension index in the geogrid (canonical order), or -1 if none- Specified by:
getRunTimeDimensionIndexin interfaceucar.nc2.dt.GridDatatype- Returns:
- the runtime Dimension index in canonical order, or -1
-
getMeshset
UGridDataset.Meshset getMeshset()
get the Grid's Coordinate System.- Returns:
- the Grid's Coordinate System.
-
getProjection
ucar.unidata.geoloc.ProjectionImpl getProjection()
get the Projection, if it exists.- Specified by:
getProjectionin interfaceucar.nc2.dt.GridDatatype- Returns:
- the Projection, or null
-
hasMissingData
boolean hasMissingData()
true if there may be missing data- Specified by:
hasMissingDatain interfaceucar.nc2.dt.GridDatatype- Returns:
- true if there may be missing data
-
isMissingData
boolean isMissingData(double val)
if val is missing data- Specified by:
isMissingDatain interfaceucar.nc2.dt.GridDatatype- Parameters:
val- test this value- Returns:
- true if val is missing data
-
getMinMaxSkipMissingData
ucar.ma2.MAMath.MinMax getMinMaxSkipMissingData(ucar.ma2.Array data)
Get the minimum and the maximum data value of the previously read Array, skipping missing values as defined by isMissingData(double val).- Specified by:
getMinMaxSkipMissingDatain interfaceucar.nc2.dt.GridDatatype- Parameters:
data- Array to get min/max values- Returns:
- both min and max value.
-
setMissingToNaN
float[] setMissingToNaN(float[] data)
Convert (in place) all values in the given array that are considered as "missing" to Float.NaN, according to isMissing(val).- Specified by:
setMissingToNaNin interfaceucar.nc2.dt.GridDatatype- Parameters:
data- input array- Returns:
- input array, with missing values converted to NaNs.
-
readDataSlice
ucar.ma2.Array readDataSlice(int rt_index, int e_index, int t_index, int z_index, int y_index, int x_index) throws IOExceptionThis reads an arbitrary data slice, returning the data in canonical order (rt-e-t-z-y-x). If any dimension does not exist, ignore it.- Specified by:
readDataSlicein interfaceucar.nc2.dt.GridDatatype- Parameters:
rt_index- if< 0, get all of runtime dim; if valid index, fix slice to that value.e_index- if< 0, get all of ensemble dim; if valid index, fix slice to that value.t_index- if< 0, get all of time dim; if valid index, fix slice to that value.z_index- if< 0, get all of z dim; if valid index, fix slice to that value.y_index- if< 0, get all of y dim; if valid index, fix slice to that value.x_index- if< 0, get all of x dim; if valid index, fix slice to that value.- Returns:
- data[rt,e,t,z,y,x], eliminating missing or fixed dimension.
- Throws:
IOException- on io error
-
readDataSlice
ucar.ma2.Array readDataSlice(int t_index, int z_index, int y_index, int x_index) throws IOExceptionThis reads an arbitrary data slice, returning the data in canonical order (t-z-y-x). If any dimension does not exist, ignore it. For backwards compatibility for grids with no runtime or ensemble dimensions.- Specified by:
readDataSlicein interfaceucar.nc2.dt.GridDatatype- Parameters:
t_index- if< 0, get all of time dim; if valid index, fix slice to that value.z_index- if< 0, get all of z dim; if valid index, fix slice to that value.y_index- if< 0, get all of y dim; if valid index, fix slice to that value.x_index- if< 0, get all of x dim; if valid index, fix slice to that value.- Returns:
- data[rt,e,t,z,y,x], eliminating missing or fixed dimension.
- Throws:
IOException- on io error
-
readVolumeData
ucar.ma2.Array readVolumeData(int t_index) throws IOExceptionReads in the data "volume" at the given time index. If its a product set, put into canonical order (z-y-x). If not a product set, reorder to (z,i,j), where i, j are from the original- Specified by:
readVolumeDatain interfaceucar.nc2.dt.GridDatatype- Parameters:
t_index- time index; ignored if no time axis. you can set to -1 to read all times.- Returns:
- data[z,y,x] or data[y,x] if no z axis.
- Throws:
IOException- on io error
-
makeSubset
UGridDatatype makeSubset(ucar.ma2.Range rt_range, ucar.ma2.Range e_range, ucar.ma2.Range t_range, ucar.ma2.Range z_range, ucar.ma2.Range y_range, ucar.ma2.Range x_range) throws ucar.ma2.InvalidRangeException
Create a new GeoGrid that is a logical subset of this GeoGrid.- Specified by:
makeSubsetin interfaceucar.nc2.dt.GridDatatype- Parameters:
rt_range- subset the runtime dimension, or null if you want all of ite_range- subset the ensemble dimension, or null if you want all of itt_range- subset the time dimension, or null if you want all of itz_range- subset the vertical dimension, or null if you want all of ity_range- subset the y dimension, or null if you want all of itx_range- subset the x dimension, or null if you want all of it- Returns:
- subsetted GeoGrid
- Throws:
ucar.ma2.InvalidRangeException- if ranges are invlaid
-
makeSubset
UGridDatatype makeSubset(ucar.ma2.Range t_range, ucar.ma2.Range z_range, ucar.unidata.geoloc.LatLonRect bbox, int z_stride, int y_stride, int x_stride) throws ucar.ma2.InvalidRangeException
Create a new GeoGrid that is a logical subset of this GeoGrid. For backwards compatibility for grids with no runtime or ensemble dimensions.- Specified by:
makeSubsetin interfaceucar.nc2.dt.GridDatatype- Parameters:
t_range- subset the time dimension, or null if you want all of itz_range- subset the vertical dimension, or null if you want all of itbbox- a lat/lon bounding box, or null if you want all x,yz_stride- use only if z_range is null, then take all z with this stride (1 means all)y_stride- use this stride on the y coordinate (1 means all)x_stride- use this stride on the x coordinate (1 means all)- Returns:
- subsetted GeoGrid
- Throws:
ucar.ma2.InvalidRangeException- if ranges are invlaid
-
readPointData
double readPointData(ucar.unidata.geoloc.LatLonPoint point) throws IOException- Throws:
IOException
-
getInfo
String getInfo()
human readable information about this Grid.- Specified by:
getInfoin interfaceucar.nc2.dt.GridDatatype- Returns:
- human readable information about this Grid.
-
getVariable
ucar.nc2.dataset.VariableDS getVariable()
Get the underlying Variable, if it exists.- Specified by:
getVariablein interfaceucar.nc2.dt.GridDatatype- Returns:
- the underlying Variable, if it exists, else null
-
-