58SUBROUTINE report(nspc, year, lat, lon)
74 INTEGER,
INTENT(in) :: nspc, year, lat, lon
83 pollen(nspc), pol4perc(nspc), &
85 sumbio, sumbasalarea, diversity, &
86 sumnumber, sumseeds, sumantagon, sumingrowth, &
87 BiodivIndex, sumnumbh(0:maxhc), lai(nspc), sumlai, rbio, yr, rlat, rlon, totNPP, num_i
99 do height = 1,
spec(i)%maxhtc
100 rbio = (
stategrid(lat, lon)%sp(i)%numin(height))*(
speccl(i)%bioin(height))
101 sumbio = sumbio + rbio
104 stategrid(lat, lon)%sp(i)%specTotalBiomass = sumbio
105 totnpp = totnpp +
stategrid(lat, lon)%sp(i)%NPP
117 if (((mod(year, rpti) == 0)) .AND. (
stockability(lat, lon) > 0.0))
then
128 byspc:
do i = 1, nspc
135 do height = 1,
spec(i)%maxhtc
136 num_i =
stategrid(lat, lon)%sp(i)%numin(height)
137 num(i) = num(i) + num_i
138 bio(i) = bio(i) + num_i *
speccl(i)%bioin(height)
139 lai(i) = lai(i) + num_i *
speccl(i)%lain(height)/833.0
140 basalarea(i) = basalarea(i) + num_i * ((
speccl(i)%diaIn(height)/2 )**2) *
pi * 10000./833.
141 pollen(i) = pollen(i) + num_i *
speccl(i)%seedprod(height) *
spec(i)%repFac
142 sumnumbh(height) = sumnumbh(height) + num_i
146 sumseeds = sumseeds +
seedrain(lat, lon)%sp(i)%newseeds
147 sumingrowth = sumingrowth +
stategrid(lat, lon)%sp(i)%ingrowth
148 sumantagon = sumantagon +
stategrid(lat, lon)%sp(i)%antagonist
149 sumbio = sumbio + bio(i)
150 sumnumber = sumnumber + num(i)
151 sumpollen = sumpollen + pollen(i)
152 sumlai = sumlai + lai(i)
153 sumbasalarea =sumbasalarea + basalarea(i)
157 if (abs(sumpollen) < 1.
e-20)
then
160 pol4perc = 100.0*pollen/sumpollen
171 diversity = biodivindex(nspc, bio, sumbio)
194 seed_nc%values3D(nspc+1,lon, lat) = sumseeds
201 ingrowth_nc%values3D(nspc+1,lon, lat) = sumingrowth
208 npp_nc%values3D(nspc+1,lon, lat) = totnpp
227 pollen_nc%values3D(i,lon, lat) = pol4perc(i)
229 pollen_nc%values3D(nspc+1,lon, lat) = sumpollen
234 lai_nc%values3D(i,lon, lat) = lai(i)
236 lai_nc%values3D(nspc+1,lon, lat) = sumlai
240 do height = 1, maxhc+1
249 sumnumbh(0) = sumnumbh(0) +
stategrid(lat, lon)%sp(i)%numin(0)
261 diversity = biodivindex(nspc, bio, sumbio)
262 write (
biodivoutfile%unit, 100) lat, tab, lon, tab, year, tab, diversity
268 (bio(i), tab, i=1, nspc), sumbio
272 write (
numberoutfile%unit, 100) lat, tab, lon, tab, year, tab, &
273 (num(i)*10000/
pltsiz, tab, i=1, nspc), sumnumber*10000/
pltsiz
277 write (
seedoutfile%unit, 100) lat, tab, lon, tab, year, tab, &
278 (
stategrid(lat, lon)%sp(i)%sb, tab, i=1, nspc), sumseeds
283 (
stategrid(lat,lon)%sp(i)%ingrowth , tab, i=1,nspc), sumingrowth
287 write (
nppoutfile%unit, 100) lat, tab, lon, tab, year, tab, &
288 (
stategrid(lat, lon)%sp(i)%NPP, tab, i=1, nspc), totnpp
293 (basalarea(i), tab, i=1, nspc), sumbasalarea
297 write (
antaoutfile%unit, 100) lat, tab, lon, tab, year, tab, &
298 (
stategrid(lat, lon)%sp(i)%antagonist, tab, i=1, nspc), sumantagon
302 write (
pollenoutfile%unit, 100) lat, tab, lon, tab, year, tab, &
303 (pol4perc(i),tab, i=1,nspc), sumpollen
307 write (
laioutfile%unit, 100) lat, tab, lon, tab, year, tab, &
308 (lai(i), tab, i=1, nspc), sumlai
314 sumnumbh(0) = sumnumbh(0) +
stategrid(lat, lon)%sp(i)%numin(0)
318 (
stategrid(lat, lon)%sp(i)%numin(height), tab, i=1, nspc), sumnumbh(height)
332100
FORMAT(3(i5,
a1), 60(e13.7,
a1))
333101
FORMAT(4(i5,
a1), 40(e13.7,
a1))