📄 pothole.f
字号:
subroutine pothole
!! ~ ~ ~ PURPOSE ~ ~ ~
!! this subroutine simulates depressional areas that do not drain to the
!! stream network (potholes) and impounded areas such as rice paddies
!! ~ ~ ~ INCOMING VARIABLES ~ ~ ~
!! name |units |definition
!! ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
!! curyr |none |current year of simulation
!! evlai |none |leaf area index at which no evaporation
!! |occurs from the water surface. This
!! |variable is used in ponded HRUs (eg rice)
!! |where evaporation from the water surface
!! |is restricted by the plant canopy cover.
!! |Evaporation from the water surface equals
!! |potential ET when LAI = 0 an decreases
!! |linearly to O when LAI = EVLAI
!! hru_dafr(:) |none |fraction of watershed area in HRU
!! hru_ha(:) |ha |area of HRU in hectares
!! hru_slp(:) |m/m |average slope steepness
!! iida |julian date |day being simulated (current julian date)
!! ihru |none |HRU number
!! ipot(:) |none |number of HRU (in subbasin) that is ponding
!! |water--the HRU that the surface runoff from
!! |current HRU drains into. This variable is
!! |used only for rice paddys or closed
!! |depressional areas
!! imp_trig(:,:,:)|none |release/impound action code:
!! |0 begin impounding water
!! |1 release impounded water
!! irelease(:,:,:)|julian date |date of impound/release operation
!! laiday(:) |none |leaf area index
!! nrelease(:) |none |sequence number of impound/release
!! |operation within the year
!! nro(:) |none |sequence number of year in rotation
!! nyskip |none |number of years to skip output
!! |summarization/printing
!! pet_day |mm H2O |potential evapotranspiration on current day
!! |in HRU
!! pot_fr(:) |km2/km2 |fraction of HRU area that drains into
!! |pothole
!! pot_no3(:) |kg N |amount of nitrate in pothole water body
!! pot_no3l(:) |1/day |nitrate decay rate in impounded area
!! pot_nsed(:) |mg/L |normal sediment concentration in impounded
!! |water (needed only if current HRU is IPOT)
!! pot_sed(:) |metric tons |amount of sediment in pothole water body
!! pot_tile(:) |m3/d |average daily outflow to main channel from
!! |tile flow if drainage tiles are installed
!! |in pothole (needed only if current HRU is
!! |IPOT)
!! pot_vol(:) |m**3 H2O |current volume of water stored in the
!! |depression/impounded area
!! pot_volx(:) |m**3 H2O |maximum volume of water stored in the
!! |depression/impounded area
!! qday |mm H2O |surface runoff loading to main channel from
!! |HRU for day
!! sed_stl(:) |kg/kg |fraction of sediment remaining suspended in
!! |impoundment after settling for one day
!! sedyld(:) |metric tons |daily soil loss caused by water erosion
!! |in HRU
!! sol_k(:,:) |mm/hr |saturated hydraulic conductivity of soil
!! |layer
!! sol_nly(:) |none |number of layers in soil profile
!! sol_por(:,:) |none |total porosity of soil layer expressed as
!! |a fraction of the total volume
!! sol_st(:,:) |mm H2O |amount of water stored in the soil layer
!! |on any given day
!! sol_sumfc(:) |mm H2O |amount of water held in the soil profile
!! |at field capacity
!! sol_sw(:) |mm H2O |amount of water stored in soil profile on
!! |current day
!! sol_z(:,:) |mm |depth to bottom of soil layer
!! spadyev |mm H2O |average annual amount of water removed
!! |from potholes by evaporation in watershed
!! spadyo |mm H2O |average annual amount of water released to
!! |main channel from potholes in watershed
!! spadyrfv |mm H2O |average annual amount of precipitation on
!! |potholes in watershed
!! spadysp |mm H2O |average annual amount of water removed
!! |from potholes by seepage in watershed
!! subp(:) |mm H2O |precipitation for the day in HRU
!! surqno3(:) |kg N/ha |amount of NO3-N in surface runoff in HRU
!! |for the day
!! ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
!! ~ ~ ~ OUTGOING VARIABLES ~ ~ ~
!! name |units |definition
!! ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
!! pot_no3(:) |kg N |amount of nitrate in pothole water body
!! pot_sed(:) |metric tons |amount of sediment in pothole water body
!! pot_vol(:) |m**3 H2O |current volume of water stored in the
!! |depression/impounded area
!! potevmm |mm H2O |volume of water evaporated from pothole
!! |expressed as depth over HRU
!! potflwi(:) |m^3 H2O |water entering pothole on day
!! potflwo |mm H2O |discharge from pothole expressed as depth
!! |over HRU
!! potpcpmm |mm H2O |precipitation falling on pothole water body
!! |expressed as depth over HRU
!! potsa(:) |ha |surface area of impounded water body
!! potsedi(:) |metric tons |sediment entering pothole on day
!! potsedo |metric tons |sediment leaving pothole on day
!! potsepmm |mm H2O |seepage from pothole expressed as depth over
!! |HRU
!! qday |mm H2O |surface runoff loading to main channel from
!! |HRU for day
!! sedyld(:) |metric tons |daily soil loss caused by water erosion
!! |in HRU
!! sol_st(:,:) |mm H2O |amount of water stored in the soil layer
!! |on any given day
!! sol_sw(:) |mm H2O |amount of water stored in soil profile on
!! |current day
!! spadyev |mm H2O |average annual amount of water removed
!! |from potholes by evaporation in watershed
!! spadyo |mm H2O |average annual amount of water released to
!! |main channel from potholes in watershed
!! spadyrfv |mm H2O |average annual amount of precipitation on
!! |potholes in watershed
!! spadysp |mm H2O |average annual amount of water removed
!! |from potholes by seepage in watershed
!! surqno3(:) |kg N/ha |amount of NO3-N in surface runoff in HRU
!! |for the day
!! ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
!! ~ ~ ~ LOCAL DEFINITIONS ~ ~ ~
!! name |units |definition
!! ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
!! cnv |none |conversion factor (mm/ha => m^3)
!! dg |mm |depth of soil layer
!! excess |mm H2O |amount of water moving into soil that exceeds
!! |storage of layer
!! j |none |HRU number
!! ly |none |counter (soil layers)
!! no3loss |kg N |amount of nitrate lost from water body
!! pi |none |pi
!! potev |m^3 H2O |evaporation from impouned water body
!! potmm |mm H2O |volume of water in pothole expressed as depth
!! |over HRU
!! potpcp |m^3 H2O |precipitation falling on water body
!! potsep |m^3 H2O |seepage from impounded water body
!! sedloss |metric tons |amount of sediment lost from water body
!! sedsetl |metric tons |amount of sediment settling out of water
!! |during day
!! spillo |m^3 H2O |amount of water released to main channel from
!! |impounded water body due to spill-over
!! stmax |mm H2O |maximum water storage in soil layer
!! sumo |m^3 H2O |sum of all releases from water body on
!! |current day
!! tileo |m^3 H2O |amount of water released to the main channel
!! |from the water body by drainage tiles
!! yy |none |fraction of maximum seepage allowed to occur
!! ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
!! ~ ~ ~ SUBROUTINES/FUNCTIONS CALLED ~ ~ ~
!! Intrinsic: Abs, Min, Max
!! ~ ~ ~ ~ ~ ~ END SPECIFICATIONS ~ ~ ~ ~ ~ ~
use parm
real, parameter :: pi = 3.1416
integer :: j, ly
real :: potsep, sumo, potev, cnv, potpcp, spillo
real :: sedloss, no3loss, yy, dg, excess, stmax, sedsetl
real :: potmm
j = 0
j = ihru
!! initialize variables
potev = 0.
potpcp = 0.
potsep = 0.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -