47 currLatStart, currLatEnd, currLonStart, currLonEnd, &
48 nspc, doDispersal, doFFT)
52 INTEGER,
INTENT(in) :: year, &
53 currLatStart, currLatEnd, currLonStart, currLonEnd, &
56 LOGICAL,
INTENT(in) :: doDispersal, doFFT
62 REAL:: ddegs, wtemp, drstr, avnit, brwpr, disturb, germDrought
67 looplatlocadyn:
do lat = currlatstart, currlatend
68 looplonlocadyn:
do lon = currlonstart, currlonend
70 call getenvfactors(year, lat, lon, ddegs, wtemp, drstr, avnit, brwpr, disturb, germdrought )
73 ddegs, wtemp, drstr, avnit, brwpr, disturb, germdrought, dodispersal, dofft)
80 if (dodispersal .and. dofft) &
81 call seedrainbyfft(nspc, year, currlatstart, currlatend, currlonstart, currlonend)
83 call updatenewseeds(nspc, iam, dodispersal, year, currlatstart, currlatend, currlonstart, currlonend)
129SUBROUTINE localdynonetimestep(year, lat, lon, nspc, ddegs, wtemp, drstr, avnit, brwpr, disturb, germDrought, doDispersal, doFFT)
135 INTEGER,
INTENT(in) :: year, nspc, lat, lon
136 LOGICAL,
INTENT(in) :: doDispersal, doFFT
137 REAL,
INTENT(in) :: ddegs, wtemp, drstr, avnit, brwpr, disturb, germDrought
143 if ((lat >
maxlat) .or. (lat < 1) .or. (lon >
maxlon) .or. (lon < 1))
then
144 call logerror(
"Wrong coordinates in SUBROUTINE LocalDynOneTimeStep")
145 write (
logmessage,
"(4A15)")
"lon",
"lat",
"maxlon",
"maxlat"
152 if (ddegs < 0.0 .and.
stockability(lat, lon) > 0.0)
then
161 call storecellstatetothiscell(lat, lon, nspc, ddegs, wtemp, drstr, avnit, brwpr, disturb, germdrought, thiscell)
172 call report(nspc, year, lat, lon)
197 INTEGER,
INTENT(in) :: nspc
201 thiscell%sp(ispec)%numin = 0.0
202 thiscell%sp(ispec)%sb = 0.0
203 thiscell%sp(ispec)%seedBank = 0.0
subroutine calccurrentdepfunctsincell(nspc, ddegs, wtemp, drstr, avnit, brwpr, germdrought)
CalcCurrentDepFunctsInCell
subroutine seedrainbyfft(nspc, year)
SeedRainByFFT
subroutine getenvfactors(year, lat, lon, ddegs, wtemp, drstr, avnit, brwpr, disturb, germdrought)
GetEnvFactors.
subroutine updatenewseeds(nspc, iam, dodispersal, year, lats, late, lons, lone)
UpdateNewSeeds.
subroutine seedsfromoutssimregion(nspc, dodispersal, year, lats, late, lons, lone)
SeedsFromOutsSimRegion.
subroutine seedsdispersedfromthiscell(nspc, lat, lon)
SeedsDispersedFromThisCell: Does the explicit seed dispersal for all species.
subroutine localforestdynamics(nspc, year, dodispersal, thiscell)
LocalForestDynamics.
subroutine reportnetcdf(year, nspc)
ReportNETCDF.
subroutine killalltreesandseeds(nspc, thiscell)
KillAllTreesAndSeeds, local dynamics in one time step and one cell.
subroutine localdynonetimestep(year, lat, lon, nspc, ddegs, wtemp, drstr, avnit, brwpr, disturb, germdrought, dodispersal, dofft)
LocalDynOneTimeStep, local dynamics in one time step and one cell.
subroutine spatialdynonetimestep(year, currlatstart, currlatend, currlonstart, currlonend, nspc, dodispersal, dofft)
SpatialDynOneTimeStep, spatial dynamics in one time step.
subroutine storecellstatetothiscell(lat, lon, nsp, ddegs, wtemp, drstr, avnit, brwpr, disturb, germdrought, thiscell)
StoreCellStateToThisCell.
subroutine storethiscellspecstatestocell(lat, lon, nspc, thiscell)
StoreThisCellSpecStatesToCell.
real, dimension(:, :), allocatable stockability
character(len=:), allocatable e
integer, dimension(10, 3) report
character(len=1024) logmessage
subroutine logerror(msg)
LogError