Changeset 517 for branches/rate


Ignore:
Timestamp:
May 19, 2008, 11:29:24 AM (14 years ago)
Author:
Argimiro Resende Secchi
Message:

Updating tray rate model.

Location:
branches/rate
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/rate/eml/stage_separators/tray.mso

    r516 r517  
    119119== Initial ==
    120120* the plate temperature (OutletL.T)
    121 * the liquid height (Level) OR the liquid flow OutletL.F
     121* the liquid height (Level) OR the liquid holdup (ML)
    122122* (NoComps - 1) OutletL compositions
    123123";     
     
    494494       
    495495        VARIABLES
    496         NL(NComp) as flow_mol   (Brief = "Stream Molar Rate on Liquid Phase");
    497         NV(NComp) as flow_mol   (Brief = "Stream Molar Rate on Vapour Phase");
     496        NL(NComp) as flow_mol_delta     (Brief = "Stream Molar Rate on Liquid Phase");
     497        NV(NComp) as flow_mol_delta     (Brief = "Stream Molar Rate on Vapour Phase");
    498498        T as temperature                (Brief = "Stream Temperature");
    499499        P as pressure                   (Brief = "Stream Pressure");
     
    519519end
    520520
    521 Model trayRate 
     521Model trayRateBasic
    522522        ATTRIBUTES
    523523        Pallete         = false;
    524524        Icon            = "icon/Tray";
    525         Brief           = "Basic equations of a tray column model.";
     525        Brief           = "Basic equations of a tray rate column model.";
    526526        Info            =
    527527"This model contains only the main equations of a column tray nonequilibrium model without
     
    561561        Level as length (Brief="Height of clear liquid on plate");
    562562        interf as interface;   
    563        
     563
     564        SET   
     565        NC1=NComp-1;
     566
    564567        EQUATIONS
    565568        "Component Molar Balance"
     
    622625        interf.NL(1:NC1)=interf.a*sumt(interf.kL*(interf.x(1:NC1)-OutletL.z(1:NC1)))/vL+
    623626                OutletL.z(1:NC1)*sum(interf.NL);
     627
     628#       interf.NL(1:NC1)=0.01*'kmol/s';
    624629       
    625630        interf.NV(1:NC1)=interf.a*sumt(interf.kV*(OutletV.z(1:NC1)-interf.y(1:NC1)))/vV+
     
    629634        OutletV.P = OutletL.P;
    630635        interf.P=OutletL.P;
    631        
    632         SET   
    633         NC1=NComp-1;
    634636end
    635637
     638Model trayRate as trayRateBasic
     639        ATTRIBUTES
     640        Pallete         = false;
     641        Icon            = "icon/Tray";
     642        Brief           = "Complete rate model of a column tray.";
     643        Info            =
     644"== Specify ==
     645* the Feed stream
     646* the Liquid inlet stream
     647* the Vapour inlet stream
     648* the Vapour outlet flow (OutletV.F)
     649       
     650== Initial ==
     651* the plate temperature of both phases (OutletL.T and OutletV.T)
     652* the liquid height (Level) OR the liquid flow holdup (ML)
     653* the vapor holdup (MV)
     654* (NoComps - 1) OutletL compositions
     655";
     656
     657        PARAMETERS
     658        Ah as area (Brief="Total holes area");
     659        lw as length (Brief="Weir length");
     660        g as acceleration (Default=9.81);
     661        hw as length (Brief="Weir height");
     662        beta as fraction (Brief="Aeration fraction");
     663        alfa as fraction (Brief="Dry pressure drop coefficient");
     664       
     665        VapourFlow as Switcher(Valid = ["on", "off"], Default = "on");
     666        LiquidFlow as Switcher(Valid = ["on", "off"], Default = "on");
     667       
     668        VARIABLES
     669        rhoL as dens_mass;
     670        rhoV as dens_mass;
     671
     672        EQUATIONS
     673        "Liquid Density"
     674        rhoL = PP.LiquidDensity(OutletL.T, OutletL.P, OutletL.z);
     675        "Vapour Density"
     676        rhoV = PP.VapourDensity(InletV.T, InletV.P, InletV.z);
     677
     678        switch LiquidFlow
     679                case "on":
     680                "Francis Equation"
     681#               OutletL.F*vL = 1.84*'m^0.5/s'*lw*((Level-(beta*hw))/(beta))^1.5;
     682                OutletL.F*vL = 1.84*'1/s'*lw*((Level-(beta*hw))/(beta))^2;
     683                when Level < (beta * hw) switchto "off";
     684               
     685                case "off":
     686                "Low level"
     687                OutletL.F = 0 * 'mol/h';
     688                when Level > (beta * hw) + 1e-6*'m' switchto "on";
     689        end
     690
     691        switch VapourFlow
     692                case "on":
     693                InletV.F*vV = sqrt((InletV.P - OutletV.P)/(rhoV*alfa))*Ah;
     694                when InletV.F < 1e-6 * 'kmol/h' switchto "off";
     695               
     696                case "off":
     697                InletV.F = 0 * 'mol/s';
     698                when InletV.P > OutletV.P + Level*g*rhoL + 1e-1 * 'atm' switchto "on";
     699        end     
     700end
  • branches/rate/sample/stage_separators/sample_tray.mso

    r507 r517  
    243243       
    244244        SPECIFY
    245         feed.Outlet.F = 113.4 * 'kmol/h';
    246         feed.Outlet.T = 291 * 'K';
    247         feed.Outlet.P = 1.66 * 'atm';
     245        feed.Outlet.F = 116 * 'kmol/h';
     246        feed.Outlet.T = 280 * 'K';
     247        feed.Outlet.P = 150 * 'kPa';
    248248        feed.Outlet.z = [0.5, 0.5];
    249        
     249
    250250        feedV.Outlet.F = 0 * 'kmol/h';
    251         feedV.Outlet.T = 291 * 'K';
    252         feedV.Outlet.P = 1.66 * 'atm';
     251        feedV.Outlet.T = 280 * 'K';
     252        feedV.Outlet.P = 150 * 'atm';
    253253        feedV.Outlet.z = [0.5, 0.5];
    254        
    255         inL.P = 165 * 'kPa';
    256         inL.T = 310 * 'K';
    257         inL.F = 61.99 * 'kmol/h';
     254
     255        inL.P = 150 * 'kPa';
     256        inL.T = 290 * 'K';
     257        inL.F = 62 * 'kmol/h';
    258258        inL.z = [0.1641, 0.8359];
    259259
    260260        inV.P = 150 * 'kPa';
    261         inV.T = 321 * 'K';
     261        inV.T = 340 * 'K';
    262262        inV.z = [0.0584, 0.9416];
    263         inV.F = 61.99 * 'kmol/h';
    264        
    265         #t1.Emv = 1;
    266         t1.OutletV.F = 147.1 * 'kmol/h';
    267         t1.OutletL.F = 147.1 * 'kmol/h';
    268         t1.interf.a=0.01*'m^2';
    269         t1.interf.htL=0.4*'kW/m^2/K';
    270         t1.interf.htV=0.4*'kW/m^2/K';
    271         t1.interf.kL=0.001*'m/s';
    272         t1.interf.kV=0.001*'m/s';
     263#       inV.F = 62 * 'kmol/h';
     264
     265        t1.OutletV.F = 120 * 'kmol/h';
     266#       t1.OutletL.F = 120 * 'kmol/h';
     267        t1.interf.a = 140 * 'm^2';
     268        t1.interf.htL = 10.01 * 'kW/m^2/K';
     269        t1.interf.htV = 0.025 * 'kW/m^2/K';
     270        t1.interf.kL = 0.00933 * 'm/s';
     271        t1.interf.kV = 0.000236 * 'm/s';
    273272
    274273        SET
    275274        t1.V = 4 * 'ft^3';
    276         #*t1.Ah = 0.394 * 'ft^2';
     275        t1.Ah = 0.394 * 'ft^2';
    277276        t1.lw = 20.94 * 'in';
    278277        t1.hw = 0.125 * 'ft';
    279278        t1.beta = 0.6;
    280         t1.alfa = 4;*#
    281        
     279        t1.alfa = 4;
    282280        t1.Ap = 3.94 * 'ft^2';
    283281        t1.Q = 0 * 'kW';
    284        
    285         INITIAL
    286         t1.OutletL.T = 290 *'K';
     282
     283        INITIAL
     284        t1.OutletL.T = 295 *'K';
    287285        t1.OutletV.T = 290 *'K';
    288         t1.Level = 0.9*'m' ;
     286        t1.Level = 0.9 * t1.hw;
    289287        t1.OutletL.z(1) = 0.5;
    290         t1.OutletV.z(1) = 0.5;
    291         t1.MV = 0.01*'mol' ;
    292        
     288        t1.OutletV.z(1) = 0.6;
     289        t1.MV = 1.0*'mol' ;
     290
    293291        OPTIONS
    294292        TimeStep = 0.1;
    295         TimeEnd = 100;
     293        TimeEnd = 10;
    296294        TimeUnit = 's';
    297 #       GuessFile = "tray_Test.rlt";
    298 end
     295        GuessFile = "trayRate_Test.rlt";
     296end
Note: See TracChangeset for help on using the changeset viewer.