uaa.feral.physical.behaviors
Class RemoteSensingEstimator

java.lang.Object
  extended by uaa.feral.physical.behaviors.EvolveHydrology
      extended by uaa.feral.physical.behaviors.RemoteSensingEstimator
All Implemented Interfaces:
HydroBehavior

public class RemoteSensingEstimator
extends EvolveHydrology

Discharge estimated using remote sensing information. Model developed using Bjerklie et. al. 2003 article in Journal Hydrology 278:17-38 See also Bjerklie 2007 Journal Hydrology 341:144-155 for Velocity calculation

Author:
Mark Altaweel

Constructor Summary
RemoteSensingEstimator()
          Default constructor
RemoteSensingEstimator(java.lang.String string)
          Used for testing the model
 
Method Summary
 double determineDischarge(HydrologicalUnit hu, double velocity)
          Method for determining discharge using determined velocity
 double determineGravity(double a)
          Rate of acceleration due to gravity
 double determineLengthFraction(HydrologicalUnit hu)
          Method used to determine the length fraction of a meander.
 double determineVelocity(HydrologicalUnit hu)
          Method to determine river velocity.
 double factorVelocity(HydrologicalUnit hu, double g, double m)
          Method used to determine velocity using g (gravity pull) and m (meander length fraction).
 HydrologicalSetting getHydrologicalSetting()
           
 java.util.Map<HydrologicalUnit,java.util.Map<java.lang.Integer,java.lang.Double>> getHydroloigcalWidth()
           
 void runModel()
          Method to run the model
 void runModel(int month)
          For testing the run method.
 void setDischargeInfo(java.lang.String river, int month, java.util.Map<java.lang.Integer,double[]> sample)
          Setter for monthly discharge data
 void setHydrologicalSetting(HydrologicalSetting hs)
           
 void setHydroloigcalWidth(java.util.Map<HydrologicalUnit,java.util.Map<java.lang.Integer,java.lang.Double>> hydrologicalWidth)
           
 void setupWidthValue(HydrologicalUnit hu, int month)
          Set up current width value of the river
 
Methods inherited from class uaa.feral.physical.behaviors.EvolveHydrology
CreateHydroModel, getDegradeAmount, getName, getScenarioData, getWaterBodyData, getWaterQuantityByBody, isDegradeQuantity, setData, setDegradeAmount, setDegradeQuantity, setScenarioData, setTickReset, setupModelData
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RemoteSensingEstimator

public RemoteSensingEstimator()
Default constructor


RemoteSensingEstimator

public RemoteSensingEstimator(java.lang.String string)
Used for testing the model

Parameters:
string - a test string
Method Detail

determineGravity

public double determineGravity(double a)
Rate of acceleration due to gravity

Parameters:
a - the latitude location
Returns:
a gravity acceleration value in meters (e.g. 9.822 m/s squared)

determineLengthFraction

public double determineLengthFraction(HydrologicalUnit hu)
Method used to determine the length fraction of a meander.

Parameters:
hu - a hydrological unit
Returns:
the length fraction

factorVelocity

public double factorVelocity(HydrologicalUnit hu,
                             double g,
                             double m)
Method used to determine velocity using g (gravity pull) and m (meander length fraction).

Parameters:
hu - the hydroloigcal unit
g - gravity acceleration
m - meander length fraction
Returns:
a velocity value

setupWidthValue

public void setupWidthValue(HydrologicalUnit hu,
                            int month)
Set up current width value of the river


determineVelocity

public double determineVelocity(HydrologicalUnit hu)
Method to determine river velocity. Note: Method not currently used.

Parameters:
hu - the hydrological unit
Returns:
a double value velocity

determineDischarge

public double determineDischarge(HydrologicalUnit hu,
                                 double velocity)
Method for determining discharge using determined velocity

Parameters:
hu - the hydrological unit modeled
velocity - the velocity of the given hydrological unit
Returns:
a discharge value

setDischargeInfo

public void setDischargeInfo(java.lang.String river,
                             int month,
                             java.util.Map<java.lang.Integer,double[]> sample)
Description copied from interface: HydroBehavior
Setter for monthly discharge data

month - the time data is saved for (e.g. month, day, etc.)
sample - the discharge data associated with the month

runModel

public void runModel()
Description copied from interface: HydroBehavior
Method to run the model

Specified by:
runModel in interface HydroBehavior
Overrides:
runModel in class EvolveHydrology

runModel

public void runModel(int month)
For testing the run method.

Parameters:
month - a month used for testing

getHydrologicalSetting

public HydrologicalSetting getHydrologicalSetting()

setHydrologicalSetting

public void setHydrologicalSetting(HydrologicalSetting hs)

getHydroloigcalWidth

public java.util.Map<HydrologicalUnit,java.util.Map<java.lang.Integer,java.lang.Double>> getHydroloigcalWidth()

setHydroloigcalWidth

public void setHydroloigcalWidth(java.util.Map<HydrologicalUnit,java.util.Map<java.lang.Integer,java.lang.Double>> hydrologicalWidth)