MIDAS

Two interactive front-ends exist, covering the same fields and the same underlying model: GUI/MIDAS.m, a MATLAB App Designer app, and octave/MIDAS_GUI.m, a plain-uicontrol GNU Octave rebuild (Octave cannot open .mlapp/App Designer files at all, so it isn’t a port of the same file - see Octave GUI below for what differs).

MATLAB GUI

MATLAB App Designer GUI: sidebar tabs (Physics, Time & P-T Path, ...), parameter fields with tooltips, Run/Reset/Close Figs, example/preset loading, Status log, and Export Data/Figures panels.

Launching it

cd GUI
MIDAS

Layout

Closing it

Just close the window (or close all at the MATLAB command line) - nothing is written to disk on exit beyond what Run/Export already saved, so there’s no save-before-quit step.

Notes

Octave GUI

octave/MIDAS_GUI.m covers the same ~60 fields, six examples, Run/Reset, Save/Load Preset, Export Data/Figures, and Manage Results as the MATLAB GUI above - built from scratch with Octave’s plain figure/uicontrol (Octave has no App Designer, uigridlayout, or uitabgroup to port against), so the look is plainer but the functionality is the same.

GNU Octave GUI: sidebar tabs (Physics, Time & P-T Path, ...), parameter fields, Run/Reset/Close Figs, example and preset loading, Status log, and Export Data / Export Figures / Manage Results panels.

Launching it

cd octave
octave
>> MIDAS_GUI

Layout

Closing it

Close the window normally. One caveat worth knowing about first: on this Octave install (fltk graphics toolkit - see octave/README.md for why qt isn’t available here), closing a window with this many nested panels/controls has been observed to crash the Octave process during cleanup in a non-interactive batch test. Whether this also happens when closing the window yourself in a normal interactive session hasn’t been confirmed yet - if it does, no work is lost (nothing is written to disk on close beyond what Run/Export already saved), but please report it either way so this note can be corrected.

Performance

If you have a MATLAB license, prefer the MATLAB GUI for long or interactive runs - the Octave GUI’s live-updating plot is noticeably slower, for two compounding reasons:

Together, every recorded timestep of a run redraws the whole 8-panel figure from nothing, which adds up over a run with many recorded steps. Until the shim is optimized to reuse axes instead of rebuilding them, raising recordDT (fewer redraws over the same run) is the cheapest workaround available without code changes.

Differences from the MATLAB GUI