Summary
In runreeds.py, the GAMS solve calls for the int (intertemporal / all-years) and win (window) timetypes point to pre-restructure paths that no longer exist. The upstream restructure moved the solve .gms files into reeds/core/solve/, but only the seq (sequential) path was updated to match. The int and win calls still build reeds/core/<file> (missing the solve/ subfolder), and the window filename is also misspelled.
This means seq runs work, but int and win runs will fail when GAMS tries to open a non-existent model file.
Details
1. All-years (int) solve — missing solve/ subfolder
runreeds.py:694:
f"gams {Path('reeds','core','3_solve_allyears.gms')} o="
Builds reeds/core/3_solve_allyears.gms. Actual file: reeds/core/solve/3_solve_allyears.gms.
2. Window (win) solve — missing solve/ subfolder AND misspelled filename
runreeds.py:751:
f"gams {Path('reeds','core','3_solvewindow.gms')} o="
Builds reeds/core/3_solvewindow.gms. Actual file: reeds/core/solve/3_solve_window.gms (note the underscore in solve_window).
Why seq is unaffected: the sequential one-year call is assembled by reeds.inputs.solvestring_sequential (reeds/inputs.py), which was updated to the new reeds/core/solve/3_solve_oneyear.gms path during the restructure. The int/win string-building sites in runreeds.py were missed.
Suggested fix
Point both calls at the correct files under reeds/core/solve/:
Path('reeds','core','solve','3_solve_allyears.gms')
Path('reeds','core','solve','3_solve_window.gms')
Repro
Launch any case with timetype=int or timetype=win and inspect the generated call_<case>.{bat,sh} — the gams line references a path that isn't present in the tree, and the run fails at that solve step.
Notes
Likely originated with the upstream restructure on ReEDS-Model/ReEDS; may be worth reporting upstream as well. Filed here first for tracking. Discovered during a documentation-accuracy pass; not fixed in that change to keep it scoped to docs.
Summary
In
runreeds.py, the GAMS solve calls for theint(intertemporal / all-years) andwin(window) timetypes point to pre-restructure paths that no longer exist. The upstream restructure moved the solve.gmsfiles intoreeds/core/solve/, but only theseq(sequential) path was updated to match. Theintandwincalls still buildreeds/core/<file>(missing thesolve/subfolder), and the window filename is also misspelled.This means
seqruns work, butintandwinruns will fail when GAMS tries to open a non-existent model file.Details
1. All-years (
int) solve — missingsolve/subfolderrunreeds.py:694:f"gams {Path('reeds','core','3_solve_allyears.gms')} o="Builds
reeds/core/3_solve_allyears.gms. Actual file:reeds/core/solve/3_solve_allyears.gms.2. Window (
win) solve — missingsolve/subfolder AND misspelled filenamerunreeds.py:751:f"gams {Path('reeds','core','3_solvewindow.gms')} o="Builds
reeds/core/3_solvewindow.gms. Actual file:reeds/core/solve/3_solve_window.gms(note the underscore insolve_window).Why
seqis unaffected: the sequential one-year call is assembled byreeds.inputs.solvestring_sequential(reeds/inputs.py), which was updated to the newreeds/core/solve/3_solve_oneyear.gmspath during the restructure. Theint/winstring-building sites inrunreeds.pywere missed.Suggested fix
Point both calls at the correct files under
reeds/core/solve/:Path('reeds','core','solve','3_solve_allyears.gms')Path('reeds','core','solve','3_solve_window.gms')Repro
Launch any case with
timetype=intortimetype=winand inspect the generatedcall_<case>.{bat,sh}— thegamsline references a path that isn't present in the tree, and the run fails at that solve step.Notes
Likely originated with the upstream restructure on
ReEDS-Model/ReEDS; may be worth reporting upstream as well. Filed here first for tracking. Discovered during a documentation-accuracy pass; not fixed in that change to keep it scoped to docs.