Ignore:
File:
1 edited

Legend:

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

    r38 r1  
    122122        OutletL.v = 0.0;
    123123end
    124 
    125 #*-------------------------------------------------------------------
    126 * Condenser with reaction in liquid phase
    127 *--------------------------------------------------------------------*#
    128 Model condenserReact
    129         PARAMETERS
    130 ext PP as CalcObject;
    131 ext NComp as Integer;
    132         V as volume (Brief="Condenser total volume");
    133         Across as area (Brief="Cross Section Area of reboiler");
    134 
    135         stoic(NComp) as Real(Brief="Stoichiometric matrix");
    136         Hr as energy_mol;
    137         Pstartup as pressure;
    138 
    139         VARIABLES
    140 in      InletV as stream;                       #(Brief="Vapour inlet stream");
    141 out     OutletL as stream_therm;        #(Brief="Liquid outlet stream");
    142 out     OutletV as stream_therm;        #(Brief="Vapour outlet stream");
    143 
    144         M(NComp) as mol (Brief="Molar Holdup in the tray");
    145         ML as mol (Brief="Molar liquid holdup");
    146         MV as mol (Brief="Molar vapour holdup");
    147         E as energy (Brief="Total Energy Holdup on tray");
    148         vL as volume_mol (Brief="Liquid Molar Volume");
    149         vV as volume_mol (Brief="Vapour Molar volume");
    150         Level as length (Brief="Level of liquid phase");
    151         Q as heat_rate (Brief="Heat supplied");
    152         Vol as volume;
    153         r as reaction_mol (Brief = "Reaction rate", Unit = "mol/l/s");
    154         C(NComp) as conc_mol (Brief = "Molar concentration", Lower = -1);
    155 
    156         EQUATIONS
    157         "Molar Concentration"
    158         OutletL.z = vL * C;
    159        
    160         "Component Molar Balance"
    161         diff(M) = InletV.F*InletV.z - OutletL.F*OutletL.z
    162                                 - OutletV.F*OutletV.z + stoic*r*ML*vL;
    163 
    164         "Energy Balance"
    165         diff(E) = InletV.F*InletV.h - OutletL.F*OutletL.h
    166                                 - OutletV.F*OutletV.h + Q + Hr * r * ML*vL;
    167 
    168         "Molar Holdup"
    169         M = ML*OutletL.z + MV*OutletV.z;
    170        
    171         "Energy Holdup"
    172         E = ML*OutletL.h + MV*OutletV.h - OutletV.P*V;
    173        
    174         "Mol fraction normalisation"
    175         sum(OutletL.z)=1.0;
    176 
    177         "Liquid Volume"
    178         vL = PP.LiquidVolume(OutletL.T, OutletL.P, OutletL.z);
    179         "Vapour Volume"
    180         vV = PP.VapourVolume(OutletV.T, OutletV.P, OutletV.z);
    181 
    182         "Thermal Equilibrium"
    183         OutletL.T = OutletV.T;
    184 
    185         "Mechanical Equilibrium"
    186         OutletV.P = OutletL.P;
    187 
    188         "Geometry Constraint"
    189         V = ML*vL + MV*vV;
    190 
    191         Vol = ML*vL;
    192        
    193         "Level of liquid phase"
    194         Level = ML*vL/Across;
    195        
    196         "Vapourisation Fraction"
    197         OutletL.v = 0.0;
    198         OutletV.v = 1.0;
    199        
    200         "Chemical Equilibrium"
    201         PP.LiquidFugacityCoefficient(OutletL.T, OutletL.P, OutletL.z)*OutletL.z =
    202         PP.VapourFugacityCoefficient(OutletV.T, OutletV.P, OutletV.z)*OutletV.z;
    203 
    204         sum(OutletL.z)=sum(OutletV.z);
    205 
    206 end
Note: See TracChangeset for help on using the changeset viewer.