CenturyModel14: Implementation of a radiocarbon version of the Century model

CenturyModel14R Documentation

Implementation of a radiocarbon version of the Century model

Description

This function implements a radiocarbon version of the Century model as described in Parton et al. (1987).

Usage

CenturyModel14(
  t,
  ks = 52 * c(STR.surface = 0.076, MET.surface = 0.28, STR.belowgroun = 0.094,
    MET.belowground = 0.35, ACT = 0.14, SLW = 0.0038, PAS = 0.00013),
  C0 = rep(0, 7),
  surfaceIn,
  soilIn,
  F0_Delta14C,
  LN,
  Ls,
  clay = 0.2,
  silt = 0.45,
  xi = 1,
  inputFc,
  lag = 0,
  lambda = -0.0001209681,
  xi_lag = 0,
  solver = deSolve.lsoda.wrapper
)

Arguments

t

A vector containing the points in time where the solution is sought.

ks

A vector of length 7 containing the values of the decomposition rates for the different pools. Units in per year.

C0

A vector of length 7 containing the initial amount of carbon for the 7 pools.

surfaceIn

A scalar or data.frame object specifying the amount of aboveground litter inputs to the soil surface by time (mass per area per year).

soilIn

A scalar or data.frame object specifying the amount of belowground litter inputs to the soil by time (mass per area per year).

F0_Delta14C

A vector of length 7 containing the initial fraction of radiocarbon for the 7 pools in Delta14C format.

LN

A scalar representing the lignin to nitrogen ratio of the plant residue inputs.

Ls

A scalar representing the fraction of structural material that is lignin.

clay

Proportion of clay in mineral soil.

silt

Proportion of silt in mineral soil.

xi

A scalar, data.frame, function or anything that can be converted to a scalar function of time ScalarTimeMap object specifying the external (environmental and/or edaphic) effects on decomposition rates.

inputFc

A Data Frame object containing values of atmospheric Delta14C per time. First column must be time values, second column must be Delta14C values in per mil.

lag

A time shift/delay for the radiocarbon inputs

lambda

Radioactive decay constant. By default lambda=-0.0001209681 y^-1 . This has the side effect that all your time related data are treated as if the time unit was year.

xi_lag

A time shift/delay for the automatically created time dependent function xi(t)

solver

A function that solves the system of ODEs. This can be euler or deSolve.lsoda.wrapper or any other user provided function with the same interface.

Value

A Model Object that can be further queried

References

Parton, W.J, D.S. Schimel, C.V. Cole, and D.S. Ojima. 1987. Analysis of factors controlling soil organic matter levels in Great Plain grasslands. Soil Science Society of America Journal 51: 1173–1179. Sierra, C.A., M. Mueller, S.E. Trumbore. 2012. Models of soil organic matter decomposition: the SoilR package version 1.0. Geoscientific Model Development 5, 1045-1060.

See Also

RothCModel. There are other predefinedModels and also more general functions like Model.

Examples

cal_yrs=seq(1900,2015, by=1/12)
APPT=50 # Assume 50 cm annual precipitation
Pmax=-40+7.7*APPT # Max aboveground production
Rmax=100+7.0*APPT # Max belowground production
abvgIn=52*Pmax/(Pmax+Rmax)
blgIn=52*Rmax/(Pmax+Rmax)
AtmC14=Graven2017[,c("Year.AD", "NH")]

cm=CenturyModel14(t=cal_yrs, surfaceIn = abvgIn, soilIn = blgIn, 
                  F0_Delta14C=rep(0,7), inputFc=AtmC14, LN=0.5, Ls=0.1)
C14t=getF14(cm)

poolNames=c("Surface structural", "Surface metabolic", "Belowground structural",
               "Belowground metabolic", "Active SOM", "Slow SOM", "Passive SOM")
plot(AtmC14, type="l", ylab="Delta 14C (per mil)")
matlines(cal_yrs,C14t, lty=1, col=2:8)
legend("topleft", poolNames, lty=1, col=2:8, bty="n")

SoilR documentation built on Oct. 13, 2023, 5:06 p.m.