Fortran Code for the generation of the Productivity Functions
High Resolution Biosphere Model
function flux_ab(pco2a)
c -------------------------------------------------------------------
c - Productivity Function for HRBM/CTBM -
c - -
c - input : -
c - pco2a [dp] : atmospheric pco2 [ppm] -
c - return - value -
c - flux_ab [dp] : Net Primary Productivity [Gt C yr^-1] -
c -------------------------------------------------------------------
implicit none
double precision flux_ab,pco2a
flux_ab =
$ (- 3.936199d+16
$ + 6.499772d+14*pco2a
$ - 2.142978d+12*pco2a**2.0d0
$ + 4.312995d+09*pco2a**3.0d0
$ - 5.542613d+06*pco2a**4.0d0
$ + 4.251490d+03*pco2a**5.0d0
$ - 1.247683d+00*pco2a**6.0d0
$ - 8.983608d-04*pco2a**7.0d0
$ + 1.093244d-06*pco2a**8.0d0
$ - 4.520093d-10*pco2a**9.0d0
$ + 7.076525d-14*pco2a**10.0d0) / 1.0d+15
return
end
Frankfurt Biosphere Model
function flux_ab(pco2a)
c -------------------------------------------------------------------
c - Productivity Function for FBM -
c - -
c - input : -
c - pco2a [dp] : atmospheric pco2 [ppm] -
c - return - value -
c - flux_ab [dp] : Net Primary Productivity [Gt C yr^-1] -
c -------------------------------------------------------------------
implicit none
double precision flux_ab,pco2a
flux_ab =
$ (0.546877302D+04*pco2a**3 -
$ 0.337974427D+06*pco2a**2 -
$ 0.152891489D+09*pco2a -
$ 0.750006896D+10) /
$ (0.237313645D+02*pco2a**3 +
$ 0.151601409D+04*pco2a**2 +
$ 0.232817871D+06*pco2a -
$ 0.358729498D+09)
return
end
4Box Biosphere
function flux_ab(pco2a)
c -------------------------------------------------------------------
c - Productivity Function for the 4Box Biosphere -
c - -
c - input : -
c - pco2a [dp] : atmospheric pco2 [ppm] -
c - return - value -
c - flux_ab [dp] : Net Primary Productivity [Gt C yr^-1] -
c -------------------------------------------------------------------
implicit none
double precision flux_ab,pco2a,npp0,pco2a0,beta
parameter (npp0 = 60.0d0)
parameter (beta = 0.278d0)
parameter (pco2a0 = 278.0d0)
flux_ab = npp0*beta*log(pco2a/pco2a0)
return
end
Box Substitute of HRBM/CTBM
function flux_ab(pco2a,Temp)
c -------------------------------------------------------------------
c - Productivity Function for the 4Box Biosphere -
c - -
c - input : -
c - pco2a [dp] : atmospheric pco2 [ppm] -
c - Temp [dp] : Deviation from equilibrium Temperature -
c - (deg C) -
c - return - value -
c - flux_ab [dp] : Net Primary Productivity [Gt C yr^-1] -
c -------------------------------------------------------------------
implicit none
double precision flux_ab,pco2a,npp0,pco2a0,beta,Temp
parameter (npp0 = 60.0d0)
parameter (beta = 0.278d0)
parameter (pco2a0 = 278.0d0)
flux_ab =
$ (- 3.936199e+16
$ + 6.499772e+14*pco2a
$ - 2.142978e+12*pco2a**2.0d0
$ + 4.312995e+09*pco2a**3.0d0
$ - 5.542613e+06*pco2a**4.0d0
$ + 4.251490e+03*pco2a**5.0d0
$ - 1.247683e+00*pco2a**6.0d0
$ - 8.983608e-04*pco2a**7.0d0
$ + 1.093244e-06*pco2a**8.0d0
$ - 4.520093e-10*pco2a**9.0d0
$ + 7.076525e-14*pco2a**10.0d0) / 1.0d+15
flux_ab = flux_ab *
$ 0.99922770E+00 +
$ 0.11780208E+00*tanh(Temp/0.509312421E+02) +
$ 0.24305130E-02*tanh(Temp/0.885326739E+01)
return
end