Changeset 755 for branches/gui/eml


Ignore:
Timestamp:
Jun 2, 2009, 4:45:51 PM (14 years ago)
Author:
gerson bicca
Message:

added a dynamic model of a condenser with splitter to be used in column models (not finished)

File:
1 edited

Legend:

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

    r735 r755  
    269269
    270270end
     271
     272Model condenser_column
     273        ATTRIBUTES
     274        Pallete         = true;
     275        Icon            = "icon/Condenser_column";
     276        Brief           = "Model of a  dynamic condenser with splitter.";
     277        Info            =
     278"== Assumptions ==
     279* perfect mixing of both phases;
     280* thermodynamics equilibrium.
     281       
     282== Specify ==
     283* the inlet stream;
     284* the outlet flows: OutletVapour.F and OutletLiquid.F;
     285* the heat supply.
     286       
     287== Initial Conditions ==
     288* the condenser temperature (OutletLiquid.T);
     289* the condenser liquid level (Level);
     290* (NoComps - 1) OutletLiquid (OR OutletVapour) compositions.
     291";     
     292       
     293PARAMETERS
     294        outer PP                        as Plugin       (Brief = "External Physical Properties", Type="PP");
     295        outer NComp     as Integer;
     296
     297        V                       as volume       (Brief="Condenser total volume");
     298        Across  as area                         (Brief="Cross Section Area of reboiler");
     299       
     300        Initial_Level                           as length                       (Brief="Initial Level of liquid phase");
     301        Initial_Temperature                     as temperature          (Brief="Initial Temperature of Condenser");
     302        Initial_Composition(NComp)      as fraction             (Brief="Initial Liquid Composition");
     303       
     304VARIABLES
     305in              InletVapour             as stream                               (Brief="Vapour inlet stream", PosX=0, PosY=0.5, Symbol="_{inV}");
     306out     OutletLiquid    as liquid_stream                (Brief="Liquid outlet stream", PosX=0.5, PosY=1, Symbol="_{outL}");
     307out     OutletVapour    as vapour_stream        (Brief="Vapour outlet stream", PosX=0.5, PosY=0, Symbol="_{outV}");
     308in              InletQ          as power                                (Brief="Cold supplied", PosX=1, PosY=0.6, Symbol="_{in}");
     309
     310        M(NComp)        as mol                          (Brief="Molar Holdup in the tray");
     311        ML                              as mol                          (Brief="Molar liquid holdup");
     312        MV                              as mol                          (Brief="Molar vapour holdup");
     313        E                                       as energy                       (Brief="Total Energy Holdup on tray");
     314        vL                              as volume_mol   (Brief="Liquid Molar Volume");
     315        vV                              as volume_mol   (Brief="Vapour Molar volume");
     316        Level                   as length                       (Brief="Level of liquid phase");
     317
     318INITIAL
     319
     320        Level                                   = Initial_Level;
     321        OutletLiquid.T                          = Initial_Temperature;
     322        OutletLiquid.z(1:NComp-1)       = Initial_Composition(1:NComp-1)/sum(Initial_Composition);
     323       
     324EQUATIONS
     325"Component Molar Balance"
     326        diff(M) = InletVapour.F*InletVapour.z - OutletLiquid.F*OutletLiquid.z- OutletVapour.F*OutletVapour.z;
     327
     328"Energy Balance"
     329        diff(E) = InletVapour.F*InletVapour.h - OutletLiquid.F*OutletLiquid.h- OutletVapour.F*OutletVapour.h + InletQ;
     330
     331"Molar Holdup"
     332        M = ML*OutletLiquid.z + MV*OutletVapour.z;
     333       
     334"Energy Holdup"
     335        E = ML*OutletLiquid.h + MV*OutletVapour.h - OutletVapour.P*V;
     336       
     337"Mol fraction normalisation"
     338        sum(OutletLiquid.z)=1.0;
     339        sum(OutletLiquid.z)=sum(OutletVapour.z);
     340
     341"Liquid Volume"
     342        vL = PP.LiquidVolume(OutletLiquid.T, OutletLiquid.P, OutletLiquid.z);
     343       
     344"Vapour Volume"
     345        vV = PP.VapourVolume(OutletVapour.T, OutletVapour.P, OutletVapour.z);
     346
     347"Chemical Equilibrium"
     348        PP.LiquidFugacityCoefficient(OutletLiquid.T, OutletLiquid.P, OutletLiquid.z)*OutletLiquid.z =
     349                PP.VapourFugacityCoefficient(OutletVapour.T, OutletVapour.P, OutletVapour.z)*OutletVapour.z;
     350
     351"Thermal Equilibrium"
     352        OutletLiquid.T = OutletVapour.T;
     353
     354"Mechanical Equilibrium"
     355        OutletVapour.P = OutletLiquid.P;
     356
     357"Geometry Constraint"
     358        V = ML*vL + MV*vV;
     359
     360"Level of liquid phase"
     361        Level = ML*vL/Across;
     362
     363end
Note: See TracChangeset for help on using the changeset viewer.