Dear @yoelcortes,
It seems that thermosteam does currently not or incorrectly account for phase changes during adiabatic reactions. Using electrolysis of steam as an example:
import thermosteam as tmo
tmo.settings.set_thermo(["H2O", "O2", "H2"])
electrolysis = tmo.Reaction(
'H2O -> O2 + H2', # Reaction
correct_atomic_balance=True,
reactant='H2O',
X=0.13,
)
feed = tmo.Stream(H2O=1, T=900+273.15, P=1e5, units='kg/s', phase='g') # H2O is gaseous here
electrolysis.adiabatic_reaction(feed)
feed.show() # H2O should be liquid here
"""
Stream: s2
phase: 'g', T: 79.243 degC, P: 1 bar
flow (kg/s): H2O 0.87
O2 0.115
H2 0.0145
"""
Expected behavior
Water is liquid at 79°C and 1 bar. After the reaction, feed should be a MultiStream with water in the liquid phase and oxygen and hydrogen in the gas phase.
Current behavior
Water remains in gaseous state.
Similar issues
The issue is loosely related to #29 and #62.
Dear @yoelcortes,
It seems that thermosteam does currently not or incorrectly account for phase changes during adiabatic reactions. Using electrolysis of steam as an example:
Expected behavior
Water is liquid at 79°C and 1 bar. After the reaction,
feedshould be aMultiStreamwith water in the liquid phase and oxygen and hydrogen in the gas phase.Current behavior
Water remains in gaseous state.
Similar issues
The issue is loosely related to #29 and #62.