Ignore:
Timestamp:
Nov 3, 2009, 12:28:44 PM (13 years ago)
Author:
gerson bicca
Message:

packed column/tray revised

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/gui/eml/stage_separators/column.mso

    r874 r875  
    17681768
    17691769        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
    17761773        NumberOfFeeds                                           as Integer      (Brief="Number of Feed Stages",Default=3,Protected=true);
    17771774        NumberOfStages                                          as Integer      (Brief="Number of Stages", Default=3);
     
    17841781        ResistanceCoeff         as positive     (Brief="Resistance coefficient on the liquid load", Default=1);
    17851782        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);
    17951784
    17961785VARIABLES
     
    18021791        out     PCI as control_signal   (Brief="Pressure Indicator", Protected = true, PosX=0, PosY=0.24);
    18031792       
    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);
    18091798       
    18101799        LiquidConnector as stream       (Brief="Liquid connection at the middle STAGES", PosX=0.75, PosY=1,Hidden=true);
    18111800        VapourConnector as stream       (Brief="Vapour connection at the middle STAGES", PosX=0.55, PosY=0,Hidden=true);
    18121801       
    1813         STAGES(NumberOfStages) as packedStage;
     1802        STAGES(NumberOfStages) as packedStage (Brief="Column Stages",Protected=true);
    18141803        PressureDrop               as pressure (Brief="Column Pressure Drop", Protected=true);
    1815        
     1804
    18161805SET
    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
    18261817CONNECTIONS
    18271818
     
    18681859        PressureDrop = STAGES(NumberOfStages).OutletLiquid.P - STAGES(1).OutletLiquid.P;
    18691860
    1870 for i in [1:NumberOfStages] do
    1871 
    1872 switch VapourFlow
    1873        
    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 end
    1887 
    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.h
    1890         - 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 end
    1912 
    19131861INITIAL
    19141862
     
    19241872
    19251873for i in 1:NComp-1 do
    1926        
     1874
    19271875for j in 1:NumberOfStages do
    19281876
Note: See TracChangeset for help on using the changeset viewer.