GenXProject / GenX.jl

GenX: a configurable power system capacity expansion model for studying low-carbon energy futures. More details at : https://genx.mit.edu
https://genxproject.github.io/GenX.jl/
GNU General Public License v2.0
256 stars 105 forks source link

658 save resource buildout every few optimizer iterations and allow optimizer warm start #704

Closed mmutic closed 6 days ago

mmutic commented 2 weeks ago

Description

This PR adds in an additional step in run_ddp where the outputs are saved after each iteration of a multistage run. It does so through the use of a new key in multistage settings called WriteIntermittentOutputs, and uses the function write_outputs().

This PR changes the files dual_dynamic_programming.jl (run_ddp()) and case_runner.jl (run_genx_multistage). It merges into the branch configure_multistage_settings because it needs the default key for WriteIntermittentOutputs in configure_multistage_settings.

What type of PR is this? (check all applicable)

Issue #658

Checklist

How this can be tested

This can be tested by adding a key in multistage_settings.yml in example 6 to WriteIntermittentOutputs: 1, then running example 6 as usual and observing that all outputs are occurring as expected after each iteration of the run. Testing was done to ensure that everything is working correctly.

Post-approval checklist for GenX core developers

After the PR is approved