Package ucar.unidata.geoloc.vertical
Class HybridHeight
- java.lang.Object
-
- ucar.unidata.geoloc.vertical.VerticalTransformImpl
-
- ucar.unidata.geoloc.vertical.HybridHeight
-
- All Implemented Interfaces:
VerticalTransform
public class HybridHeight extends VerticalTransformImpl
Create a 3D height(z,y,x) array using the netCDF CF convention formula for "Atmospheric Hybrid Height".height(x,y,z) = a(z) + b(z)*orog(x,y)
- See Also:
- http://cf-pcmdi.llnl.gov/
-
-
Constructor Summary
Constructors Constructor Description HybridHeight(NetcdfFile ds, Dimension timeDim, List<Parameter> params)
Construct a coordinate transform for hybrid height
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ArrayDouble.D3
getCoordinateArray(int timeIndex)
Get the 3D vertical coordinate array for this time step.ArrayDouble.D1
getCoordinateArray1D(int timeIndex, int xIndex, int yIndex)
Get the 1D vertical coordinate array for this time step and point-
Methods inherited from class ucar.unidata.geoloc.vertical.VerticalTransformImpl
getParameterBooleanValue, getParameterStringValue, getTimeDimension, getUnitString, isTimeDependent, readArray, subset
-
-
-
-
Field Detail
-
OROG
public static final String OROG
Surface pressure name identifier- See Also:
- Constant Field Values
-
A
public static final String A
The "a" variable name identifier- See Also:
- Constant Field Values
-
B
public static final String B
The "b" variable name identifier- See Also:
- Constant Field Values
-
-
Constructor Detail
-
HybridHeight
public HybridHeight(NetcdfFile ds, Dimension timeDim, List<Parameter> params)
Construct a coordinate transform for hybrid height- Parameters:
ds
- netCDF datasettimeDim
- time dimensionparams
- list of transformation Parameters
-
-
Method Detail
-
getCoordinateArray
public ArrayDouble.D3 getCoordinateArray(int timeIndex) throws IOException, InvalidRangeException
Get the 3D vertical coordinate array for this time step.- Specified by:
getCoordinateArray
in interfaceVerticalTransform
- Specified by:
getCoordinateArray
in classVerticalTransformImpl
- Parameters:
timeIndex
- the time index. Ignored if !isTimeDependent().- Returns:
- vertical coordinate array
- Throws:
IOException
- problem reading dataInvalidRangeException
- not a valid time range
-
getCoordinateArray1D
public ArrayDouble.D1 getCoordinateArray1D(int timeIndex, int xIndex, int yIndex) throws IOException, InvalidRangeException
Get the 1D vertical coordinate array for this time step and point- Specified by:
getCoordinateArray1D
in interfaceVerticalTransform
- Specified by:
getCoordinateArray1D
in classVerticalTransformImpl
- Parameters:
timeIndex
- the time index. Ignored if !isTimeDependent().xIndex
- the x indexyIndex
- the y index- Returns:
- vertical coordinate array
- Throws:
IOException
- problem reading dataInvalidRangeException
- _more_
-
-