Ignore:
File:
1 edited

Legend:

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

    r42 r64  
    131131        Fout = k*sqrt(h);               
    132132end
     133
     134Model tank_feed
     135
     136        PARAMETERS
     137ext PP as CalcObject;
     138ext NComp as Integer;
     139        Across as area (Brief="Tank cross section area", Default=2);
     140       
     141        VARIABLES
     142in      Feed as stream;
     143in      Inlet as stream;
     144out     Outlet as stream_therm;
     145
     146in      Q as heat_rate (Brief="Rate of heat supply");
     147        Level    as length(Brief="Tank level");
     148        M(NComp) as mol (Brief="Molar Holdup in the tank");
     149        E as energy (Brief="Total Energy Holdup on tank");
     150        vL as volume_mol (Brief="Liquid Molar Volume");
     151
     152        EQUATIONS
     153        "Mass balance"
     154        diff(M) = Feed.F*Feed.z + Inlet.F*Inlet.z - Outlet.F*Outlet.z;
     155       
     156        "Energy balance"
     157        diff(E) = Feed.F*Feed.h + Inlet.F*Inlet.h - Outlet.F*Outlet.h + Q;
     158
     159        "Energy Holdup"
     160        E = sum(M)*Outlet.h;
     161
     162        "Mechanical Equilibrium"
     163        Inlet.P = Outlet.P;
     164       
     165        "Liquid Volume"
     166        vL = PP.LiquidVolume(Outlet.T, Outlet.P, Outlet.z);
     167       
     168        "Composition"
     169        M = Outlet.z*sum(M);
     170       
     171        "Level of liquid phase"
     172        Level = sum(M)*vL/Across;
     173       
     174        "Vapourisation Fraction"
     175        Outlet.v = Inlet.v;
     176       
     177end
Note: See TracChangeset for help on using the changeset viewer.