Sensitivity Analysis Workflow
Warning
This proof of concept is untested and subject to change. Interpret results as illustrative.
Overview
This workflow performs sensitivity analysis and uncertainty partitioning for the SIPNET ecosystem model to identify the primary drivers of forecast uncertainty for California croplands.
Key components:
- Local Sensitivity Analysis: One-at-a-time (OAT) parameter perturbations
- Global Sensitivity Analysis: Variance-based Sobol indices
- Variance Decomposition: Attribution of uncertainty to parameters, drivers, and initial conditions
Configuration: see 000-config.yml for paths, variables, and workflow settings.
Quick Start
module load R/4.4.0 gdal proj geos sqlite udunits quarto
export CCMMF_DIR=/projectnb/dietzelab/ccmmf
git clone https://github.com/ccmmf/uncertainty.git
cd uncertainty
R -e 'renv::restore()'See full details in the Technical Documentation.
Running the Workflow
# 1. Setup design points
Rscript scripts/001_setup_design_points.R
Rscript scripts/002_build_xml.R
# 2. Local sensitivity
Rscript scripts/011_run_local_sensitivity.R
Rscript scripts/012_aggregate_sensitivity.R
# 3. Global sensitivity
Rscript scripts/021_generate_sobol_design.R
Rscript scripts/023_run_global_sensitivity.R
Rscript scripts/024_compute_sobol_indices.R
# 4. Variance decomposition
Rscript scripts/031_partition_variance.R