#*------------------------------------------------------------------- * EMSO Model Library (EML) Copyright (C) 2004 - 2007 ALSOC. * * This LIBRARY is free software; you can distribute it and/or modify * it under the therms of the ALSOC FREE LICENSE as available at * http://www.enq.ufrgs.br/alsoc. * * EMSO Copyright (C) 2004 - 2007 ALSOC, original code * from http://www.rps.eng.br Copyright (C) 2002-2004. * All rights reserved. * * EMSO is distributed under the therms of the ALSOC LICENSE as * available at http://www.enq.ufrgs.br/alsoc. * *-------------------------------------------------------------------- * Sample file with Multistream Heat Exchanger *-------------------------------------------------------------------- * * This sample file needs VRTherm (www.vrtech.com.br) to run. * *---------------------------------------------------------------------- * Author: Gerson B. Bicca * $Id: Sample_LNG.mso 534 2008-06-11 18:11:04Z bicca $ *--------------------------------------------------------------------*# using "heat_exchangers/heater"; using "heat_exchangers/Mheatex"; FlowSheet LNG_Process_With_Mheatex PARAMETERS PP as Plugin ( Brief="Physical Properties", Type="PP", Components = ["methane", "ethane", "propane", "isobutane", "n-butane", "isopentane", "n-pentane"], LiquidModel = "PR", VapourModel = "PR" ); NComp as Integer; DEVICES Feed as simple_source (Brief= "Feed Plant"); HotOne as simple_source (Brief= "Hot Stream"); ColdOne as simple_source (Brief= "Cold Stream 1"); ColdTwo as simple_source (Brief= "Cold Stream 2"); Feed_out as simple_sink (Brief= "Feed Stream Out"); HotOne_out as simple_sink (Brief= "Hot Stream Out"); ColdOne_out as simple_sink (Brief= "Cold Stream 1 Out"); ColdTwo_out as simple_sink (Brief= "Cold Stream 2 Out"); LNG as Mheatex (Brief= "LNG Heat Exchanger"); SET NComp = PP.NumberOfComponents; LNG.Nhot = 2; LNG.Ncold = 2; LNG.FlowDirection = "counter"; CONNECTIONS Feed.Outlet to LNG.InletHot(1); HotOne.Outlet to LNG.InletHot(2); ColdOne.Outlet to LNG.InletCold(1); ColdTwo.Outlet to LNG.InletCold(2); LNG.OutletHot(1) to Feed_out.Inlet; LNG.OutletHot(2) to HotOne_out.Inlet; LNG.OutletCold(1) to ColdOne_out.Inlet; LNG.OutletCold(2) to ColdTwo_out.Inlet; SPECIFY #Streams Specification Feed.Outlet.F = 1000.00 * 'kmol/h'; Feed.Outlet.T = (20.0+273.15) * 'K'; Feed.Outlet.P = 500.00 * 'kPa'; Feed.Outlet.z = [0.5386,0.1538,0.0769,0.0692,0.0615,0.0538,0.0462]; HotOne.Outlet.F = 50.00 * 'kmol/h'; HotOne.Outlet.T = (30.0+273.15) * 'K'; HotOne.Outlet.P = 5000.00 * 'kPa'; HotOne.Outlet.z = [0.9500,0.0500,0.0,0.0,0.0,0.0,0.0]; ColdOne.Outlet.F = 75.00 * 'kmol/h'; ColdOne.Outlet.T = (-87+273.15) * 'K'; ColdOne.Outlet.P = 2000.00 * 'kPa'; ColdOne.Outlet.z = [0.9500,0.0500,0.0,0.0,0.0,0.0,0.0]; ColdTwo.Outlet.F = 904.2282* 'kmol/h'; ColdTwo.Outlet.T = (-78+273.15) * 'K'; ColdTwo.Outlet.P = 250.00 * 'kPa'; ColdTwo.Outlet.z = [0.020,0.98,0.0,0.0,0.0,0.0,0.0]; #LNG Specification LNG.OutletHot(2).T = (25.0+273.15) * 'K'; LNG.OutletHot(2).P = 4990.00 * 'kPa'; LNG.OutletCold(1).T = (21.65+273.15) * 'K'; LNG.OutletCold(1).P = 1950.00 * 'kPa'; LNG.OutletCold(2).T= (-70+273.15) * 'K'; LNG.OutletCold(2).P = 245.00 * 'kPa'; LNG.OutletHot(1).P = 500.00 * 'kPa'; LNG.Method.Fc = 1; OPTIONS Dynamic = false; end FlowSheet LNG_Process_With_Heater PARAMETERS PP as Plugin ( Brief="Physical Properties", Type="PP", Components = ["methane", "ethane", "propane", "isobutane", "n-butane", "isopentane", "n-pentane"], LiquidModel = "PR", VapourModel = "PR" ); NComp as Integer; DEVICES Heat1 as energy_source; Heat2 as energy_source; Heat3 as energy_source; Heat4 as energy_source; Feed as simple_source (Brief= "Feed Plant"); HotOne as simple_source (Brief= "Hot Stream"); ColdOne as simple_source (Brief= "Cold Stream 1"); ColdTwo as simple_source (Brief= "Cold Stream 2"); Feed_out as simple_sink (Brief= "Feed Stream Out"); HotOne_out as simple_sink (Brief= "Hot Stream Out"); ColdOne_out as simple_sink (Brief= "Cold Stream 1 Out"); ColdTwo_out as simple_sink (Brief= "Cold Stream 2 Out"); LNG1 as heater (Brief= "Heater Heat Exchanger"); LNG2 as heater (Brief= "Heater Heat Exchanger"); LNG3 as heater (Brief= "Heater Heat Exchanger"); LNG4 as heater (Brief= "Heater Heat Exchanger"); SET NComp = PP.NumberOfComponents; LNG1.Ninlet = 1; LNG2.Ninlet = 1; LNG3.Ninlet = 1; LNG4.Ninlet = 1; LNG1.Kvalues = "no"; LNG2.Kvalues = "no"; LNG3.Kvalues = "no"; LNG4.Kvalues = "no"; CONNECTIONS HotOne.Outlet to LNG1.Inlet(1); ColdOne.Outlet to LNG2.Inlet(1); ColdTwo.Outlet to LNG3.Inlet(1); Feed.Outlet to LNG4.Inlet(1); LNG1.Outlet to HotOne_out.Inlet; LNG2.Outlet to ColdOne_out.Inlet; LNG3.Outlet to ColdTwo_out.Inlet; LNG4.Outlet to Feed_out.Inlet; Heat1.OutletQ to LNG1.InletQ; Heat2.OutletQ to LNG2.InletQ; Heat3.OutletQ to LNG3.InletQ; Heat4.OutletQ to LNG4.InletQ; SPECIFY #Streams Specification HotOne.Outlet.F = 50.00 * 'kmol/h'; HotOne.Outlet.T = (30.0+273.15) * 'K'; HotOne.Outlet.P = 5000.00 * 'kPa'; HotOne.Outlet.z = [0.9500,0.0500,0.0,0.0,0.0,0.0,0.0]; ColdOne.Outlet.F = 75.00 * 'kmol/h'; ColdOne.Outlet.T = (-87+273.15) * 'K'; ColdOne.Outlet.P = 2000.00 * 'kPa'; ColdOne.Outlet.z = [0.9500,0.0500,0.0,0.0,0.0,0.0,0.0]; ColdTwo.Outlet.F = 904.2282* 'kmol/h'; ColdTwo.Outlet.T = (-78+273.15) * 'K'; ColdTwo.Outlet.P = 250.00 * 'kPa'; ColdTwo.Outlet.z = [0.020,0.98,0.0,0.0,0.0,0.0,0.0]; Feed.Outlet.F = 1000.00 * 'kmol/h'; Feed.Outlet.T = (20.0+273.15) * 'K'; Feed.Outlet.P = 500.00 * 'kPa'; Feed.Outlet.z = [0.5386,0.1538,0.0769,0.0692,0.0615,0.0538,0.0462]; #Heater Specification LNG1.Outlet.T = (25.0+273.15) * 'K'; LNG1.Outlet.P = 4990.00 * 'kPa'; LNG2.Outlet.T = (21.65+273.15) * 'K'; LNG2.Outlet.P = 1950.00 * 'kPa'; LNG3.Outlet.T= (-70+273.15) * 'K'; LNG3.Outlet.P = 245.00 * 'kPa'; LNG4.Outlet.P = 500.00 * 'kPa'; EQUATIONS Heat4.OutletQ.Q = -sum(Heat2.OutletQ.Q+Heat3.OutletQ.Q)+Heat1.OutletQ.Q; OPTIONS Dynamic = false; end