Skip to content

GUI "wizard" to export flowsheets for the Flowsheet Processor UI #11

Open
@dangunter

Description

@dangunter

Description

There is a Python API for exporting flowsheets so they can be viewed and run from the Flowsheet Processor UI (aka WaterTAP UI).
It is flexible and useful, but tedious and complex for new and old users alike.
A UI could cover 80% of the needed functionality while allowing users to still extend with Python to meet special needs.
It could, in the future, also incorporate future features for automatic diagram inclusion and addition of plots or tables specific to a flowsheet.

Motivation

It is tedious to create or update application model "wrappers" for the UI right now

Possible Implementation

Basic workflow for the tool.
Note the major features are:

  • Import from existing model (given a build function for the model, run that and load the model 'tree' into the tool)
  • Select and edit variables, etc. to export
  • Create an output file that contains exported variables and "entry points" for user modification, etc.
  • Also load models from that output file, i.e., to update them with the UI as well.
  • Provide some guidance or automatic features to add the exported flowsheets to the list in the UI (not shown in diagram, I just thought of that now!)
flowchart TD
    S([Start])
    M@{shape: doc, label: "model.py"}
    Ld[Load model]
    Lde[Load export]
    Ed[Edit export]
    Sv[Save export]
    Ex@{shape: doc, label: "new
    model_ui.py"}
    Ex2@{shape: doc, label: "previous
    model_ui.py"}
    Nodes@{shape: braces, label: "List of models
    & exports"}
    commentEx@{shape: braces, label: "User can modify
    the exported values
    and still re-edit"}

    S --> Ld
    S --> Lde
    Ld --> Ed
    Lde --> Ed
    Ed --> Sv
    Sv -.-> Ex
    M -.-> Ld
    Sv --> S
    Nodes o-..-o S
    Ex2 -.-> Lde
    commentEx o-.-o Ex
Loading

Additional Context

This issue should move to the eventual repo for the flowsheet processor UI with a shadow issue in the repo for the flowsheet processor API (since both may need to change a bit). But putting in the main WaterTAP repo for now.

Metadata

Metadata

Assignees

Labels

Priority:LowLow Priority Issue or PRenhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions