vprm_calc_R: calculate VPRM ecosystem respiration

View source: R/vprm.R

vprm_calc_RR Documentation

calculate VPRM ecosystem respiration

Description

calculates VPRM ecosystem respiration (R) according to either the VPRM formulation of Mahadevan et al. (2007) eqn 10 or the urbanVPRM formulation of Hardiman et al (2017) SI eqn 7 and SI eqn 8.

Usage

vprm_calc_R(
  driver_data,
  alpha_param = NULL,
  beta_param = NULL,
  model_form = "Mahadevan07"
)

Arguments

driver_data

May be a VPRM_driver_data object or a data frame. If a data frame, driver_data must contain the variables Tscale, Pscale, Wscale, EVI, PAR, and Tresp. The variables alpha and beta are optional (see 'details').

alpha_param

numeric, optional; VPRM parameter (slope of respiration with respect to temperature)

beta_param

numeric, optional; VPRM parameter (basal respiration rate)

model_form

string, optional; form of VPRM model to use. Options are "Mahadevan07" (default) to use the VPRM formulation of Mahadevan et al. (2007), or "urban" to use the urbanVPRM formulation of Hardiman et al. (2017). If set to "urban", the driver data must include variables ISA proportion (impervious surface area, 0.0 to 1.0) and refEVI (reference EVI).

Details

Arguments alpha and beta may be omitted from the function call. In this case they must be present as variables in data frame driver_data. If either of these parameters are present in driver_data *and* specified as parameters in the function call the function parameter values will be used and the values in driver_data will be ignored. If specifed as function parameters alpha and beta may be single values or numeric vectors the same length as the number of observations in driver_data.

The Tresp variable in driver_data is the temperature used to calculate respiration. Tresp should be max(Tair, Tlow), where Tair is the air temperature (deg C) and Tlow is the minimum air temperature (deg C) for respiration. This is explained more fully in Mahadevan et al (2008) section 2.2.

The urbanVPRM subdivides respiration into heterotrophic and autotrophic and introduces a scaling factor based on a nearby pixel of similar land cover with minimal impervious surface area. This scaling factor is derived from a "reference EVI" term, described in more detail in the supplemental material of Hardiman et al. (2017).

Value

vector of same length as number of rows in driver_data containin VPRM ecosystem respiration [umol m-2 s-1]

Author(s)

Timothy W. Hilton

References

Hilton, T. W., Davis, K. J., Keller, K., and Urban, N. M.: Improving North American terrestrial CO2 flux diagnosis using spatial structure in land surface model residuals, Biogeosciences, 10, 4607-4625, doi:10.5194/bg-10-4607-2013, 2013.

Mahadevan, P., Wofsy, S., Matross, D., Xiao, X., Dunn, A., Lin, J., Gerbig, C., Munger, J., Chow, V., and Gottlieb, E.: A satellite-based biosphere parameterization for net ecosystem CO2 exchange: Vegetation Photosynthesis and Respiration Model (VPRM), Global Biogeochem. Cy., 22, GB2005, doi:10.1029/2006GB002735, 2008.

Hardiman, B. S., Wang, J. A., Hutyra, L. R., Gately, C. K., Getson, J. M., & Friedl, M. A. (2017). Accounting for urban biogenic fluxes in regional carbon budgets. Science of The Total Environment, 592, 366–372. https://doi.org/10.1016/j.scitotenv.2017.03.028

Examples

data(Park_Falls)
pfa_dd <- VPRM_driver_data(name_long="Park Falls",
                           name_short = "US-PFa",
                           lat=45.9459,
                           lon=-90.2723,
                           PFT='MF',
                           tower_date=PFa_tower_obs[['date']],
                           NEE_obs=PFa_tower_obs[['FC']],
                           T=PFa_tower_obs[['TA']],
                           PAR=PFa_tower_obs[['PAR']],
                           date_nir = PFa_refl[['date']],
                           rho_nir=PFa_refl[['nir']],
                           date_swir = PFa_refl[['date']],
                           rho_swir = PFa_refl[['swir']],
                           date_EVI = PFa_evi[['date']],
                           EVI=PFa_evi[['evi']],
                           phen=NA)

data(VPRM_parameters)
attach(all_all_VPRM_parameters)
ER <- vprm_calc_R(pfa_dd, alpha=alpha, beta=beta)

Timothy-W-Hilton/VPRMLandSfcModel documentation built on July 29, 2023, 8:43 p.m.