org.wdssii.singleradar
Class VilAlgorithm

java.lang.Object
  extended by org.wdssii.core.WDSSIIProgram
      extended by org.wdssii.core.Algorithm
          extended by org.wdssii.singleradar.VilAlgorithm
All Implemented Interfaces:
IndexRecordListener

public class VilAlgorithm
extends Algorithm

Author:
lakshman

Field Summary
private  float azimuthalSpacingDegrees
           
private  boolean compositeEnabled
           
private static float deltaDBZ
           
private  PolarGrid[] elevations
           
private static float FACTOR
           
private  float gateWidthKms
           
private  String inputType
           
private  int latest
           
private static org.apache.commons.logging.Log log
           
private static float[] lookup
           
private static float maxDBZ
           
private static float minDBZ
           
private  int numGates
           
private  boolean rapidUpdateEnabled
           
private  VCP vcp
           
private  boolean vilEnabled
           
 
Constructor Summary
VilAlgorithm()
           
 
Method Summary
private  PolarGrid computeComposite()
           
private  float[] computeMidbeamSines()
           
private  PolarGrid computeVil(PolarGrid composite)
           
 float getAzimuthalSpacingDegrees()
           
 float getGateWidthKms()
           
 String getInputType()
           
 int getNumGates()
           
private  float getPowPow(float dbz)
           
private  String[] getSubTypes()
           
 void handleRecord(IndexRecord rec)
          Workhorse method of algorithm; will be called by Index on every new record.
private  float heightAboveGround(float range, float sine_angle)
           
 boolean isCompositeEnabled()
           
 boolean isRapidUpdateEnabled()
           
private  boolean isReadyToCompute()
           
 boolean isVilEnabled()
           
private  boolean isVolumeComplete()
           
static void main(String[] args)
           
private static float[] makePowPowLookup()
           
 void setAzimuthalSpacingDegrees(float azimuthalSpacing)
           
 void setCompositeEnabled(boolean compositeEnabled)
           
 void setGateWidthKms(float gateWidth)
           
 void setInputType(String inputType)
           
 void setNumGates(int numGates)
           
 void setRapidUpdateEnabled(boolean rapidUpdateEnabled)
           
 void setVilEnabled(boolean vilEnabled)
           
private  void update(PolarGrid pg)
           
 
Methods inherited from class org.wdssii.core.Algorithm
execute, getInputURLs, setInputURLs
 
Methods inherited from class org.wdssii.core.WDSSIIProgram
getOutputDir, getPropertiesFromCommandLine, getSubTypeForElevation, isRealTime, printUsage, setOutputDir, setRealTime, setup, setup, setupAndExecute
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

private static org.apache.commons.logging.Log log

inputType

private String inputType

vilEnabled

private boolean vilEnabled

compositeEnabled

private boolean compositeEnabled

rapidUpdateEnabled

private boolean rapidUpdateEnabled

azimuthalSpacingDegrees

private float azimuthalSpacingDegrees

gateWidthKms

private float gateWidthKms

numGates

private int numGates

vcp

private VCP vcp

elevations

private PolarGrid[] elevations

latest

private int latest

minDBZ

private static final float minDBZ
See Also:
Constant Field Values

maxDBZ

private static final float maxDBZ
See Also:
Constant Field Values

deltaDBZ

private static final float deltaDBZ
See Also:
Constant Field Values

lookup

private static final float[] lookup

FACTOR

private static final float FACTOR
See Also:
Constant Field Values
Constructor Detail

VilAlgorithm

public VilAlgorithm()
Method Detail

getInputType

public String getInputType()

setInputType

public void setInputType(String inputType)

isCompositeEnabled

public boolean isCompositeEnabled()

setCompositeEnabled

public void setCompositeEnabled(boolean compositeEnabled)

isRapidUpdateEnabled

public boolean isRapidUpdateEnabled()

setRapidUpdateEnabled

public void setRapidUpdateEnabled(boolean rapidUpdateEnabled)

isVilEnabled

public boolean isVilEnabled()

setVilEnabled

public void setVilEnabled(boolean vilEnabled)

getAzimuthalSpacingDegrees

public float getAzimuthalSpacingDegrees()

setAzimuthalSpacingDegrees

public void setAzimuthalSpacingDegrees(float azimuthalSpacing)

getGateWidthKms

public float getGateWidthKms()

setGateWidthKms

public void setGateWidthKms(float gateWidth)

getNumGates

public int getNumGates()

setNumGates

public void setNumGates(int numGates)

handleRecord

public void handleRecord(IndexRecord rec)
Workhorse method of algorithm; will be called by Index on every new record.


computeVil

private PolarGrid computeVil(PolarGrid composite)

makePowPowLookup

private static float[] makePowPowLookup()

getPowPow

private float getPowPow(float dbz)

heightAboveGround

private float heightAboveGround(float range,
                                float sine_angle)

computeMidbeamSines

private float[] computeMidbeamSines()

getSubTypes

private String[] getSubTypes()

update

private void update(PolarGrid pg)

isVolumeComplete

private boolean isVolumeComplete()

isReadyToCompute

private boolean isReadyToCompute()

computeComposite

private PolarGrid computeComposite()

main

public static void main(String[] args)
                 throws Exception
Throws:
Exception