@Immutable public class AtmosSigma extends Object
pressure(x,y,z) = ptop + sigma(z)*surfacePressure(x,y)
| Modifier and Type | Field and Description |
|---|---|
static String |
PS
Surface pressure name identifier
|
static String |
PTOP
P-naught identifier
|
static String |
SIGMA
The "depth" variable name identifier
|
protected String |
units |
| Modifier and Type | Method and Description |
|---|---|
static AtmosSigma |
create(NetcdfFile ds,
Dimension timeDim,
List<Parameter> params)
Create a new vertical transform for Ocean S coordinates
|
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
(needds test!!!)
|
protected Dimension |
getTimeDimension()
Get the time Dimension, if it exists
|
String |
getUnitString()
Get the unit string for the vertical coordinate.
|
boolean |
isTimeDependent()
Get whether this coordinate is time dependent.
|
VerticalTransform |
subset(Range t_range,
Range z_range,
Range y_range,
Range x_range)
Create a VerticalTransform as a section of an existing VerticalTransform.
|
public static final String PTOP
public static final String PS
public static final String SIGMA
protected final String units
public static AtmosSigma create(NetcdfFile ds, Dimension timeDim, List<Parameter> params)
ds - datasettimeDim - time dimensionparams - list of transformation Parameters
TODO: params will change to AttributeContainer in ver7.public ArrayDouble.D3 getCoordinateArray(int timeIndex) throws IOException, InvalidRangeException
getCoordinateArray in interface VerticalTransformtimeIndex - the time index. Ignored if !isTimeDependent().IOException - problem reading the dataInvalidRangeException - timeIndex out of boundspublic ArrayDouble.D1 getCoordinateArray1D(int timeIndex, int xIndex, int yIndex) throws IOException, InvalidRangeException
getCoordinateArray1D in interface VerticalTransformtimeIndex - the time index. Ignored if !isTimeDependent().xIndex - the x indexyIndex - the y indexIOException - problem reading dataInvalidRangeException - _more_@Nullable public String getUnitString()
VerticalTransformgetUnitString in interface VerticalTransformpublic boolean isTimeDependent()
VerticalTransformisTimeDependent in interface VerticalTransformprotected Dimension getTimeDimension()
public VerticalTransform subset(Range t_range, Range z_range, Range y_range, Range x_range)
VerticalTransformsubset in interface VerticalTransformt_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