FpcTP with Vapor Liquid Equilibrium at specified unit model #1640
Replies: 1 comment 1 reply
-
|
It appears that the Which unit models do you want to exclude phase equilibrium in? You would also need to pass the option As a workaround, you could have two separate For scaling, the new tools aren't fully rolled out yet, but you can probably get pretty far with the old scaling tools. See this test for how to set default scaling parameters for a property package (if you make one with VLE and one without, you'll need to scale each of them). There are some additional variables, like heater heat duties, that also need scaling factors. Note that the |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I'm stuck with a modeling problem in IDAES. I was using
FpcTPstate variables. This defines the flow of each component for each phase independently, so there is no need for vapor liquid equilibrium (VLE) calculations in the model. Now, I want to do VLE calculations in one specific heater unit model. I can't get that to work withFpcTP.If I add
"phase_equilibrium_form": {("Vap", "Liq"): fugacity},for the H2O component,and
for the whole thermo_props config,
then VLE is calculated at every unit model.
If I leave these three terms out completely, or just leave out
"phases_in_equilibrium": [("Vap", "Liq")],, then VLE is calculated nowhere.I also tried both
has_phase_equilibrium=TrueandFalsefor the heater block, but that didn't seem to change anything. In fact, I couldn't find any difference in them.fs.heater.pprint()between theTrueandFalsesettings.As I couldn't get calculating VLE in one specific model to work, I tried switching from
FpcTPtoFcTP. While this does technically work, it increases the calculation times and also seems to give me convergence problems for most cases. This is probably just because my model is poorly scaled. I tried the autoscaler but that didn't help, and would prefer not to spend days setting up my own scaling routines. Plus, from a first principles perspective, I would prefer to simplify the calculations at the source, which would mean usingFpcTPand not calculation VLE at each unit block.What is the supposed workflow for using
FpcTPwith VLE only at specified unit models? I tried everything that came to mind but I probably missed something. I'll try your suggestion in a minimal example and see if I can get it to work that way, and then get back to you.Beta Was this translation helpful? Give feedback.
All reactions