Changeset 513 for trunk


Ignore:
Timestamp:
May 13, 2008, 4:07:40 PM (15 years ago)
Author:
Paula Bettio Staudt
Message:

More hydraulic correlations implemented in tray model

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/eml/stage_separators/tray.mso

    r511 r513  
    121121* the liquid height (Level) OR the liquid flow OutletL.F
    122122* (NoComps - 1) OutletL compositions
     123
     124== Options ==
     125You can choose the equation for the liquid outlet flow and the vapour
     126inlet flow calculation through the VapourFlowModel and LiquidFlowModel
     127switchers.
     128
     129== References ==
     130* ELGUE, S.; PRAT, L.; CABASSUD, M.; LANN, J. L.; CéZERAC, J. Dynamic models for start-up operations of batch distillation columns with experimental validation. Computers and Chemical Engineering, v. 28, p. 2735-2747, 2004.
     131* FEEHERY, W. F. Dynamic Optimization with Path Constraints. Tese (Doutorado) - Massachusetts Institute of Technology, June 1998.
     132* KLINGBERG, A. Modeling and Optimization of Batch Distillation. Dissertação (Mestrado) - Department of Automatic Control, Lund Institute of Technology, Lund, Sweden, fev. 2000.
     133* OLSEN, I.; ENDRESTOL, G. O.; SIRA, T. A rigorous and efficient distillation column model for engineering and training simulators. Computers and Chemical Engineering,v. 21, n. Suppl, p. S193-S198, 1997.
     134* REEPMEYER, F.; REPKE, J.-U.; WOZNY, G. Analysis of the start-up process for reactive distillation. Chemical Engineering Technology, v. 26, p. 81-86, 2003.
     135* ROFFEL, B.; BETLEM, B.; RUIJTER, J. de. First principles dynamic modeling and multivariable control of a cryogenic distillation column process. Computers and Chemical Engineering, v. 24, p. 111-123, 2000.
     136* WANG, L.; LI, P.; WOZNY, G.; WANG, S. A start-up model for simulation of batch distillation starting from a cold state. Computers and Chemical Engineering, v. 27, p.1485-1497, 2003.
    123137";     
    124138
     
    131145        alfa as fraction (Brief="Dry pressure drop coefficient");
    132146        w as Real (Brief="Feehery's correlation coefficient", Unit='1/m^4', Default=1);
     147        btray as Real (Brief="Elgue's correlation coefficient", Unit='kg/m/mol^2', Default=1);
     148        fw as Real      (Brief = "Olsen's correlation coefficient", Default=1);
     149        Np as Real      (Brief = "Number of liquid passes in the tray", Default=1);
    133150        Mw(NComp)       as molweight    (Brief = "Component Mol Weight");
    134151       
    135152        VapourFlow as Switcher(Valid = ["on", "off"], Default = "on");
    136153        LiquidFlow as Switcher(Valid = ["on", "off"], Default = "on");
    137         VapourFlowModel as Switcher(Valid = ["Reepmeyer", "Feehery", "Roffel"], Default = "Reepmeyer");
    138 #       LiquidFlow as Switcher(Valid = ["on", "off"], Default = "on");
     154        VapourFlowModel as Switcher(Valid = ["Reepmeyer", "Feehery_Fv", "Roffel_Fv", "Klingberg", "Wang_Fv", "Elgue"], Default = "Reepmeyer");
     155        LiquidFlowModel as Switcher(Valid = ["default", "Wang_Fl", "Olsen", "Feehery_Fl", "Roffel_Fl"], Default = "default");
    139156
    140157        SET
     
    145162        rhoV as dens_mass;
    146163
     164        btemp as Real (Brief="Temporary variable of Roffel's liquid flow equation");
     165       
    147166        EQUATIONS
    148167        "Liquid Density"
     
    153172        switch LiquidFlow
    154173                case "on":
    155                 "Francis Equation"
    156 #               OutletL.F*vL = 1.84*'m^0.5/s'*lw*((Level-(beta*hw))/(beta))^1.5;
    157                 OutletL.F*vL = 1.84*'1/s'*lw*((Level-(beta*hw))/(beta))^2;
     174                        switch LiquidFlowModel
     175                                case "default":
     176                                "Francis Equation"
     177                                OutletL.F*vL = 1.84*'1/s'*lw*((Level-(beta*hw))/(beta))^2;
     178                       
     179                                case "Wang_Fl":
     180                                OutletL.F*vL = 1.84*'m^0.5/s'*lw*((Level-(beta*hw))/(beta))^1.5;
     181                       
     182                                case "Olsen":
     183                                OutletL.F / 'mol/s'= lw*Np*rhoL/sum(Mw*OutletV.z)/(0.665*fw)^1.5 * ((ML*sum(Mw*OutletL.z)/rhoL/Ap)-hw)^1.5 * 'm^0.5/mol';
     184                       
     185                                case "Feehery_Fl":
     186                                OutletL.F = lw*rhoL/sum(Mw*OutletL.z) * ((Level-hw)/750/'mm')^1.5 * 'm^2/s';
     187                       
     188                                case "Roffel_Fl":
     189                                OutletL.F = 2/3*sqrt(2*g)*rhoL/sum(Mw*OutletL.z)*lw*(2*btemp-1)*(ML*sum(Mw*OutletL.z)/(Ap*1.3)/rhoL/(2*btemp-1))^1.5;
     190                        end
    158191                when Level < (beta * hw) switchto "off";
    159192               
     
    163196                when Level > (beta * hw) + 1e-6*'m' switchto "on";
    164197        end
     198       
     199        btemp = 1 - 0.3593/'Pa^0.0888545'*(OutletV.F*sum(Mw*OutletV.z)/(Ap*1.3)/sqrt(rhoV))^0.177709; #/'(kg/m)^0.0888545/s^0.177709';
    165200
    166201        switch VapourFlow
     
    170205                                InletV.F*vV = sqrt((InletV.P - OutletV.P)/(rhoV*alfa))*Ah;
    171206                       
    172                                 case "Feehery":
     207                                case "Feehery_Fv":
    173208                                InletV.F = rhoV/Ap/w/sum(Mw*OutletV.z) * sqrt(((InletV.P - OutletV.P)-(rhoV*g*ML*vL/Ap))/rhoV);
    174209                       
    175                                 case "Roffel":
    176                                 InletV.F^1.08 * 0.0013 * 'kg/m/mol^1.08/s^0.92' = (InletV.P - OutletV.P) - (beta*sum(M*Mw)/(Ap*1)*g) * (rhoV*Ah/sum(Mw*OutletV.z))^1.08 * 'm^1.08/mol^1.08';
     210                                case "Roffel_Fv":
     211                                InletV.F^1.08 * 0.0013 * 'kg/m/mol^1.08/s^0.92*1e5' = (InletV.P - OutletV.P)*1e5 - (beta*sum(M*Mw)/(Ap*1.3)*g*1e5) * (rhoV*Ah/sum(Mw*OutletV.z))^1.08 * 'm^1.08/mol^1.08';
     212                       
     213                                case "Klingberg":
     214                                InletV.F * vV = Ap * sqrt(((InletV.P - OutletV.P)-rhoL*g*Level)/rhoV);
     215                       
     216                                case "Wang_Fv":
     217                                InletV.F * vV = Ap * sqrt(((InletV.P - OutletV.P)-rhoL*g*Level)/rhoV*alfa);
     218                               
     219                                case "Elgue":
     220                                InletV.F  = sqrt((InletV.P - OutletV.P)/btray);
    177221                        end
    178222                when InletV.F < 1e-6 * 'kmol/h' switchto "off";
Note: See TracChangeset for help on using the changeset viewer.