52SUBROUTINE mort(isp, heightcl, lightcl, srvinhl, numb, disturbanceMort, thiscell)
60 INTEGER,
INTENT(in) :: isp, &
63 REAL,
INTENT(in) :: numb
64 REAL,
INTENT(in) :: disturbanceMort
65 REAL,
INTENT(out) :: srvinhl
78 gfc =
speccl(isp)%growthVitality(heightcl, lightcl)/0.0003
81 efc =
speccl(isp)%envVitality(heightcl, lightcl)/0.1
91 cmplow =
speccl(isp)%envVitality(heightcl, lightcl - 1)/0.1
93 cmplow =
speccl(isp)%growthVitality(heightcl, lightcl - 1)/0.0003
100 if (cmplow < 1.0)
then
101 vmort = (1.0 - cmplow)/(cmp - cmplow)
108 if (heightcl > 0)
then
109 tmort = min(
spec(isp)%cmort + disturbancemort + vmort*0.184, 1.0)
111 tmort = min(
spec(isp)%cmort + disturbancemort + vmort, 1.0)
115 srvinhl = (1.0 - tmort)*numb
117 thiscell%sp(isp)%numin(heightcl) = thiscell%sp(isp)%numin(heightcl) - (tmort*numb)
118 if (thiscell%sp(isp)%numin(heightcl) < 0)
then
119 thiscell%sp(isp)%numin(heightcl) = 0.0
subroutine mort(isp, heightcl, lightcl, srvinhl, numb, disturbancemort, thiscell)
Mort.