Changeset 872 for branches/gui/eml


Ignore:
Timestamp:
Oct 29, 2009, 12:23:40 PM (13 years ago)
Author:
gerson bicca
Message:

added volume sizing for dynamic condenser model

File:
1 edited

Legend:

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

    r834 r872  
    303303        outer NComp     as Integer (Brief="Number of Components");
    304304       
     305        pi                      as positive             (Brief="Pi value", Default=3.141593,Hidden=true, Symbol="\pi");
     306        g                               as acceleration (Brief="Gravity Acceleration",Default=9.81,Hidden=true);
     307       
     308        Orientation     as Switcher (Valid=["vertical","horizontal"],Default="vertical");
     309        Heads                   as Switcher (Valid=["elliptical","hemispherical"],Default="elliptical");
     310
     311        Diameter                as length       (Brief="Vessel diameter", Symbol="D_{i}");
     312        Lenght                  as length       (Brief="Side length of the cylinder shell", Symbol="L_{vessel}");
     313       
     314        Vhead_elliptical                as volume       (Brief="Elliptical Head Total Volume",Hidden=true, Symbol="V_{head}^{elliptical}");
     315        Vhead_hemispherical     as volume       (Brief="Hemispherical Head Total Volume",Hidden=true, Symbol="V_{head}^{hemispherical}");
     316        Vcylinder                               as volume       (Brief="Cylinder Total Volume",Hidden=true, Symbol="V_{cylinder}");
     317        radius                                  as length       (Brief="Vessel radius",Hidden=true, Symbol="R_{cylinder}");
     318       
    305319        Mw(NComp)       as molweight    (Brief = "Component Mol Weight",Hidden=true);
    306320        low_flow        as flow_mol     (Brief = "Low Flow",Default = 1E-6, Hidden=true);
     
    310324        VapourFlow      as Switcher     (Brief="Vapour Flow", Valid = ["on", "off"], Default = "on",Hidden=true);
    311325
    312         V               as volume       (Brief="Condenser total volume");
    313         Across  as area         (Brief="Cross Section Area of condenser");
    314326        Kfactor as positive (Brief="K factor for pressure drop", Lower = 1E-8, Default = 1E-3);
    315327       
     
    339351        Pdrop           as press_delta  (Brief = "Pressure Drop", DisplayUnit = 'kPa', Symbol ="\Delta P", Protected=true);
    340352
     353        Vtotal                  as volume       (Brief="Vessel total volume",Protected=true, Symbol="V_{total}");
     354        Vfilled                 as volume       (Brief="Vessel volume content",Protected=true, Symbol="V_{filled}");
     355        Across                  as area         (Brief="Cross Section Area of condenser",Protected=true);
     356
    341357SET
     358        pi = 3.141593;
     359        g = 9.81 * 'm/(s^2)';
     360        Vhead_elliptical        = (pi*Diameter^3)/12;
     361        Vhead_hemispherical = (pi*Diameter^3)/6;
     362        Vcylinder = 0.25*(pi*Diameter^2)*Lenght;
     363        radius = 0.5*Diameter;
    342364
    343365        Mw   = PP.MolecularWeight();
     
    359381EQUATIONS
    360382
     383switch Orientation
     384
     385case "vertical":
     386
     387"Vessel Cross Section Area"
     388        Across = 0.25*(pi*Diameter^2);
     389
     390switch Heads
     391
     392case "elliptical":
     393
     394"Vessel Total Volume"
     395        Vtotal = Vhead_elliptical +     Vcylinder;
     396
     397if Level < 0.25*Diameter then
     398
     399"Vessel Filled Volume"
     400        Vfilled = 0.25*pi*(((Diameter*Level)/(0.25*Diameter))^2)*(0.25*Diameter-Level/3);
     401
     402else
     403
     404"Vessel Filled Volume"
     405        Vfilled = 0.25*pi*(Diameter^2)*(Level - 0.25*Diameter/3);
     406
     407end
     408
     409case "hemispherical":
     410
     411"Vessel Total Volume"
     412        Vtotal = Vhead_hemispherical + Vcylinder;
     413
     414if Level < 0.5*Diameter then
     415
     416"Vessel Filled Volume"
     417        Vfilled = 0.25*pi*(Level^2)*(2*Diameter-4*Level/3);
     418
     419else
     420
     421"Vessel Filled Volume"
     422        Vfilled = 0.25*pi*((2/3)*((0.5*Diameter)^3) - (0.25*(Diameter)^3) + Level*Diameter^2);
     423
     424end
     425
     426end
     427
     428case "horizontal":
     429
     430"Vessel Cross Section Area"
     431        Across = (radius^2)*acos((radius-Level)/radius)-(radius-Level)*sqrt((2*radius*Level-Level^2));
     432
     433switch Heads
     434
     435case "elliptical":
     436
     437"Vessel Total Volume"
     438        Vtotal = Vhead_elliptical +     Vcylinder;
     439
     440"Vessel Filled Volume"
     441        Vfilled = 0.5236*Level^2*(1.5*Diameter-Level) + Across*Lenght;
     442
     443case "hemispherical":
     444
     445"Vessel Total Volume"
     446        Vtotal = Vhead_hemispherical + Vcylinder;
     447
     448"Vessel Filled Volume"
     449        Vfilled = 1.0472*Level^2*(1.5*Diameter-Level) + Across*Lenght;
     450
     451end
     452
     453end
     454
    361455switch VapourFlow
    362456
     
    383477       
    384478"Energy Holdup"
    385         E = ML*OutletLiquid.h + MV*OutletVapour.h - OutletVapour.P*V;
     479        E = ML*OutletLiquid.h + MV*OutletVapour.h - OutletVapour.P*Vtotal;
    386480       
    387481"Mol fraction normalisation"
     
    414508
    415509"Geometry Constraint"
    416         V = ML*vL + MV*vV;
    417 
    418 "Level of liquid phase"
    419         Level = ML*vL/Across;
     510        Vtotal = ML*vL + MV*vV;
     511
     512"Liquid Level"
     513        ML * vL = Vfilled;
    420514
    421515"Temperature indicator"
     
    426520
    427521"Level indicator"
    428         LI*V = Level*Across;
    429        
    430 end
     522        LI*Vtotal= Vfilled;
     523       
     524end
Note: See TracChangeset for help on using the changeset viewer.