cdmAmsIIIg implements the Clean Development Mechanism (CDM) small-scale methodology AMS-III.G Landfill methane recovery. The package follows tidyverse design principles and exposes equation-level helpers, applicability diagnostics, and workflow orchestration utilities to reproduce emission reduction estimates for landfill gas recovery projects.

Installation

# install.packages("devtools")
devtools::install_github("independent-impact/GHG_methodologies/cdmAmsIIIg")

Getting Started

library(cdmAmsIIIg)
library(dplyr)

simulated <- simulate_ams_iiig_dataset(n_sites = 2, n_periods = 3, seed = 2025)

applicability <- check_applicability_landfill_characteristics_iiig(simulated$applicability, group_cols = "site_id") %>%
  left_join(
    check_applicability_gas_management_iiig(simulated$applicability, group_cols = "site_id"),
    by = "site_id"
  ) %>%
  left_join(
    check_applicability_monitoring_framework_iiig(simulated$applicability, group_cols = "site_id"),
    by = "site_id"
  )

reductions <- estimate_emission_reductions_ams_iiig(
  baseline_data = simulated$baseline,
  project_data = simulated$project,
  leakage_data = simulated$leakage,
  group_cols = "site_id",
  baseline_args = list(days_col = "days_in_period"),
  project_args = list(days_col = "days_in_period")
)

applicability
reductions

For a more detailed walk-through see the vignette in vignettes/cdmAmsIIIg-methodology.Rmd.

Applicability Conditions

Projects must satisfy core AMS-III.G requirements before emission reductions can be claimed. Use the package helpers to document each criterion:

Key Equations

cdmAmsIIIg translates the numbered equations from AMS-III.G into composable R functions:

Equation Function Description
(1) calculate_baseline_methane_emissions_iiig() Estimates baseline methane emissions released without gas recovery.
(2) calculate_project_emissions_iiig() Converts project methane capture, destruction, and energy inputs into project emissions.
(3) calculate_leakage_emissions_iiig() Aggregates transport, residual waste treatment, and displacement impacts.
(4) calculate_emission_reductions_iiig() Computes net emission reductions after project and leakage adjustments.

The meta-wrapper estimate_emission_reductions_ams_iiig() chains these helpers together for tidyverse-friendly datasets.

Monitoring and Simulation Utilities