Usage#
Note
If you have not done so, please follow the installation instructions github issues
Set Configuration#
To start, you’ll want to set the proper network configuration for your studies purpose. The default configuration in config/config.default.yaml
using the western
interconnect and 30 nodes is a good place to start!
You can find more information on each configuration setting on the configurations page.
Run workflow#
To run the workflow, cd
into the workflow
directory and run the snakemake
from your terminal with your selection of config file:
snakemake -j1 --configfile config/config.default.yaml
where 1 indicates the number of cores used.
Running on HPC Cluster#
If you are running the workflow on an High-Performance Compute (HPC) cluster, you will first need to update the configuration settings in config.cluster.yaml
. Update the account, partition, email, and chdir fields to match the information of your institutions cluster.
Next, identify the name of the configuration file you would like to run by editing the run_slurm.sh
script. The default value is the --configfile config/config.default.yaml
.
To run, open a terminal within a login node of your cluster and run the script included in the workflow
directory:
bash run_slurm.sh
We have included settings in the Snakemake workflow to dynamically request reasources from an HPC cluster based on the size of the pypsa-usa model you decide to run. To modify these resource selections checkout the memory
and threads
fields in individual snakemake rules.
Examine Results#
Result plots and images are automatically built in the workflow/results
folder. To further analyze the results of a solved network, you can use pypsa to analyze the elec_s_{clusters}_ec_l{l}_{opts}.nc
file in the results/{interconnect}/networks/
folder. (Tutorial juyper notebook is on the way!)
Troubleshooting:#
To force the execution of a portion of the workflow up to a given rule, cd to the workflow
directory and run:
snakemake -j4 -R build_shapes --until build_base_network
where build_shapes
is forced to run, and build_base_network
is the last rule you would like to run.