subroutine subbasin_allocate
allocate(dart(mhyd))
allocate(flu(mb))
allocate(runoff_mm(mb))
allocate(sbp(mb))
allocate(sda(10, mb))
allocate(smq(mb))
allocate(smsq(mb))
allocate(station_ids(mb))
allocate(subbasin_ids(mb))
allocate(subouthyd(mb))
allocate(subp(mb))
allocate(subs(mb))
allocate(susb(30, mb))
allocate(tx(mb))
allocate(slope_length(mb))
allocate(tp5(mb)) ! 10 year frequency of .5h rainfall (mm)
allocate(tp6(mb)) ! 10 year frequency of .6h rainfall (mm)
allocate(tpnyr(mb)) ! number of years of record max .5h rainfall
allocate(subcatch_id(mb))
allocate(stp(mb))
stp = 0.
subcatch_id = 1
tp5 = 0.
tp6 = 0.
tpnyr = 0.
slope_length = 0.
dart = 0.
flu = 0.
precip = 0.
runoff_mm = 0.
sbp = 0.
sda = 0.
smq = 0.
smsq = 0.
subp = 0.
susb = 0.
tx = 0.
susb = 0.
subouthyd = 0
subs = 0
tp5 = tp5_default
tp6 = tp6_default
tpnyr = tpnyr_default
end subroutine subbasin_allocate