Changeset 649 for branches/gui/eml/stage_separators/column.mso
- Timestamp:
- Sep 30, 2008, 6:42:41 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/gui/eml/stage_separators/column.mso
r648 r649 447 447 * - a pump in reflux stream. 448 448 * 449 * ------------------------------------------------------------------ 450 Model Distillation_thermosyphon_subcooling Teste449 * ------------------------------------------------------------------*# 450 Model Distillation_thermosyphon_subcooling as Section_ColumnBasic 451 451 ATTRIBUTES 452 452 Pallete = true; … … 478 478 "; 479 479 480 PARAMETERS 481 outer PP as Plugin(Brief = "External Physical Properties", Type="PP"); 482 outer NComp as Integer; 483 NumberOfTrays as Integer(Brief="Number of trays", Default=2); 484 topdown as Integer(Brief="Trays counting (1=top-down, -1=bottom-up)", Default=1); 485 top as Integer(Brief="Number of top tray"); 486 bot as Integer(Brief="Number of bottom tray"); 487 VapourFlow as Switcher(Valid = ["on", "off"], Default = "on"); 488 489 SET 490 top = (NumberOfTrays-1)*(1-topdown)/2+1; 491 bot = NumberOfTrays/top; 492 493 VARIABLES 494 trays(NumberOfTrays) as trayTeste; 495 cond as condenserSteady; 496 reb as reboilerSteady; 497 tbottom as tank; 498 ttop as tank_cylindrical; 499 spbottom as splitter; 500 sptop as splitter; 501 pump1 as pump; 502 alfaTopo as Real; 503 504 EQUATIONS 505 switch VapourFlow 506 case "on": 507 cond.InletV.F*trays(top).vV = alfaTopo * trays(top).Ah * sqrt(2*(trays(top).OutletV.P - 508 cond.OutletL.P + 1e-8 * 'atm') / (trays(top).alfa*trays(top).rhoV)); 509 when cond.InletV.F < 1e-6 * 'kmol/h' switchto "off"; 510 511 case "off": 512 cond.InletV.F = 0 * 'mol/s'; 513 when trays(top).OutletV.P > cond.OutletL.P + 1e-1 * 'atm' switchto "on"; 514 end 515 516 CONNECTIONS 517 #vapor 518 reb.OutletV to trays(bot).InletV; 519 trays([top+topdown:topdown:bot]).OutletV to trays([top:topdown:bot-topdown]).InletV; 520 trays(top).OutletV to cond.InletV; 521 522 #liquid 523 cond.OutletL to ttop.Inlet; 524 ttop.Outlet to sptop.Inlet; 525 sptop.Outlet2 to pump1.Inlet; 526 pump1.Outlet to trays(top).InletL; 527 trays([top:topdown:bot-topdown]).OutletL to trays([top+topdown:topdown:bot]).InletL; 528 trays(bot).OutletL to tbottom.Inlet; 529 tbottom.Outlet to spbottom.Inlet; 530 spbottom.Outlet2 to reb.InletL; 480 PARAMETERS 481 482 CondenserVapourFlow as Switcher(Valid = ["on", "off"], Hidden=true, Default = "on"); 483 484 VARIABLES 485 CondenserUnity as condenserSteady; 486 TopVessel as tank_cylindrical; 487 TopSplitter as splitter; 488 PumpUnity as pump; 489 ReboilerUnity as reboilerSteady; 490 BottomVessel as tank; 491 BottomSplitter as splitter; 492 493 494 alfaTopo as Real; 495 496 out HeatToCondenser as power (Brief="Heat supplied to Condenser",Hidden=true); 497 out HeatToReboiler as power (Brief="Heat supplied to Reboiler",Hidden=true); 498 out HeatToBottomVessel as power (Brief="Heat supplied to Bottom Vessel",Hidden=true); 499 out HeatToTopVessel as power (Brief="Heat supplied to Top Vessel",Hidden=true); 500 501 EQUATIONS 502 503 switch CondenserVapourFlow 504 505 case "on": 506 CondenserUnity.InletV.F*trays(1).vV = alfaTopo * Ah * sqrt(2*(trays(1).OutletV.P - 507 CondenserUnity.OutletL.P + 1e-8 * 'atm') / (alfa*trays(1).rhoV)); 508 when CondenserUnity.InletV.F < 1e-6 * 'kmol/h' switchto "off"; 509 510 case "off": 511 CondenserUnity.InletV.F = 0 * 'mol/s'; 512 when trays(1).OutletV.P > CondenserUnity.OutletL.P + 1e-1 * 'atm' switchto "on"; 513 514 end 515 516 CONNECTIONS 517 #vapor 518 ReboilerUnity.OutletV to trays(NumberOfTrays).InletV; 519 trays(1).OutletV to CondenserUnity.InletV; 520 521 #liquid 522 CondenserUnity.OutletL to TopVessel.Inlet; 523 TopVessel.Outlet to TopSplitter.Inlet; 524 TopSplitter.Outlet2 to PumpUnity.Inlet; 525 PumpUnity.Outlet to trays(1).InletL; 526 trays(NumberOfTrays).OutletL to BottomVessel.Inlet; 527 BottomVessel.Outlet to BottomSplitter.Inlet; 528 BottomSplitter.Outlet2 to ReboilerUnity.InletL; 529 530 #Connectors 531 HeatToCondenser to CondenserUnity.InletQ; 532 HeatToReboiler to ReboilerUnity.InletQ; 533 HeatToBottomVessel to BottomVessel.InletQ; 534 HeatToTopVessel to TopVessel.InletQ; 535 531 536 end 532 537
Note: See TracChangeset
for help on using the changeset viewer.