Skip to content

Decoupled Workflow for Global Sensitivity Analysis Using the Morris Method#1652

Closed
Timon-R wants to merge 2 commits intoPyPSA:masterfrom
Timon-R:GSA
Closed

Decoupled Workflow for Global Sensitivity Analysis Using the Morris Method#1652
Timon-R wants to merge 2 commits intoPyPSA:masterfrom
Timon-R:GSA

Conversation

@Timon-R
Copy link

@Timon-R Timon-R commented Apr 23, 2025

Changes proposed in this Pull Request

This pull request introduces a generic global sensitivity analysis (GSA) workflow for PyPSA-Eur. It includes a template configuration file (GSA.default.yaml), a script to generate scenario files with parameter samples (prepare_GSA.py), and a script to extract results from completed runs (get_GSA_results.py). The workflow supports the Morris method from SALib and allows users to define uncertain parameters and key output metrics via a YAML interface. It is fully decoupled from the Snakemake pipeline, enabling efficient parameter sampling, result extraction, and later analysis.
Usage instructions are included directly in the GSA.default.yaml file to guide users through setup and execution.

See the SALib documentation for more information on the Morris Method and Global Sensitivity Analysis.

Checklist

  • I tested my contribution locally and it works as intended.
  • Code and workflow changes are sufficiently documented.
  • Changed dependencies are added to envs/environment.yaml. - Only dependency is SALib that can be installed in a separate env
  • Changes in configuration options are added in config/config.default.yaml.
  • Changes in configuration options are documented in doc/configtables/*.csv.
  • Sources of newly added data are documented in doc/data_sources.rst.
  • A release note doc/release_notes.rst is added.

Timon-R added 2 commits April 23, 2025 15:00
This adds the GSA workflow using Morris's Method. See 'GSA.default.yaml' for instructions on how to use it.
Correction of notes
@fneum
Copy link
Member

fneum commented Jan 20, 2026

Dear @Timon-R; at the moment we need to consolidate the code base and functionality of PyPSA-Eur a bit. And as a first step we would want a more generic PyPSA feature for sampling / GSA (similar to MGA functionality).

@fneum fneum closed this Jan 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants