IDAES / idaes-pse

The IDAES Process Systems Engineering Framework
https://idaes-pse.readthedocs.io/
Other
216 stars 234 forks source link

Implement `report` method for HelmPhaseSeparator unit model #1151

Closed NCJazzMan65 closed 1 year ago

NCJazzMan65 commented 1 year ago

I have a HelmPhaseSeparator unit model in my flowsheet and I keep getting error messages saying this unit model doesn't have the standard port names of "inlet" and "outlet". I get these errors anytime I try to generate a report on this unit model or visualize the flowsheet.

andrewlee94 commented 1 year ago

For reference, the issue here is not that naming of the Ports but rather than the HelmPhaseSeparator model has not implemented a custom report() method to account for the fact that it has multiple outlets. Thus, when report() is called, it is falling back to the standard method defined in UnitModel which assumes only a single outlet, and thus the error about names.

The correct fix is to implement a custom report() method of the HelmPhaseSeparator units model - whilst we are at it we should check that all the other Helmholtz unit operations have standard names or implement custom report methods.

andrewlee94 commented 1 year ago

@dangunter There is probably a second issue here in that the visualizer does not handle the failure of the _get_stream_table_contents method gracefully.