CHE654 Supplementary Notes Flow Fl Flowsheet owshe sheet et Convergence Conve Co nverg rgenc encee – Tear Streams
Prepared y !r" Hon Hong#m g#m$ng $ng %u Chem$cal Eng$neer$ng Pract$ce School Program %$ng &ong'ut(s &ong'ut(s )n$ve )n$vers$ty rs$ty o* Technology Technology Thonur$ Thonur$ Copyr$ght +pr$l, -../#-.1/ – use w$th perm$ss$on *rom the author only
1
Solut$on +pproaches to Process S$mulat$on There are - as$c approaches to process s$mulat$on0 1" Seuent$al &odular +pproach 2S&+3 -" Euat$on#r$ented +pproach 2E+3
Seuent$al &odular +pproach Process un$t #### &athemat$cal model #### FT+N surout$n surout$nes es sto$ch$ometry7
e"g" to model a reactor ## wh$ch model to use7
plug *low7 CST7
-
Seuent$al &odular +pproach 2Cont’d3 :nput var$ales
8lac' 8o9
utput var$ales
Process )n$t
:n S&+, a un$t module $s sel*#conta$ned, $"e" $ndependent o* other modules" S&+ $s most e**$c$ent *or “acycl$c” *lowsheet0 only 1 pass $s needed"
Unit 1
Unit Unit 2
Unit Unit 3
&ust “tear ” the recycle stream $* us$ng the S&+ approach Tear ; Prov$de an $n$t$al guess such as total *low, compos$t$on, temperature, and pressure"
/
Seuent$al &odular +pproach 2Cont’d3 Conseuence0 &ult$ple#pass calculat$ons calculat$ons and must solve a system o* nonl$near euat$ons to converge the tear stream" +dvantages o* S&+0 " oncep ua s mp c y -" Correspondence to phys$cal structure /" eu$res l$ttle storage and computer memory !$sadvantage o* S&+0 # :ne* :ne**$c$e *$c$ent, nt, neste nested d loops loops ma'$ng $t d$**$cult to solve opt$m$
4
Euat$on#r$ented +pproach
Euat$on#r$ented +pproach 2E+3 Process ; Set o* l$near=nonl$near euat$ons ; Solve them> So no modules>>> o ve a eua ons s mu aneous y
+dvantage o* E+0 # E**$c$ent ecause there are no loops !$sadvantages o* E+0 1" eu$res large numer o* est$mates e"g" -... var$ales to solve ; -... $n$t$al est$mates 5
Euat$on#8ased +pproach 2Cont’d3 -" eu$res good est$mates /" eu$res large storage and computer memory 4" No correspondence to phys$cal structure 5" eu$res stale, rel$ale N?E solvers @ +SPEN P?)S $s a Seuent$al &odular s$mulator @ SPEE!)P $s an Euat$on#r$ented s$mulator
6
Part$t$on$ng and Tear$ng a Flowsheet
&ost commerc$al steady#state s$mulators use the seuent$al modular approach 2S&+3"
modular s$mulator"
Two as$c prolems ar$se $n the S&+" 1" Part$t$on$ng a *lowsheet
B$ll descr$e and de*$ne these
-"Tear$ng a *lowsheet
terms $n more deta$ls later A
Part$t$on$ng and Tear$ng a Flowsheet 2Cont(d3 F$rst, cons$der the *ollow$ng *lowsheet to e solved y a seuent$al modular s$mulator0 S8
MIXER
S2
REACTOR
HEATX
S9
S6
FLASH
S7
D !o you see any prolems or compl$cat$ons $n solv$ng th$s *lowsheet7 D Computat$onal seuence $s &:E, E+CT, HE+T, F?+SH"
Part$t$on$ng and Tear$ng a Flowsheet 2Cont(d3 Now, cons$der a sl$ghtly d$**erent *lowsheet wh$ch $s a mod$*$cat$on to the prev$ous one" S6
S8
MIXER
REACTOR
S2
HEATX
FLASH
S9
S7
D S6 $s now a recycle stream $nstead o* a process product stream" D !o you see any compl$cat$ons th$s t$me7
an $mpasse>
D Bhat $s the computat$onal seuence *or th$s *lowsheet7
Compl$cat$ons w$th ecycle Streams To wor' around the prolem, we must per*orm tr$al#and#error" The wor'around $s to tear a stream, say S6"
“
”
.
9. ; stream compos$t$on, T, and P Convergence loc'
D :* 9. 2S63 ; 91 2S63 w$th$n acceptale
S6
x0 (S6)
tolerance, then we are done"
x1 (S6)
D therw$se, must update 912S63 somehow" 1.
Compl$cat$ons w$th ecycle Streams 2Cont’d3 Convergence loc' mechan$sm *or
updat$ng a tear stream
Numer$cal methods mathemat$cal method=algor$thm *or updat$ng a tear stream"
E9ample o* a s$mple numer$cal method $s !$rect Sust$tut$on" ther numer$cal methods commonly used are0 1" Begste$n(s method -" Newton#aphson(s method /" 8royden(s method 11
Compl$cat$ons w$th ecycle Streams 2Cont’d3 :* S6 $s the tear stream, the computat$onal seuence o* the recycled *lowsheet $s0 Tear S6 ### &:E ### E+CT ### HE+T ### F?+SH ### )pdate S6
:nterest$ngly, S6 $s not the only val$d tear stream, $"e" a tear stream $s not un$ue" Can also tear S/, s4, or S5"
:* S/ $s the tear stream, what $s the computat$onal seuence7 Tear S/ ### E+CT ### HE+T ### F?+SH ### &:E ### )pdate S/ 1-
Compl$cat$ons w$th ecycle Streams 2Cont’d3 Bhen a model $s comple9 w$th many recycle streams, $t $s not poss$le to Geyeall the *lowsheet and come up w$th tear streams"
So - cr$t$cal $ssues *ac$ng the S&+ s$mulat$on 1" &$n$mum numer o* tear streams and the$r locat$ons -" Computat$onal seuence 7
I o* recycle streams ; m$n$mum I o* tear streams
1/
Compl$cat$ons w$th ecycle Streams 2Cont’d3 S7
S1
S6
S3 B1
S5
S4 B2
B3
B4
S2 S8
&$n$mum I o* tear streams ; -, namely S6 and SA"
14
Compl$cat$ons w$th ecycle Streams 2Cont’d3 Bhat aout th$s one7
S6
S7
B1
B2
B3
B4
S2 S8
&$n$mum I o* tear streams ; 7 Computat$onal seuence ; 7 :n conclus$on0 I o* recycle streams m$n$mum I o* tear streams
15
+ Somewhat Comple9 Flowsheet
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Bhat $s the m$n$mum I o* tear streams7 The answer $s 5" 16
Compl$cat$ons w$th ecycle Streams 2Cont’d3 Summary0 1" How many tear streams7 2necessary ecause o* recycles3 -" Bh$ch ones7 /" Convergence method7 4" :n wh$ch order should one converge 2part$t$on$ng37
&any pul$cat$ons related to tear stream determ$nat$on"
The
$mportant ones are as *ollows0 Sargent and Bestererg
164
Forder and Hutch$son 8ar'ley and &otard
16 1A-
1A
+nother Type o* Convergence Prolem Bhen a *eedac' controller $s present T;7 D Called des$gn spec$*$cat$on $n +J
HEATX
FLASH
D ecycle o* $n*ormat$on ecause guess H outlet temperature, calculate 9C1 $n S $* 9C1 ; .".1 stopK otherw$se update
THguess
S8 FC
Bant 9C1 ; .".1
!es$gn spec$*$cat$on $s a lot eas$er to converge than tear streams, ecause $t $nvolves only 1 var$ale"
1
+lgor$thms *or !eterm$n$ng Tear Streams
1
Part$t$on$ng and Precedence rder$ng Part$t$on$ng L ?ocate w$th$n a *lowsheet the groups o* un$ts wh$ch must e solved together 2called $rreduc$le groups3, w$th as *ewest numer o* un$ts as poss$le"
Precedence rder$ng L Plac$ng these groups o* un$ts $n a proper seuence *or computat$on"
-.
S$mple E9ample o* Part$t$on$ng and Precedence rder$ng
F A
B
S1
C
D
E
D Part$t$on$ng0 / un$t groups, namely +8C!, E, and F D Procedence rder$ng0 +8C!, then E, then F D +ctual computat$onal seuence0 Tear S1 ## C ## ! ## + ## 8 ## )pdate S1 ## E ## F -1
Part$t$on$ng +lgor$thm Path Trac$ng algor$thm y Sargent and Bestererg 21643 # + s$mple algor$thm *or trac$ng un$t outputs # 8as$cally, one traces *rom one un$t to the ne9t through the un$t output streams, *orm$ng a Gstr$ng o* un$ts"
Th$s trac$ng cont$nues unt$l 2a3 + un$t $n the str$ng reappears" +ll un$ts etween the repeated un$t, together w$th the repeated un$t, ecome a group, wh$ch $s collapsed together and treated as a s$ngle un$t, and the trac$ng cont$nues *rom $t"
23 + un$t or group o* un$ts w$th no more outputs $s encountered" The un$t or group o* un$ts $s placed at the top o* a l$st o* groups and $s deleted ent$rely *rom the prolem" --
Part$t$on$ng +lgor$thm 2Cont’d3 +lgor$thm0 1" Select a un$t=group -" Trace outputs downstream unt$l 2a3 a un$t or a group on the path reappears" Mo to step /" 23 a un$t or a group $s reached w$th no e9ternal outputs" Mo to step 4" /" ?ael all un$ts $nto a group" Mo to step -" 4" !elete the un$t or group" ecord $t $n a l$st" Mo to step -" Seuence $s *rom ottom to top o* l$st>
-/
E9ample o* S B’s Part$t$on$ng +lgor$thm
A
B
C
M
E
F
G
H
D
L
K
J
I
1" Start w$th un$t +
A
B
C
M
!elete % and !elete O, s$nce no output
E
I
J
K
?$st % O
-4
E9ample o* S B 2Cont’d3
A
B
C
M
E
F
G
H
D
L
K
J
I
-" Start w$th un$t + aga$n
A
B
C
M
E
I
L
E
?oop ; E:? $s a group -5
E9ample o* S B 2Cont’d3
3. A
B
C
M
EIL
E:?! w$ll e a group
D
EIL ?$st
4" !elete E:?! s$nce $t has no more outputs O
5.
A
B
C
!elete &
M
E:?! & C
6.
A
B
C
!elete C, 8, and then +
8 +
-6
E9ample o* S B 2Cont’d3 ?$st
F
G
H
% O E:?! & C
!elete MH, and then delete F
8
Computat$onal seuence $s0
F
GH
A
B
+
C
M EILD
MH F
K
J
-A
Conclus$ons 1" There are two convergence loops $n th$s *lowsheet, and we 'now the$r the$r relat$ve order" "
( streams $n each loop and what the$r locat$ons are"
/" +ll we 'now $s that the tear streams $n each loop must e converged s$multaneously>
-
Tear$ng an :rreduc$le Mroup M$ven an $rreduc$le group0 &ust determ$ne the m$n$mum I o* tear streams and the$r
locat$ons" 1" F$nd m$n$mum I o* tear streams us$ng 8ar'ley and &otard(s 28 &3 algor$thm -" F$nd all loops us$ng ?oop F$nder algor$thm y Forder#Hutch$son -
8ar'ley &otard(s +lgor$thm Muarantees the *ewest numer o* tear streams $n a *lowsheet 8as$c concepts0 Treat the *lowsheet as a s$gnal *low graph Process un$ts ; nodes Process streams ; arcs connect$ng the nodes
1
2
3
Th$s $s a s$gnal *low graph0 Arc
5
Node
4 /.
8ar'ley &otard(s +lgor$thm 2Cont(d3 E9ample0
A
8
7 1
B
2
C
3
D
4 6
E
5 Trans*ormat$on0 # Nodes ecome arcs" # +rcs ecome nodes" # !$rect$on o* arc $s *rom $nput to output" Note that all process $nputs and outputs have een deleted"
1
2
3
4
5
6
7
8 /1
8ar'ley &otard(s +lgor$thm 2Cont(d3 1" Mraph educt$on0 # &erge nodes w$th s$ngle precusor precursor 0 all nodes prov$d$ng $nput to a g$ven node are precursors " " " The node w$th a s$ngle precursor $s to e represented y that precursor e"g" Node - has a s$ngle precursor 1" So erase node - and represent $t w$th node 1" # &erge parallel arcs 2same d$rect$on3
/-
8ar'ley &otard(s +lgor$thm 2Cont(d3 -" Node El$m$nat$on 2may see *unny patterns a*ter graph reduct$ons3 a3 El$m$nate nodes w$th sel*#loops #
"
El$m$nate common node o* a o$nt two#way edge pa$r Q""
Oo$nt two#way edge pa$r
Two#way edge pa$r El$m$nate common node to ecome
//
8ar'ley &otard(s +lgor$thm 2Cont(d3
!$so$nt pa$rs
Q"
"
,
choose ar$trar$ly" eturn to Step 1 2graph reduct$on3 a*ter each el$m$nat$on $n 2a3 or 23" Every el$m$nat$on $s a tear stream" /" :* no progress poss$le, el$m$nate node w$th ma9$mum I o* output edeges" :n case o* t$e, choose ar$trar$ly" Mo to step 1" /4
8ar'ley &otard(s +lgor$thm 2Cont(d3 Node#Precursor ?$st
There $s no need to draw the *low d$agram every t$me you mod$*y or apply the procedure"
Node
Precursors
1 / 4 5 6 A
A 1, -, 5 / 4, 6 -, 5 -, 5 /
/5
8ar'ley &otard(s +lgor$thm 2Cont(d3 Node
Precursors
1 -
A A, / , / /, 6 -, 5 -, 5 /
4 5 6 A
/6
8ar'ley &otard(s +lgor$thm 2Cont(d3
2
3
7
-, A 5, 6 -, / /, 5
Two#way edge pa$rs
-, /, 5 A, -, / /, 5, 6
Oo$nt two#way edge pa$rs
5
6
So the common nodes are -, /, and 5 >>>
/A
8ar'ley &otard(s +lgor$thm 2Cont(d3 # 8ut node - and 5 have the largest numer o* output streams" # So el$m$nate node - and delete node - *rom the tale" # Stream - $s a tear stream"
Node
Precursors
/ 5 6 A
A, / -, 5 /, 6 -, 5 -, 5
so that nodes /, 6, and A have s$ngle precursor"
/
8ar'ley &otard(s +lgor$thm 2Cont(d3 Node
Precursors
/ 5
5 /, 6
A
5
5 sel*#loop
So stream 5 $s another tear stream" Tear streams are Stream - and Stream 5" The computat$onal seuence $s0 C ## ! ## E ## + ## 8
/
Forder#Hutch$son’s ?oop F$nder +lgor$thm 8ased on path trac$ng also, ut records oth streams and loc's encountered" E9ample
4
5
A
B
F$rst, some de*$n$t$ons0
D
C 6
Full str$ng # seuence o* un$ts and streams on a path, e"g" +, S1, 8, S-, C, S/ Stream str$ng # *ull str$ng m$nus un$ts, e"g" S1, S-, S/ Str$ng loop # a *ull str$ng that *orms a loop, e"g" C, S/, !, S6, C Stream loop # str$ng loop m$nus un$ts, e"g" S/, S6 4.
?oop F$nder +lgor$thm 2Cont’d3 +lgor$thm0 1" M$ven a un$t , trace outputs downstream unt$l a un$t reappears" ecord the str$ng loop *ound" Mo to Step -"
+, S1, 8, S-, C, S/, !, S6, C loop -" eturn to -nd to the last un$t and resume trac$ng unt$l another un$t $s repeated" +, S1, 8, S-, C, S/, !, S4, + eturn to Step - and repeat"
loop 41
?oop F$nder +lgor$thm 2Cont’d3 /" :* the last un$t has no more outputs rema$n$ng to e traced, s'$p to the ne9t upstream un$t and go to Step -" +, S1, 8, S-, C, S5, +
loop
So0 C, S/, !, S6, C +, S1, 8, S-, C, S/, !, S4, + +, S1, 8, S-, C, S5, + Construct a ?oop :nc$dence &atr$90 ?oop 1 /
S1
S-
1 1
1 1
S/ 1 1
S4
S5
S6 1
1 1
4-
?oop F$nder +lgor$thm 2Cont’d3 emar's0 1" The algor$thm g$ves all val$d sets o* tear streams, not ust one" -" Not all val$d sets o* tear streams are eually des$rale" Some val$d tear sets are0 RS/, S5w$ll rea' all the loops0 Computat$on order ; Tear /,5 ## ! ## + ## 8 ## C ##)pdate tears RS-, S6
order ; Tear -,6 ## C ## ! ## + ## 8 ## )pdate tears
RS-, S/$s a val$d tear set too0 8ut the troule $s we are rea'$ng ?oop - tw$ce" order ; Tear -,/ ## ! ## C ## + ## 8 ## C ## )pdate tears 4/
?oop F$nder +lgor$thm 2Cont’d3 8loc' C $s calculated tw$ceK not des$rale ecause o* unneccessary calculat$ons"
!e*$ne &ult$pl$c$ty o* a tear set ; ma9$mum I o* t$mes a loop $s ro'en y a tear set" &ult$pl$c$ty ; 1 *or RS/, S5, RS-,S6 ; 21,1,13 ; - *or RS-,S/ ; 21,-,13 E9clus$ve tear set ; tear set w$th a mult$pl$c$ty o* 1 44
+nother E9ample o* ?oop F$nder How aout th$s one7 How many loops7 6 loops" They are0 1 8, S-, !, S6, 8 +, S1, 8, S5, + / +, S, C, S4, + , , , , 5 +, S1, 8, S-, !, S/, C, S4 + 6 8, S5, +, S, C, SA, !, S6 8
1
B
A 5 4
8
C
2 7
6
D
3
?oop 1 / 4 5 6
S1
S1
S/
S4
1
S5
S6 1
SA
1 1
1
S
1
1 1
1 1
1 1
1
1
1
45