Ignore:
File:
1 edited

Legend:

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

    r38 r1  
    134134        if (Level > (beta * hw)) then
    135135                "Francis Equation"
    136                 OutletL.F = 1.84*"m^0.5/s"*lw*((Level-(beta*hw))/(beta))^1.5/vL;
     136                OutletL.F = 1.84*lw*((Level-(beta*hw))/(beta))^1.5/vL;
    137137        else
    138138                "Low level"
     
    142142end
    143143
    144 #*-------------------------------------------------------------------
    145 * Model of a tray with reaction
    146 *-------------------------------------------------------------------*#
    147 Model trayReact
    148 
    149         PARAMETERS
    150 ext PP as CalcObject;
    151 ext NComp as Integer;
    152         V as volume(Brief="Total Volume of the tray");
    153         Q as power (Brief="Rate of heat supply");
    154         Ap as area (Brief="Plate area = Atray - Adowncomer");
    155        
    156         Ah as area (Brief="Total holes area");
    157         lw as length (Brief="Weir length");
    158         g as acceleration (Default=9.81);
    159         hw as length (Brief="Weir height");
    160         beta as fraction (Brief="Aeration fraction");
    161         alfa as fraction (Brief="Dry pressure drop coefficient");
    162 
    163         stoic(NComp) as Real(Brief="Stoichiometric matrix");
    164         Hr as energy_mol;
    165         Pstartup as pressure;
    166        
    167         VARIABLES
    168 in      Inlet as stream;
    169 in      InletL as stream;
    170 in      InletV as stream;
    171 out     OutletL as stream_therm;
    172 out     OutletV as stream_therm;
    173 
    174         yideal(NComp) as fraction;
    175         Emv as Real (Brief = "Murphree efficiency");
    176 
    177         M(NComp) as mol (Brief="Molar Holdup in the tray");
    178         ML as mol (Brief="Molar liquid holdup");
    179         MV as mol (Brief="Molar vapour holdup");
    180         E as energy (Brief="Total Energy Holdup on tray");
    181         vL as volume_mol (Brief="Liquid Molar Volume");
    182         vV as volume_mol (Brief="Vapour Molar volume");
    183         Level as length (Brief="Height of clear liquid on plate");
    184         Vol as volume;
    185        
    186         rhoL as dens_mass;
    187         rhoV as dens_mass;
    188         r as reaction_mol (Brief = "Reaction rate", Unit = "mol/l/s");
    189         C(NComp) as conc_mol (Brief = "Molar concentration", Lower = -1); #, Unit = "mol/l");
    190        
    191         EQUATIONS
    192         "Molar Concentration"
    193         OutletL.z = vL * C;
    194        
    195         "Component Molar Balance"
    196         diff(M)=Inlet.F*Inlet.z + InletL.F*InletL.z + InletV.F*InletV.z
    197                 - OutletL.F*OutletL.z - OutletV.F*OutletV.z + stoic*r*ML*vL;
    198        
    199         "Energy Balance"
    200         diff(E) = ( Inlet.F*Inlet.h + InletL.F*InletL.h + InletV.F*InletV.h
    201                 - OutletL.F*OutletL.h - OutletV.F*OutletV.h + Q ) + Hr * r * vL*ML;
    202        
    203         "Molar Holdup"
    204         M = ML*OutletL.z + MV*OutletV.z;
    205        
    206         "Energy Holdup"
    207         E = ML*OutletL.h + MV*OutletV.h - OutletL.P*V;
    208        
    209         "Mol fraction normalisation"
    210         sum(OutletL.z)= 1.0;
    211        
    212         "Liquid Volume"
    213         vL = PP.LiquidVolume(OutletL.T, OutletL.P, OutletL.z);
    214         "Vapour Volume"
    215         vV = PP.VapourVolume(OutletV.T, OutletV.P, OutletV.z);
    216 
    217         "Thermal Equilibrium"
    218         OutletV.T = OutletL.T;
    219        
    220         "Mechanical Equilibrium"
    221         OutletV.P = OutletL.P;
    222        
    223         "vaporization fraction "
    224         OutletV.v = 1.0;
    225         OutletL.v = 0.0;
    226        
    227         "Level of clear liquid over the weir"
    228         Level = ML*vL/Ap;
    229 
    230         Vol = ML*vL;
    231        
    232         "Liquid Density"
    233         rhoL = PP.LiquidDensity(OutletL.T, OutletL.P, OutletL.z);
    234         "Vapour Density"
    235         rhoV = PP.VapourDensity(InletV.T, InletV.P, InletV.z);
    236 
    237         if (Level > (beta * hw)) then
    238                 "Francis Equation"
    239                 OutletL.F = (1.84*"m^0.5/s"*lw*((Level-(beta*hw))/(beta))^1.5/vL);
    240         else
    241                 "Low level"
    242                 OutletL.F = 0 * "mol/h";
    243         end
    244 
    245                
    246         "Pressure Drop through the tray"
    247         OutletV.F = (1 + tanh(1 * (OutletV.P - Pstartup)/"Pa"))/2 *
    248                 Ah/vV * sqrt(2*(OutletV.P - InletL.P + 1e-8 * "atm") / (alfa*rhoV) );
    249        
    250 
    251         "Chemical Equilibrium"
    252         PP.LiquidFugacityCoefficient(OutletL.T, OutletL.P, OutletL.z)*OutletL.z =
    253                 PP.VapourFugacityCoefficient(OutletV.T, OutletV.P, OutletV.z)*yideal;
    254        
    255         OutletV.z = Emv * (yideal - InletV.z) + InletV.z;
    256        
    257         sum(OutletL.z)= sum(OutletV.z);
    258        
    259         "Geometry Constraint"
    260         V = ML* vL + MV*vV;
    261 end
Note: See TracChangeset for help on using the changeset viewer.