Aggregate transport, residual waste treatment, and displacement impacts to produce a leakage adjustment consistent with AMS-III.G monitoring guidance.

calculate_leakage_emissions_iiig(
  data,
  waste_transported_col = "waste_transported_tonnes",
  transport_distance_col = "transport_distance_km",
  transport_emission_factor_col = "transport_ef_tco2_per_tkm",
  residual_waste_col = "residual_waste_tonnes",
  residual_waste_emission_factor_col = "residual_waste_ef_tco2_per_tonne",
  displaced_electricity_col = "displaced_electricity_mwh",
  displaced_electricity_emission_factor_col = "displaced_electricity_ef_tco2_per_mwh",
  group_cols = NULL,
  output_col = "leakage_emissions_tco2e"
)

Arguments

data

Tibble containing leakage monitoring data.

waste_transported_col

Column storing transported waste in tonnes.

transport_distance_col

Column storing average transport distance in kilometres.

transport_emission_factor_col

Column storing transport emission factors in tCO2 per tonne-kilometre.

residual_waste_col

Optional column storing residual waste in tonnes.

residual_waste_emission_factor_col

Optional column storing residual waste emission factors in tCO2 per tonne.

displaced_electricity_col

Optional column storing displaced electricity in MWh.

displaced_electricity_emission_factor_col

Optional column storing emission factors for displaced electricity in tCO2 per MWh.

group_cols

Optional character vector specifying grouping columns.

output_col

Name of the output column for leakage emissions in tCO2e.

Value

Tibble containing grouped leakage emissions in tCO2e.

Examples

leakage <- tibble::tibble(
  site_id = c("LF1", "LF2"),
  waste_transported_tonnes = c(500, 450),
  transport_distance_km = c(20, 35),
  transport_ef_tco2_per_tkm = c(0.00012, 0.0001)
)
calculate_leakage_emissions_iiig(leakage, group_cols = "site_id")
#> Error in dplyr::mutate(data_tbl, .transport_component = .data[[waste_transported_col]] *     .data[[transport_distance_col]] * .data[[transport_emission_factor_col]],     .residual_component = if (!is.null(residual_waste_col) &&         !is.null(residual_waste_emission_factor_col)) {        .data[[residual_waste_col]] * .data[[residual_waste_emission_factor_col]]    } else {        0    }, .displacement_component = if (!is.null(displaced_electricity_col) &&         !is.null(displaced_electricity_emission_factor_col)) {        .data[[displaced_electricity_col]] * .data[[displaced_electricity_emission_factor_col]]    } else {        0    }, .leakage_component = .transport_component + .residual_component -         .displacement_component):  In argument: `.residual_component = if (...) NULL`.
#> Caused by error in `.data[["residual_waste_tonnes"]]`:
#> ! Column `residual_waste_tonnes` not found in `.data`.