Non-steady state chambers are often employed to measure soil CO2 fluxes. CO2 concentrations (C) in the headspace are sampled at different times (t), and fluxes (f) are calculated from regressions of C versus t based a limited number of observations. Variability in the data can lead to poor fits and unreliable f estimates; groups with too few observations or poor fits are often discarded, resulting in “missing” f values. We solve these problems by fitting linear (steady state) and non-linear (non-steady state, diffusion based) models of C versus t, within in a hierarchical Bayesian framework. Data are from the Prairie Heating and CO2 Enrichment (PHACE) study that manipulated atmospheric CO2, temperature, soil moisture, and vegetation. CO2 was collected from static chambers bi-weekly during five growing seasons, resulting in >12,000 samples and >3100 groups and associated fluxes. We compare f estimates based on non-hierarchical and hierarchical Bayesian (B vs HB) versions of the linear and diffusion-based (L vs D) models, resulting in four different models (BL, BD, HBL, HBD). Three models fit the data exceptionally well (R2 ≥ 0.98), but the BD model was inferior (R2 = 0.87). The non-hierarchical models (BL, BD) produced highly uncertain f estimates f (wide 95% CIs), whereas the hierarchical models (HBL, HBD) produced very precise estimates. Of the hierarchical versions, the linear model (HBL) underestimated f by ~33% relative to the non-steady state model (HBD). The hierarchical models offer improvements upon traditional non-hierarchical approaches to estimating f, and we provide example code for the models.
Dataset1_HBD
Dataset1_HBD contains individual observations of CO2 and time, along with categorical or integer identifiers for day, vegetation type, plot, session (group). DayN = day since 1/1/2006; Datecode = unique integer ID for each measurement date; Min = minutes after chamber closure; Veg = vegetation treatment ID (1 = vegetated; 2 = herbicide); Plot = plot ID; Group = chamber session ID; CorrCO2 = corrected CO2 concentration (ppm); SoilT = soil temperature (celcius) in/near temperature in surface layer.
Read_me_HBD.pdf
Dataset2a_HBD
Dataset2a_HBD contains the integer identifiers for date, vegetation type, and plot associated with each chamber session; dateID, vegID, and PlotID are the same as Datecode, Veg, and Plot in Dataset1_HBD, but each row in Dataset2a_HBD corresponds to the chamber session ID (i.e., Group in Dataset1_HBD).
Read_me_HBD.pdf
Dataset2b_HBD
Dataset2b_HBD contains various constants and sample size information required for the the HBD (hierarchical Bayesian diffusion model). This includes Tmtcode, which is a list of 30 values giving the treatment ID associated with each of the 30 plots (ordered by plot #), where 1 = ct, 2 = cT, 3 = Ct, 4 = CT, 5 = ctd, and 6 = cts, for c = ambient CO2, C = elevated CO2, t = ambient temperature, T= warmed, d = deep irritation, and s = shallow irrigation. This dataset also contains Ctrt, denoting the CO2 treatment level associated with each of the 6 treatments; 1 = ambient CO2 and 2 = elevated CO2.
Read_me_HBD.pdf
Dataset3_HBD
Dataset3_HBD contains soil water content data for every plot and date. SWC_DSM1[r,c] is the soil water content associated with day = r and plot ID = c. Plot ID (columns) correspond to Plot in Dataset1_HBD; r = 1 (row #1) corresponds to 12/21/2006 or day 355 from 1/1/2006, with rows ordered by date (no missing days).
Read_me_HBD.pdf
Dataset4_HBD
Dataset4_HBD contains atmospheric pressure data for every date, with row #1 corresponding to 3/1/2007 (i.e., day 425 since 1/1/2006). Rows are ordered by day (no missing dates).
Read_me_HBD.pdf
ModelCode_HBD_SI
OpenBUGS / JAGS model code that uses Dataset1_HBD.txt, Dataset2a_HBD.txt, Dataset2b_HBD.txt, Dataset3_HBD.txt, and Dataset4_HBD.txt
Read_me_HBD.pdf
Initials_HBDa_SI
Initials (starting) values for first MCMC chain, to be used with the OpenBUGS / JAGS model code (ModelCode_HBD_SI.txt).
Read_me_HBD.pdf
Initials_HBDb_SI
Initials (starting) values for second MCMC chain, to be used with the OpenBUGS / JAGS model code (ModelCode_HBD_SI.txt).
Read_me_HBD.pdf
Initials_HBDc_SI
Initials (starting) values for third MCMC chain, to be used with the OpenBUGS / JAGS model code (ModelCode_HBD_SI.txt).
Read_me_HBD.pdf
ModelScript_HBD_SI
OpenBUGS script file for running the model (ModelCode_HBD_SI.txt) and calling the corresponding datasets (Dataset1_HBD.txt, Dataset2a_HBD.txt,
Dataset2b_HBD.txt, Dataset3_HBD.txt, and Dataset4_HBD.txt) and initial / starting values (Initials_HBDa_S1.txt, Initials_HBDb_S1.txt,
Initials_HBDc_S1.txt).
Read_me_HBD.pdf
Dataset2b_SI
Dataset2b_SI.txt is very similar to Dataset2b_HBD.txt and contains various constants, sample size information, and treatment codes required to run the HBL model. See Dataset2b_HBD.txt description for additional details.
Read_me_HBL.pdf
ModelScript_HBL_SI
ModelScript_HBL_SI.txt is the OpenBUGS script file for running the HBL model (ModelCode_HBL_SI.txt), reading the correct data files, and loading the initial values for three MCMC chains (Initials_a … b_S1.txt). Note that the script calls Dataset1_SI.txt and Dataset2a_SI.txt, which are not provided because they are exactly the same as the data files called Dataset1_HBD.txt and Dataset2a_HBD.txt, respectively. In particular, Dataset1_SI.txt can be created by grabbing for following columns (variables) from Dataset1_HBD.txt: Datecode, Min, Veg, Plot, Group, and CorrCO2. Dataset2a_SI.txt can be created by simply making a copy of Dataset2a_HBD.txt.
Read_me_HBL.pdf
ModelCode_HBL_SI
ModelCode_HBL_SI.txt is the OpenBUGS model code for implementing the HBL model.
Read_me_HBL.pdf
Initials_a_SI
Initials_a_S1.txt contains initial (starting) values for parameters in the HBL model, for chain 1.
Read_me_HBL.pdf
Initials_b_SI
Initials_b_S1.txt contains initial (starting) values for parameters in the HBL model, for chain 2.
Read_me_HBL.pdf
Initials_c_SI
Initials_c_S1.txt contains initial (starting) values for parameters in the HBL model, for chain 3.
Read_me_HBL.pdf