-
Notifications
You must be signed in to change notification settings - Fork 0
/
_Conveyor.py
43 lines (35 loc) · 1.37 KB
/
_Conveyor.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import numpy as np
import warnings
import biosteam as bst
from biosteam import Unit
from biosteam.units.decorators import cost
@cost(basis='feed', ID= 'Conveyor', units='tonnes/day', S= 500, CE=567.5, cost= 297661.70, n=0.6, BM=4.28)
# %% Import necessary modules
class Conveyor(bst.Unit):
_N_ins = 2
_N_outs = 2
_N_heat_utilities = 0
_units= {'feed': 'tonnes/day',
'Duty': 'kJ/hr'}
def __init__(self, ID='', ins=(), outs=(), *args, **kwargs):
bst.Unit.__init__(self, ID, ins, outs, bst.settings.get_thermo())
self._multistream = bst.MultiStream(None, thermo=bst.settings.get_thermo())
self._multistream.T = T
self.T = T
self.P = P
def _run(self):
feed_one = self.ins[0]
feed_two = self.ins[1]
out_one = self.outs[0]
out_two = self.outs[1]
out_one.copy_like(feed_one)
out_two.copy_like(feed_two)
feed_one.T = out_one.T
feed_one.P = out_one.P
feed_two.T = out_two.T
feed_two.P = out_two.P
def _design(self):
duty= self.H_out - self.H_in
self.design_results['feed'] = self.ins[0].get_flow("tonnes/day","HDPE") * self.factor # Autothermal pyrolysis requires smaller reactor 2/5 Polin et al. 2019
# self.add_heat_utility(duty, T_in=self.ins[0].T)
pass