Fluidized bed reactor model in BioSTEAM #204
Replies: 2 comments 3 replies
-
Hello, @yoelcortes I totally realize you must be busy with your research work, however it is just a follow up to my request. Thanks a lot. |
Beta Was this translation helpful? Give feedback.
-
We have not modeled a fluidized bed reactor in biosteam (yet), so I will not be able to help you too much on the modeling side, but there are some design/costing features in biosteam that can be useful. Below is a "skeleton" of how a preliminary fluidized bed reactor might be (coarsely) implemented. You'll need to add the code for the functions with "pass" with however you are designing the reactor: import biosteam as bst
class FluidizedBedReactor(bst.Unit, bst.PressureVessel):
_N_ins = 2
_N_outs = 2
def _init(self, reaction, T,
vessel_material='Carbon steel', vessel_type='Vertical',
*args, **kwargs):
self.reaction = reaction # Should be a biosteam.Reaction/ReactionSet/ReactionSystem object
self.T = T
self.vessel_material = vessel_material
self.vessel_type = vessel_type
# Set parameters additional parameters here
def design_heat_exchanger(self):
pass
def cost_heat_exchanger(self):
pass
def estimate_pressure_drop(self):
pass
def estimate_diameter(self):
pass
def estimate_length(self):
pass
def design_pressure_vessel(self):
# P : float
# Pressure [psia].
# D : float
# Diameter [ft].
# L: float
# Vessel length [ft].
P = self.P * 0.000145038
D = self.estimate_diameter()
L = self.estimate_length()
self.design_results.update(
self._vessel_design(P, D, L) # Returns a dictionary with Weight, Diameter, and Length items
)
def cost_pressure_vessel(self):
design_results = self.design_results
self.baseline_purchase_costs.update(
self._vessel_purchase_cost(
design_results['Weight'],
design_results['Diameter'],
design_results['Length'],
) # Returns a dictionary of costs for the vessel, platform, and ladders
)
def _run(self):
solid_feed, gas_feed = self.ins
solid_effluent, gas_effluent = self.outs
solid_effluent.copy_flow(solid_feed)
gas_effluent.copy_flow(gas_feed)
solid_effluent.T = gas_effluent.T = self.T
self.reaction(gas_effluent)
dP = self.estimate_pressure_drop()
solid_effluent.P = gas_effluent.P = gas_feed.P - dP
def _design(self):
self.add_heat_utility(self.T, self.Hnet)
self.design_heat_exchanger()
self.design_pressure_vessel()
def _cost(self):
self.cost_heat_exchanger()
self.cost_pressure_vessel() Thanks, |
Beta Was this translation helpful? Give feedback.
-
Hello,
I hope everyone is doing well. I was trying to model pyrolysis reaction for Miscanthus to convert into bio-oil. For that, I am using pressurized fluidized bed reactor. So, I wanted to check if @yoelcortes or anyone has already modeled fluidized bed reactor unit operation. It would really save me lots of time. If not, can you please direct me to some other available unit reaction which has closest functionality to fluidized bed reactor so that i can make changes accordingly? Thanks a lot.
Best,
Uzair
Beta Was this translation helpful? Give feedback.
All reactions