SeriesReaction¶
-
class
thermosteam.reaction.
SeriesReaction
(reactions)[source]¶ Create a ParallelReaction object from Reaction objects. When called, it returns the change in material due to all reactions in series.
- Parameters
reactions (Iterable[Reaction]) –
-
adiabatic_reaction
(stream)[source]¶ React stream material adiabatically, accounting for the change in enthalpy due to the heat of reaction.
Examples
Note how the stream temperature changed after the reaction due to the heat of reaction:
>>> import thermosteam as tmo >>> import thermosteam.reaction as rxn >>> chemicals = tmo.Chemicals(['CH4', 'CO','O2', 'CO2', 'H2O']) >>> tmo.settings.set_thermo(chemicals) >>> reaction = rxn.SeriesReaction([ ... # Reaction definition Reactant Conversion ... rxn.Reaction('2CH4 + 3O2 -> 2CO + 4H2O', reactant='CH4', X=0.7), ... rxn.Reaction('2CO + O2 -> 2CO2', reactant='CO', X=0.1) ... ]) >>> s1 = tmo.Stream('s1', CH4=5, O2=100, H2O=1000) >>> s2 = tmo.Stream('s2') >>> s2.copy_like(s1) # s1 and s2 are the same >>> s1.show() # Before reaction Stream: s1 phase: 'l', T: 298.15 K, P: 101325 Pa flow (kmol/hr): CH4 5 O2 100 H2O 1e+03
>>> reaction.show() SeriesReaction (by mol): index stoichiometry reactant X[%] [0] CH4 + 1.5 O2 -> CO + 2 H2O CH4 70.00 [1] CO + 0.5 O2 -> CO2 CO 10.00
>>> reaction(s1) >>> s1.show() # After non-adiabatic reaction Stream: s1 phase: 'l', T: 298.15 K, P: 101325 Pa flow (kmol/hr): CH4 1.5 CO 3.15 O2 94.6 CO2 0.35 H2O 1.01e+03
>>> reaction.adiabatic_reaction(s2) >>> s2.show() # After adiabatic reaction Stream: s2 phase: 'l', T: 326.12 K, P: 101325 Pa flow (kmol/hr): CH4 1.5 CO 3.15 O2 94.6 CO2 0.35 H2O 1.01e+03
-
property
X_net
¶ [ChemicalIndexer] Net reaction conversion of reactants.