FESDIAbudget {FESDIA} | R Documentation |
FESDIAbudgetO2, FESDIAbudgetC, FESDIAbudgetN, FESDIAbudgetP
estimate mass
budgets from FESDIA model solutions.
FESDIAbudgetO2(out, ..., which = c("All", "Rates", "Fluxes", "Losses", "Fluxmat")) FESDIAbudgetC(out, ..., which = c("All", "Rates", "Fluxes", "Losses", "Fluxmat")) FESDIAbudgetN(out, ..., which = c("All", "Rates", "Fluxes", "Losses", "Fluxmat")) FESDIAbudgetP(out, ..., which = c("All", "Rates", "Fluxes", "Losses", "Fluxmat")) FESDIAbudgetS(out, ..., which = c("All", "Rates", "Fluxes", "Losses", "Fluxmat")) FESDIAbudgetFe(out, ..., which = c("All", "Rates", "Fluxes", "Losses", "Fluxmat"))
out |
an output object returned by FESDIAsolve or FESDIAdyna. |
which |
if not |
... |
unused. |
FESDIAbudgetx
returns the element budget (C, N, P, S, Fe, O2) of the solution as a list
, with the following items.
Fluxes
, the boundary fluxes at the surface and bottom of the sediment, the perturbation fluxes (only when the model was solved with FESDIAperturb) and the net input. Positive fluxes are directed into the sediment for the surface, and out of the sediment at the bottom. Negative perturbation fluxes are directed out of the sediment. For dynamic runs, fluxes are averaged over the simulation period.
Rates
, the integrated process rates, in nmol/cm2/d
dC
, the rate of change of integrated values of state vairables, in nmol/cm2/d, defined as ([concentration at the end] - [concentration at beginning])/[length of simulation]
Losses
, the total amount lost from the system (burial, and removal e.g. N2 production for N-budget)
Delta
, the difference between total fluxes in and fluxes out, i.e. the deviation from steady-state.
Fluxmat
, the flux matrix (rows: from, columns:to). For N, C, Fe, S and P budget the column sums - row sums is equal to the rate of change. For the O2 budget, this only applies to O2.
If more than one FESDIA object is passed to these functions, a matrix is returned, one column for each object.
For dynamic runs, the budget is taken over the mean of the run; Delta is then the integrated mean rate of change; for steady-state runs, Delta should be very small.
Karline Soetaert
Soetaert K, PMJ Herman and JJ Middelburg, 1996a. A model of early diagenetic processes from the shelf to abyssal depths. Geochimica Cosmochimica Acta, 60(6):1019-1040.
Soetaert K, PMJ Herman and JJ Middelburg, 1996b. Dynamic response of deep-sea sediments to seasonal variation: a model. Limnol. Oceanogr. 41(8): 1651-1668.
# some runs to work with defsteady <- FESDIAsolve() defdyn <- FESDIAdyna() # altered steady-state run out <- FESDIAsolve(parms = list(Cflux = 1000)) cbind(default = FESDIAparms(), altered = FESDIAparms(out)) # budgets B1 <- FESDIAbudgetO2(out) B1$Fluxmat colSums(B1$Fluxmat) - rowSums(B1$Fluxmat) # Small only for O2 FESDIAbudgetO2(out, defsteady)$Rates B2 <- FESDIAbudgetC(out) colSums(B2$Fluxmat) - rowSums(B2$Fluxmat) # Small for all states FESDIAbudgetC(out,defsteady) FESDIAbudgetC(out,defsteady,defdyn, which = "Rates")