Changeset 875 for branches/gui/eml/stage_separators/column.mso
- Timestamp:
- Nov 3, 2009, 12:28:44 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/gui/eml/stage_separators/column.mso
r874 r875 1768 1768 1769 1769 outer PP as Plugin (Brief = "External Physical Properties", Type="PP"); 1770 outer NComp as Integer (Brief="Number of components"); 1771 1772 low_flow as flow_mol (Brief ="Low Flow",Default = 1E-6, Hidden=true); 1773 low_pressure as pressure (Brief ="Low Pressure",Default = 1E-6, Hidden=true); 1774 zero_flow as flow_mol (Brief ="No Flow",Default = 0, Hidden=true); 1775 1770 outer NComp as Integer (Brief="Number of components",Protected=true); 1771 1772 1776 1773 NumberOfFeeds as Integer (Brief="Number of Feed Stages",Default=3,Protected=true); 1777 1774 NumberOfStages as Integer (Brief="Number of Stages", Default=3); … … 1784 1781 ResistanceCoeff as positive (Brief="Resistance coefficient on the liquid load", Default=1); 1785 1782 AreaPerPackingVol as Real (Brief="surface area per packing volume", Unit='m^2/m^3'); 1786 1787 V as volume (Brief="Total Volume of the tray",Protected=true); 1788 Pi as constant (Brief="Pi Number",Default=3.14159265, Symbol = "\pi",Hidden=true); 1789 Gconst as acceleration (Brief="Gravity Acceleration",Default=9.81,Hidden=true); 1790 HETP as length (Brief="the Height Equivalent to a Theoretical Plate",Protected=true); 1791 ColumnArea as area (Brief="Column Sectional Cross Area",Protected=true); 1792 1793 VapourFlow as Switcher(Valid = ["on", "off"], Default = "on",Hidden=true); 1794 1783 HETP as length (Brief="The Height Equivalent to a Theoretical Plate",Protected=true); 1795 1784 1796 1785 VARIABLES … … 1802 1791 out PCI as control_signal (Brief="Pressure Indicator", Protected = true, PosX=0, PosY=0.24); 1803 1792 1804 in LiquidInlet as stream (Brief="Liquid Inlet in the section", PosX=0.70, PosY=0 );1805 out VapourOutlet as vapour_stream (Brief="Vapour Outlet in the section", PosX=0.30, PosY=0 );1806 1807 in VapourInlet as stream (Brief="Vapour Inlet in the section", PosX=0.30, PosY=1 );1808 out LiquidOutlet as liquid_stream (Brief="Liquid Outlet in the section", PosX=0.70, PosY=1 );1793 in LiquidInlet as stream (Brief="Liquid Inlet in the section", PosX=0.70, PosY=0,Protected=true); 1794 out VapourOutlet as vapour_stream (Brief="Vapour Outlet in the section", PosX=0.30, PosY=0,Protected=true); 1795 1796 in VapourInlet as stream (Brief="Vapour Inlet in the section", PosX=0.30, PosY=1,Protected=true); 1797 out LiquidOutlet as liquid_stream (Brief="Liquid Outlet in the section", PosX=0.70, PosY=1,Protected=true); 1809 1798 1810 1799 LiquidConnector as stream (Brief="Liquid connection at the middle STAGES", PosX=0.75, PosY=1,Hidden=true); 1811 1800 VapourConnector as stream (Brief="Vapour connection at the middle STAGES", PosX=0.55, PosY=0,Hidden=true); 1812 1801 1813 STAGES(NumberOfStages) as packedStage ;1802 STAGES(NumberOfStages) as packedStage (Brief="Column Stages",Protected=true); 1814 1803 PressureDrop as pressure (Brief="Column Pressure Drop", Protected=true); 1815 1804 1816 1805 SET 1817 1818 ColumnArea = 0.25*Pi*ColumnDiameter^2; 1819 HETP =PackingHeight/NumberOfStages; 1820 V = HETP * ColumnArea; 1821 1822 low_pressure = 1E-4 * 'atm'; 1823 low_flow = 1E-6 * 'kmol/h'; 1824 zero_flow = 0 * 'kmol/h'; 1825 1806 1807 STAGES.Number_Stages = NumberOfStages; 1808 STAGES.HeightOfPacking = PackingHeight; 1809 STAGES.HeatOnStage = HeatSupply; 1810 STAGES.ColumnInternalDiameter = ColumnDiameter; 1811 STAGES.PackingVoidFraction = VoidFraction; 1812 STAGES.LiquidResistanceCoeff = ResistanceCoeff ; 1813 STAGES.AreaPerPackingVolume = AreaPerPackingVol; 1814 1815 HETP = PackingHeight/NumberOfStages; 1816 1826 1817 CONNECTIONS 1827 1818 … … 1868 1859 PressureDrop = STAGES(NumberOfStages).OutletLiquid.P - STAGES(1).OutletLiquid.P; 1869 1860 1870 for i in [1:NumberOfStages] do1871 1872 switch VapourFlow1873 1874 case "on":1875 "Pressure drop and Vapor flow, Billet (4-58)"1876 STAGES(i).deltaP/HETP = ResistanceCoeff *( 0.5*AreaPerPackingVol + 2/ColumnDiameter) * 1/((VoidFraction-STAGES(i).hl)^3) * (STAGES(i).uV^2) * STAGES(i).rhoV;1877 1878 when STAGES(i).InletVapour.F < low_flow switchto "off";1879 1880 case "off":1881 "Vapour Flow"1882 STAGES(i).InletVapour.F = zero_flow;1883 1884 when STAGES(i).deltaP > low_pressure switchto "on";1885 1886 end1887 1888 "Energy Balance"1889 diff(STAGES(i).E) = (STAGES(i).Inlet.F*STAGES(i).Inlet.h + STAGES(i).InletLiquid.F*STAGES(i).InletLiquid.h + STAGES(i).InletVapour.F*STAGES(i).InletVapour.h- STAGES(i).OutletLiquid.F*STAGES(i).OutletLiquid.h1890 - STAGES(i).OutletVapour.F*STAGES(i).OutletVapour.h + HeatSupply );1891 1892 "Energy Holdup"1893 STAGES(i).E = STAGES(i).ML*STAGES(i).OutletLiquid.h + STAGES(i).MV*STAGES(i).OutletVapour.h - STAGES(i).OutletLiquid.P*V;1894 1895 "Geometry Constraint"1896 V*VoidFraction= STAGES(i).ML*STAGES(i).vL + STAGES(i).MV*STAGES(i).vV;1897 1898 "Volume flow rate of vapor, m^3/m^2/s"1899 STAGES(i).uV * (V*VoidFraction/HETP - STAGES(i).Al) = STAGES(i).InletVapour.F * STAGES(i).vV;1900 1901 "Liquid holdup"1902 STAGES(i).hl*V*VoidFraction = STAGES(i).ML*STAGES(i).vL;1903 1904 "Liquid velocity as a function of liquid holdup, Billet (4-27)"1905 STAGES(i).hl^3 = (12/Gconst) * AreaPerPackingVol^2 * (STAGES(i).miL/STAGES(i).rhoL) * STAGES(i).uL;1906 #STAGES(i).hl = (12*STAGES(i).miL*AreaPerPackingVol^2*STAGES(i).uL/STAGES(i).rhoL/Gconst)^1/3;1907 1908 "Area occupied by the liquid"1909 STAGES(i).Al = STAGES(i).ML*STAGES(i).vL/HETP;1910 1911 end1912 1913 1861 INITIAL 1914 1862 … … 1924 1872 1925 1873 for i in 1:NComp-1 do 1926 1874 1927 1875 for j in 1:NumberOfStages do 1928 1876
Note: See TracChangeset
for help on using the changeset viewer.