Changeset 615 for branches/gui/eml


Ignore:
Timestamp:
Sep 3, 2008, 4:39:33 PM (15 years ago)
Author:
gerson bicca
Message:

updates

Location:
branches/gui/eml/stage_separators
Files:
2 edited

Legend:

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

    r613 r615  
    6868        outer PP                                                        as Plugin       (Brief = "External Physical Properties", Type="PP");
    6969        outer NComp                                     as Integer;
    70         NTrays                                                          as Integer      (Brief="Number of trays", Default=2);
     70        #NumberOfTrays                                  as Integer      (Brief="Number of trays", Default=2);
     71        NTrays                                                          as Integer      (Brief="Number of trays", Default=2,Hidden=false);
    7172        SpecialTrayIndex(NTrays)        as Integer      (Brief="Number of trays", Default=0,Hidden=true);
    7273        FeedTray                                                        as Integer      (Brief="Number of Feed tray", Default=2);
     
    7778        Mw(NComp)                                               as molweight    (Brief="Component Mol Weight");
    7879       
     80        VapourFlowModel         as Switcher     (Valid = ["Reepmeyer", "Feehery_Fv", "Roffel_Fv", "Klingberg", "Wang_Fv", "Elgue"], Default = "Reepmeyer");
     81        LiquidFlowModel                 as Switcher     (Valid = ["default", "Wang_Fl", "Olsen", "Feehery_Fl", "Roffel_Fl"], Default = "default");
     82       
     83        V                                       as volume               (Brief="Total Volume of the tray");
     84        Q                                       as heat_rate    (Brief="Rate of heat supply");
     85        Ap                              as area                         (Brief="Plate area = Atray - Adowncomer");
    7986
    8087        Ah                              as area                                 (Brief="Total holes area");
     
    9097        VapourFlow                              as Switcher     (Valid = ["on", "off"], Default = "on",Hidden=true);
    9198        LiquidFlow                              as Switcher     (Valid = ["on", "off"], Default = "on",Hidden=true);
    92         VapourFlowModel         as Switcher     (Valid = ["Reepmeyer", "Feehery_Fv", "Roffel_Fv", "Klingberg", "Wang_Fv", "Elgue"], Default = "Reepmeyer");
    93         LiquidFlowModel                 as Switcher     (Valid = ["default", "Wang_Fl", "Olsen", "Feehery_Fl", "Roffel_Fl"], Default = "default");
    9499
    95100SET
     101        #NTrays = NumberOfTrays ;
    96102        top = (NTrays-1)*(1-topdown)/2+1;
    97103        bot = NTrays/top;
     
    99105        Mw = PP.MolecularWeight();
    100106
     107
    101108VARIABLES
    102109        in      Inlet           as stream                               (Brief="Feed stream", PosX=0, PosY=0.50);
     
    109116        out     Vout            as vapour_stream        (Brief="Feed stream", PosX=0.55, PosY=0);
    110117       
    111         LiquidConnector         as stream               (Brief="Feed stream", PosX=0.75, PosY=1,Hidden=true);
     118        LiquidConnector as stream       (Brief="Feed stream", PosX=0.75, PosY=1,Hidden=true);
    112119        VapourConnector as stream       (Brief="Feed stream", PosX=0.55, PosY=0,Hidden=true);
    113120
     
    140147        Lout.P = trays(NTrays).OutletL.P;
    141148        Lout.z = trays(NTrays).OutletL.z;
    142         #Lout.v = trays(NTrays).OutletL.v;
    143 #       Lout.h = trays(NTrays).OutletL.h;
    144149       
    145150        Vout.F= trays(1).OutletV.F;
     
    147152        Vout.P = trays(1).OutletV.P;
    148153        Vout.z = trays(1).OutletV.z;
    149         #Vout.v = trays(1).OutletV.v;
    150         #Vout.h = trays(1).OutletV.h;
    151154
    152155# Connecting Trays
     
    157160        Inlet.v = trays.Inlet.v;
    158161        Inlet.h = trays.Inlet.h;
    159 
     162       
    160163for i in [1:NTrays] do
     164
     165"Level of clear liquid over the weir"
     166        trays(i).Level = trays(i).ML*trays(i).vL/Ap;
     167
     168"Geometry Constraint"
     169        V = trays(i).ML* trays(i).vL + trays(i).MV*trays(i).vV;
     170
     171"Energy Holdup"
     172        trays(i).E = trays(i).ML*trays(i).OutletL.h + trays(i).MV*trays(i).OutletV.h - trays(i).OutletL.P*V;
     173
     174"Energy Balance"
     175        diff(trays(i).E) = ( trays(i).Inlet.F*trays(i).Inlet.h + trays(i).InletL.F*trays(i).InletL.h + trays(i).InletV.F*trays(i).InletV.h- trays(i).OutletL.F*trays(i).OutletL.h - trays(i).OutletV.F*trays(i).OutletV.h + Q );
    161176
    162177switch LiquidFlow
     
    171186                       
    172187                                case "Olsen":
    173                                 trays(i).OutletL.F / 'mol/s'= lw*Np*trays(i).rhoL/sum(Mw*trays(i).OutletV.z)/(0.665*fw)^1.5 * ((trays(i).ML*sum(Mw*trays(i).OutletL.z)/trays(i).rhoL/trays(i).Ap)-hw)^1.5 * 'm^0.5/mol';
     188                                trays(i).OutletL.F / 'mol/s'= lw*Np*trays(i).rhoL/sum(Mw*trays(i).OutletV.z)/(0.665*fw)^1.5 * ((trays(i).ML*sum(Mw*trays(i).OutletL.z)/trays(i).rhoL/Ap)-hw)^1.5 * 'm^0.5/mol';
    174189                       
    175190                                case "Feehery_Fl":
     
    177192                       
    178193                                case "Roffel_Fl":
    179                                 trays(i).OutletL.F = 2/3*sqrt(2*g)*trays(i).rhoL/sum(Mw*trays(i).OutletL.z)*lw*(2*trays(i).btemp-1)*(trays(i).ML*sum(Mw*trays(i).OutletL.z)/(trays(i).Ap*1.3)/trays(i).rhoL/(2*trays(i).btemp-1))^1.5;
     194                                trays(i).OutletL.F = 2/3*sqrt(2*g)*trays(i).rhoL/sum(Mw*trays(i).OutletL.z)*lw*(2*trays(i).btemp-1)*(trays(i).ML*sum(Mw*trays(i).OutletL.z)/(Ap*1.3)/trays(i).rhoL/(2*trays(i).btemp-1))^1.5;
    180195                        end
    181196                when trays(i).Level < (beta *hw) switchto "off";
     
    187202        end
    188203       
    189         trays(i).btemp = 1 - 0.3593/'Pa^0.0888545'*abs(trays(i).OutletV.F*sum(Mw*trays(i).OutletV.z)/(trays(i).Ap*1.3)/sqrt(trays(i).rhoV))^0.177709; #/'(kg/m)^0.0888545/s^0.177709';
     204        trays(i).btemp = 1 - 0.3593/'Pa^0.0888545'*abs(trays(i).OutletV.F*sum(Mw*trays(i).OutletV.z)/(Ap*1.3)/sqrt(trays(i).rhoV))^0.177709; #/'(kg/m)^0.0888545/s^0.177709';
    190205
    191206switch VapourFlow
     
    196211                       
    197212                                case "Feehery_Fv":
    198                                 trays(i).InletV.F = trays(i).rhoV/trays(i).Ap/w/sum(Mw*trays(i).OutletV.z) * sqrt(((trays(i).InletV.P - trays(i).OutletV.P)-(trays(i).rhoV*g*trays(i).ML*trays(i).vL/trays(i).Ap))/trays(i).rhoV);
     213                                trays(i).InletV.F = trays(i).rhoV/Ap/w/sum(Mw*trays(i).OutletV.z) * sqrt(((trays(i).InletV.P - trays(i).OutletV.P)-(trays(i).rhoV*g*trays(i).ML*trays(i).vL/Ap))/trays(i).rhoV);
    199214                       
    200215                                case "Roffel_Fv":
    201                                 trays(i).InletV.F^1.08 * 0.0013 * 'kg/m/mol^1.08/s^0.92*1e5' = (trays(i).InletV.P - trays(i).OutletV.P)*1e5 - (beta*sum(trays(i).M*Mw)/(trays(i).Ap*1.3)*g*1e5) * (trays(i).rhoV*Ah/sum(Mw*trays(i).OutletV.z))^1.08 * 'm^1.08/mol^1.08';
     216                                trays(i).InletV.F^1.08 * 0.0013 * 'kg/m/mol^1.08/s^0.92*1e5' = (trays(i).InletV.P - trays(i).OutletV.P)*1e5 - (beta*sum(trays(i).M*Mw)/(Ap*1.3)*g*1e5) * (trays(i).rhoV*Ah/sum(Mw*trays(i).OutletV.z))^1.08 * 'm^1.08/mol^1.08';
    202217                       
    203218                                case "Klingberg":
    204                                 trays(i).InletV.F * trays(i).vV = trays(i).Ap * sqrt(((trays(i).InletV.P - trays(i).OutletV.P)-trays(i).rhoL*g*trays(i).Level)/trays(i).rhoV);
     219                                trays(i).InletV.F * trays(i).vV = Ap * sqrt(((trays(i).InletV.P - trays(i).OutletV.P)-trays(i).rhoL*g*trays(i).Level)/trays(i).rhoV);
    205220                       
    206221                                case "Wang_Fv":
    207                                 trays(i).InletV.F * trays(i).vV = trays(i).Ap * sqrt(((trays(i).InletV.P - trays(i).OutletV.P)-trays(i).rhoL*g*trays(i).Level)/trays(i).rhoV*alfa);
     222                                trays(i).InletV.F * trays(i).vV = Ap * sqrt(((trays(i).InletV.P - trays(i).OutletV.P)-trays(i).rhoL*g*trays(i).Level)/trays(i).rhoV*alfa);
    208223                               
    209224                                case "Elgue":
  • branches/gui/eml/stage_separators/trayTeste.mso

    r613 r615  
    4040outer PP                        as Plugin               (Brief = "External Physical Properties", Type="PP");
    4141outer NComp     as Integer;
    42         V                                       as volume               (Brief="Total Volume of the tray");
    43         Q                                       as heat_rate    (Brief="Rate of heat supply");
    44         Ap                              as area                         (Brief="Plate area = Atray - Adowncomer");
    45        
     42
    4643VARIABLES
    4744
     
    6562        "Component Molar Balance"
    6663        diff(M)=Inlet.F*Inlet.z + InletL.F*InletL.z + InletV.F*InletV.z- OutletL.F*OutletL.z - OutletV.F*OutletV.z;
    67        
    68 "Energy Balance"
    69         diff(E) = ( Inlet.F*Inlet.h + InletL.F*InletL.h + InletV.F*InletV.h- OutletL.F*OutletL.h - OutletV.F*OutletV.h + Q );
    70        
     64
    7165"Molar Holdup"
    7266        M = ML*OutletL.z + MV*OutletV.z;
    73        
    74 "Energy Holdup"
    75         E = ML*OutletL.h + MV*OutletV.h - OutletL.P*V;
    76        
     67
    7768"Mol fraction normalisation"
    7869        sum(OutletL.z)= 1.0;
    7970        sum(OutletL.z)= sum(OutletV.z);
    80        
     71
    8172"Liquid Volume"
    8273        vL = PP.LiquidVolume(OutletL.T, OutletL.P, OutletL.z);
    83        
     74
    8475"Vapour Volume"
    8576        vV = PP.VapourVolume(OutletV.T, OutletV.P, OutletV.z);
    86        
     77
    8778"Chemical Equilibrium"
    8879        PP.LiquidFugacityCoefficient(OutletL.T, OutletL.P, OutletL.z)*OutletL.z = PP.VapourFugacityCoefficient(OutletV.T, OutletV.P, yideal)*yideal;
     
    9081"Murphree Efficiency"
    9182        OutletV.z = Emv * (yideal - InletV.z) + InletV.z;
    92        
     83
    9384"Thermal Equilibrium"
    9485        OutletV.T = OutletL.T;
    95        
     86
    9687"Mechanical Equilibrium"
    9788        OutletV.P = OutletL.P;
    98        
    99 "Geometry Constraint"
    100         V = ML* vL + MV*vV;
    101        
    102 "Level of clear liquid over the weir"
    103         Level = ML*vL/Ap;
    10489
    10590end
Note: See TracChangeset for help on using the changeset viewer.