API Reference
Here is the complete public API for PDEStudio.jl.
PDEStudio.force_simulation — Method
force_simulation()Manually pushes an asynchronous trigger to the :Simulation observable, forcing the backend to re-evaluate the active SimulationConfig.
PDEStudio.launch_plotter — Method
launch_plotter()Initializes the main PDEStudio interactive interface. It constructs the foundational Makie Figure, partitions the layout into a control panel and a plot area, wires up the core reactive listeners, and displays the window. Returns the active Makie.Figure object.
PDEStudio.reset_manager! — Method
reset_manager!()Returns the PlotManager to its pristine state: detaches every listener, drops the UI dictionaries, widgets, caches, labels and the bound configuration, rebuilds the trigger tree and reloads the default styles and the presets found on disk. The mode, the allowed dimensions, the number of parameter sliders and the window handle are kept (see reset_plotter! for the window).
PDEStudio.reset_plotter! — Method
reset_plotter!()Safely resets the Makie rendering engine. It systematically closes the active display screen, clears the Figure cache, and explicitly detaches all reactive ObserverFunction listeners to prevent memory leaks and ghost updates during hot reloads.
PDEStudio.reset_sim_config! — Method
reset_sim_config!()Restores the simulation configuration that was last bound with set_sim_config! (or loaded from a project CSV), discarding simulation presets and editor changes applied since. Flags the simulation for a re-run.
PDEStudio.save_plot_preset — Method
save_plot_preset(name; description = "")Saves the current look of the studio—layout, axes and slider positions, camera, labels, exploration options and all UI styles—as the visual preset <save path>/Presets/<name>.csv. Simulation parameters are not included, so the preset can be applied to any simulation with set_plot_preset!. Returns true on success.
PDEStudio.save_sim_preset — Method
save_sim_preset(name; description = "")Saves the simulation category of the bound configuration—shared parameters, the active methods and their parameters, the parameter sweep and the reference / post-processing functions—as the simulation preset <save path>/Presets/Simulation/<name>.csv. Nothing visual is stored. Returns true on success.
Apply it later with set_sim_preset!.
PDEStudio.set_allowed_dims! — Method
set_allowed_dims!(dims::Tuple{Vararg{Symbol}})Defines the foundational mathematical dimensions the studio expects to render (e.g., (:x, :y, :t)). Adapts the base UI slider banks accordingly and completely resets the plotter to apply the new physical boundaries.
PDEStudio.set_max_params! — Method
set_max_params!(n::Int)Globally configures the maximum number of custom VariedDict sweep parameters the UI will allocate sliders for. Triggers a complete UI reset.
PDEStudio.set_mode! — Method
set_mode!(mode::Symbol)Switches the fundamental operation mode of the UI (e.g., :eulerian or :lagrangian). This alters which primitive engines are loaded and resets the UI state. The bound SimulationConfig is kept (call launch_plotter() again and press Run Simulation).
PDEStudio.set_plot_preset! — Method
set_plot_preset!(name)The public entry point for loading visual themes. It checks if the requested name exists as a hardcoded apply_plot_preset! dispatch. If not, it loads the custom <save path>/Presets/<name>.csv template. Only the visual part of a file is applied (scene, UI styles, labels, exploration); simulation parameters and bundled source files are ignored, so a visual preset never changes the physics.
PDEStudio.set_plot_preset! — Method
set_plot_preset!()A global reset routine. It purges the actively mutated manager.ui dictionary, forces a hard reload of all base layout options and exploration variables, and triggers a :Layout rebuild to return the studio to a pristine default state.
PDEStudio.set_resolution! — Method
set_resolution!(dim::Symbol, val::Int; is_ref::Bool=false)Dynamically sets the internal interpolation and rendering resolution for a specific spatial or temporal dimension. Can target either the numerical baseline grid or the highly-resolved analytical reference grid.
PDEStudio.set_sim_config! — Method
set_sim_config!(csv_name::AbstractString)A convenience wrapper that locates a CSV (a path, or a file name searched for with find_config_csv) and applies it via load_and_apply_csv!. Returns true if the file changes structural UI limits (the change is staged until Run Simulation), false otherwise, and nothing if no file was found.
PDEStudio.set_sim_config! — Method
set_sim_config!(config::SimulationConfig; snapshot = true)The primary injection point for connecting a PDEStudioCore physics configuration to the PDEStudio interactive UI.
This function unpacks the SimulationConfig, maps the dynamic parameter sweeps to the available UI sliders, builds the backend-to-frontend symbolic translation dictionaries, and flags the simulation for a (re)run. With snapshot = true (the default) a copy of config is kept as the baseline that Reset Simulation (see reset_sim_config!) returns to.
PDEStudio.set_sim_preset! — Method
set_sim_preset!(name; mode = nothing)Applies the simulation preset <save path>/Presets/Simulation/<name>.csv to the studio and flags the simulation for a re-run. Two modes exist:
:replace: the preset defines the whole simulation (shared parameters, methods, active methods, sweep, functions). Presets saved withsave_sim_preset(or the Save Sim Preset button) use this mode.:patch: only the entries in the file change; everything else of the bound configuration is kept. This is the default for hand-written files without aMetadata, Preset, moderow, e.g. a two-line "high resolution" preset.
mode overrides the mode stored in the file. The source files of the bound configuration are always kept. Returns the new SimulationConfig (or nothing if the preset was not found).