GCIMS Experiment 1 Workflow
Fill in.
Processing of the climate data and Xanthos simulations were conducted on a PNNL High Performance Computing (HPC) cluster named Deception (deception.pnl.gov) with an initial configuration consists of 96 compute nodes boasting a total of 6,144 CPU cores powered by dual AMD EPYC 7502 CPUs. The CPUs run at 2.5 GHz with the ability to boost to 3.35 GHz.
The SLURM scripts are written to execute from a BASH shell.
We used a miniconda distribution of Python version 3.9.5. This can be loaded on Deception via:
module load gcc/11.2.0
module load python/miniconda3.9
source /share/apps/python/miniconda3.9/etc/profile.d/conda.sh
We also created a virtual environment which that also includes the Xanthos install and other needed packages. This can be activated by:
conda activate xanthosenv
Describe and cite source data chosen and give the location of where this is on Deception.
Xanthos was calibrated to GSWP3 using the following steps.
- fill in
Xanthos configuration outputs were written here: /rcfs/projects/gcims/models/xanthos/calibration_gswp3_watergap2/data/outputs/gswp3_20220717
The parameter files for each individual basin were then consolidated into the input file that Xanthos expects by running:
sbatch consolidate_calibrated_params.sl
This command triggers the scripts/consolidate_calibrated_params.py
Python file.
Describe steps for the QC of the climate data.
Convert the historical baseline data into the input format that Xanthos expects. This data will be stitched to the future data during the future simulations. Historical data can be created by running:
sbatch generate_historical_climate.sl
This command triggers the scripts/generate_historical_climate.py
Python file.
Generate configuration files for each scenario, model, realization combination. This uses the data/template.ini
file found in this repository.
Configuration files are generated by executing the following on Deception from here /rcfs/projects/gcims/projects/mit_climate/code/gcims_exp1_workflow/scripts
:
sbatch generate_config_files.sl
This command triggers the scripts/generate_config_files.py
Python file.
This step does the following for each scenario, model, realization:
- converts the climate data to the format that Xanthos expects and stitches the historical period to the start
- runs xanthos and generates outputs for:
- potential evapotranspiration (PET) in units km3/month
- actual evapotranspiration (AET) in units km3/month
- runoff (Q) in units km3/month
- soil moisture in units km3/month
- average channel flow in units m3/second
- basin aggregated runoff in units km3/month
- country aggregated runoff in units km3/month
- GCAM region aggregated runoff in units km3/month
- drought severity, intensity, and duration
- deletes the converted climate data
To run the simulation spreading out per scenario, model for each node and parallelizing each realization on each node, execute the following:
sbatch --array=0-71 simulate_future_climate.sl
This command triggers the scripts/simulate_future_climate.py
Python file.
Convert the Xanthos output files to the XML structure needed for GCAM
Run GCAM
Describe steps for the QC of the Xanthos and GCAM output data.
Software | Version | Citation |
---|---|---|
Xanthos | 2.4.1 | Vernon, C.R., Li, X., Hejazi, M.I., Braun, C., Link, R. (2021). JGCRI/xanthos: v2.4.1 Xanthos (v2.4.1). Zenodo. https://doi.org/10.5281/zenodo.5177210 |