public class DoradeSweep
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
DoradeSweep.DoradeSweepException |
static class |
DoradeSweep.MovingSensorException |
Modifier and Type | Field and Description |
---|---|
static float |
BAD_VALUE
Bad data value flag
|
Constructor and Description |
---|
DoradeSweep(java.io.RandomAccessFile file) |
DoradeSweep(java.lang.String filename)
Construct a
DoradeSweep using the named DORADE sweep file. |
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
formatDate(java.util.Date date)
Return a string with a reasonable representation in UTC of the
given
Date . |
float |
getAltitude(int which)
Get the sensor altitude for a non-moving sensor
|
float[] |
getAltitudes(int which)
Get the per-ray array of sensor altitudes.
|
float |
getantennaGain(int which) |
float[] |
getAzimuths()
Get the azimuths for all rays in the sweep.
|
float |
getCellSpacing(int which)
Return the cell spacing for the given sensor, if constant, otherwise
return -1
|
float[] |
getElevations()
Get the elevations for all rays in the sweep.
|
float |
getFixedAngle()
Get the fixed angle for this sweep.
|
float |
gethBeamWidth(int which) |
float |
getLatitude(int which)
Get the sensor latitude for a non-moving sensor
|
float[] |
getLatitudes(int which)
Get the per-ray array of sensor latitudes.
|
float |
getLongitude(int which)
Get the sensor longitude for a non-moving sensor
|
float[] |
getLongitudes(int which)
Get the per-ray array of sensor longitudes.
|
int |
getNCells(int which)
Get the number of data cells (gates) per ray for the given sensor.
|
float |
getnoisePower(int which) |
int |
getNRays()
Get the number of rays in this sweep.
|
int |
getNSensors()
Get the number of sensors associated with this sweep.
|
DoradePARM[] |
getParamList()
Get the array of available parameters.
|
float |
getpeakPower(int which) |
java.lang.String |
getProjectName() |
float |
getradarConstant(int which) |
float |
getRangeToFirstCell(int which)
Get the range to the leading edge of the first cell for the given sensor.
|
float[] |
getRayData(DoradePARM param,
int ray)
Get the array of data for the given parameter and ray.
|
float[] |
getRayData(DoradePARM param,
int ray,
float[] workingArray)
Get the array of data for the given parameter and ray.
|
java.util.Date |
getRayTime(int ray) |
float |
getrcvrGain(int which) |
ScanMode |
getScanMode() |
ScanMode |
getScanMode(int which) |
java.lang.String |
getSensorName(int which)
Get the name of a selected sensor.
|
int |
getSweepNumber() |
float |
getsystemGain(int which) |
java.util.Date |
getTime()
Get the (start) time for this sweep.
|
java.util.Date[] |
getTimes() |
float |
getunambiguousRange(int which) |
float |
getUnambiguousVelocity(int which) |
short |
getVolumnNumber() |
static boolean |
isDoradeSweep(java.io.RandomAccessFile file) |
boolean |
isLittleEndian()
Is this sweepfile little-endian?
|
DoradePARM |
lookupParamIgnoreCase(java.lang.String name)
Get the parameter descriptor with the given name, ignoring case.
|
static void |
main(java.lang.String[] args)
DoradeSweep class test method. |
boolean |
sensorIsMoving(int which)
Return whether the selected sensor is moving.
|
public DoradeSweep(java.lang.String filename) throws DoradeSweep.DoradeSweepException, java.io.FileNotFoundException
DoradeSweep
using the named DORADE sweep file.filename
- the DORADE sweepfile to loadDoradeSweep.DoradeSweepException
java.io.FileNotFoundException
public DoradeSweep(java.io.RandomAccessFile file) throws DoradeSweep.DoradeSweepException, java.io.FileNotFoundException
DoradeSweep.DoradeSweepException
java.io.FileNotFoundException
public boolean isLittleEndian()
public DoradePARM[] getParamList()
public DoradePARM lookupParamIgnoreCase(java.lang.String name)
null
is returned.name
- the name of the desired parameterDoradePARM
from this sweep with the given name,
or null
if no such parameter exists.public int getNRays()
public int getNSensors()
public java.lang.String getSensorName(int which)
which
- the index of the sensor of interestgetNSensors()
public boolean sensorIsMoving(int which) throws DoradeSweep.DoradeSweepException
which
- the index of the sensor of interestDoradeSweep.DoradeSweepException
getNSensors()
public float getLatitude(int which) throws DoradeSweep.MovingSensorException
which
- the index of the sensor of interestDoradeSweep.MovingSensorException
- if the sensor is movinggetLatitudes(int)
,
sensorIsMoving(int)
,
getNSensors()
public float getLongitude(int which) throws DoradeSweep.MovingSensorException
which
- the index of the sensor of interestDoradeSweep.MovingSensorException
- if the sensor is movinggetLongitudes(int)
,
sensorIsMoving(int)
,
getNSensors()
public float getAltitude(int which) throws DoradeSweep.MovingSensorException
which
- the index of the sensor of interestDoradeSweep.MovingSensorException
- if the sensor is movinggetAltitudes(int)
,
sensorIsMoving(int)
,
getNSensors()
public float[] getLatitudes(int which)
which
- the index of the sensor of interestgetLatitude(int)
,
getNSensors()
public float[] getLongitudes(int which)
which
- the index of the sensor of interestgetLongitude(int)
,
getNSensors()
public float[] getAltitudes(int which)
which
- the index of the sensor of interestgetAltitude(int)
,
getNSensors()
,
getNRays()
public float getFixedAngle()
public int getSweepNumber()
public java.util.Date getTime()
public java.util.Date[] getTimes()
public java.util.Date getRayTime(int ray)
public float[] getRayData(DoradePARM param, int ray) throws DoradeSweep.DoradeSweepException
param
- the parameter of interestray
- the index of the ray of interestBAD_VALUE
DoradeSweep.DoradeSweepException
getNCells(int)
,
getNRays()
,
BAD_VALUE
public float[] getRayData(DoradePARM param, int ray, float[] workingArray) throws DoradeSweep.DoradeSweepException
param
- the parameter of interestray
- the index of the ray of interestworkingArray
- If non-null and the same length as what is needed use this instead.BAD_VALUE
DoradeSweep.DoradeSweepException
getNCells(int)
,
getNRays()
,
BAD_VALUE
public float getRangeToFirstCell(int which)
which
- index of the sensor of interestgetNSensors()
public float getCellSpacing(int which)
which
- index of the sensor of interestgetNSensors()
public int getNCells(int which)
which
- index of the sensor of interestgetNSensors()
public short getVolumnNumber()
public java.lang.String getProjectName()
public float[] getAzimuths()
getNRays()
public float[] getElevations()
getNRays()
public static java.lang.String formatDate(java.util.Date date)
Date
.date
- Date
to be representedpublic static void main(java.lang.String[] args)
DoradeSweep
class test method. Usage:
$ java ucar.atd.dorade.DoradeSweep <DORADE_sweepfile>
public ScanMode getScanMode()
public static boolean isDoradeSweep(java.io.RandomAccessFile file) throws DoradeSweep.DoradeSweepException
DoradeSweep.DoradeSweepException
public ScanMode getScanMode(int which)
public float getUnambiguousVelocity(int which)
public float getunambiguousRange(int which)
public float getradarConstant(int which)
public float getrcvrGain(int which)
public float getantennaGain(int which)
public float getsystemGain(int which)
public float gethBeamWidth(int which)
public float getpeakPower(int which)
public float getnoisePower(int which)