ucar.unidata.geoloc.vertical
Class AtmosSigma

java.lang.Object
  extended by ucar.unidata.geoloc.vertical.VerticalTransformImpl
      extended by ucar.unidata.geoloc.vertical.AtmosSigma
All Implemented Interfaces:
VerticalTransform

public class AtmosSigma
extends VerticalTransformImpl

Create a 3D height(z,y,x) array using the CF formula for "atmospheric sigma vertical coordinate".

pressure(x,y,z) = ptop + sigma(z)*surfacePressure(x,y)

Author:
caron
See Also:
http://cf-pcmdi.llnl.gov/

Field Summary
static java.lang.String PS
          Surface pressure name identifier
static java.lang.String PTOP
          P-naught identifier
static java.lang.String SIGMA
          The "depth" variable name identifier
 
Constructor Summary
AtmosSigma(NetcdfFile ds, Dimension timeDim, java.util.List<Parameter> params)
          Create a new vertical transform for Ocean S coordinates
 
Method Summary
 ArrayDouble.D3 getCoordinateArray(int timeIndex)
          Get the 3D vertical coordinate array for this time step.
 
Methods inherited from class ucar.unidata.geoloc.vertical.VerticalTransformImpl
getUnitString, isTimeDependent, subset
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PTOP

public static final java.lang.String PTOP
P-naught identifier

See Also:
Constant Field Values

PS

public static final java.lang.String PS
Surface pressure name identifier

See Also:
Constant Field Values

SIGMA

public static final java.lang.String SIGMA
The "depth" variable name identifier

See Also:
Constant Field Values
Constructor Detail

AtmosSigma

public AtmosSigma(NetcdfFile ds,
                  Dimension timeDim,
                  java.util.List<Parameter> params)
Create a new vertical transform for Ocean S coordinates

Parameters:
ds - dataset
timeDim - time dimension
params - list of transformation Parameters
Method Detail

getCoordinateArray

public ArrayDouble.D3 getCoordinateArray(int timeIndex)
                                  throws java.io.IOException,
                                         InvalidRangeException
Get the 3D vertical coordinate array for this time step.

Specified by:
getCoordinateArray in interface VerticalTransform
Specified by:
getCoordinateArray in class VerticalTransformImpl
Parameters:
timeIndex - the time index. Ignored if !isTimeDependent().
Returns:
vertical coordinate array
Throws:
java.io.IOException - problem reading data
InvalidRangeException - _more_