modelEquilibriumPI

equilibrium model using PI controller

Extends from ThermalSeparation.FilmModel.BaseClasses.BaseFilmModel (base class for film model where no source term for the reaction exists).

Information


There is the possiblity to assume thermodynamic equilibrium on each stage. This class sets the parameter EQ = true. If so, there is no resistance for mass transfer and the compositions in the bulk phase and at the phase boundary are the same. However for numerical reasons nevertheless a molar flow rate N_dot of each component is calculated using the equation

N_dot = K · (x_star-x) for each component i.

The factor K shall be chosen high enough to ensure that x_star → x for every component. However if K is too high the simulation becomes very slow or - even worse - the nonlinear solver fails to solve the problem. Also the optimal value for K may change during the simulation. Therefore only a start value for K is given by the user and then K is adapted using a PI controller. Up to now there is only one PI controller for the vapour phase and one for the liquid phase. The PI controller aims to get the maximum difference of the (x_star-x) of all substances on the first stage to zero.


Murhpree tray efficiency

This model also includes the Murphree tray efficiency. The Murphree efficiency ηMurphree is only used for tray columns (for packed columns the efficiency is set to one) and used together with an equilibrium model (parameter EQ=true): in this case it is said that the thermodynamic equilibrium is attained on every plate (plate column). However, if this is not the case but detailed information for a mass transfer model is missing, than the deviation from equilibrium can be expressed using the Murphree efficiency. The Murphree efficiency is defined as the ratio of the real concentration change on the tray to the maximal concentration change (which would be if equilibrium was obtained). The tray efficiency takes a concentration gradient in the liquid on the tray into account: The composition at the tray outlet is different than the composition on the tray (which is not modelled here: in the model for one stage the composition in the stage equals the composition at the stage outlet). Therefore it is possible for the tray efficiency to become greater than 1 (see for example Perry: Perry's chemical engineers' handbook, 8th ed.). If no equilibrium model is used, ηMurphree is set to one. In a binary mixture ηMurphree is equal for both components; in a multicomponent mixture the efficiency is different for every component and can vary between -inf and inf.

Parameters

TypeNameDefaultDescription
IntegernSL (from BaseFilmModel)MediumLiquid.nSubstance
IntegernSV (from BaseFilmModel)MediumVapour.nSubstance
BooleanenableDialog (from BaseFilmModel)true
BooleanStartUp_CCS (from BaseFilmModel)false
BooleanEQ (from BaseFilmModel)
RealfactorHT1e8factor for heat transfer corresponding to alpha*area
Propagated from Column › These variables are propagated from the column model and do not have to be set by the user!
Boolean[nSV]inertVapour (from BaseFilmModel)fill(false, nSV)
Boolean[nSL]inertLiquid (from BaseFilmModel)fill(false, nSL)
Integern (from BaseFilmModel)
IntegernS (from BaseFilmModel)
Integer[nS,2]mapping (from BaseFilmModel){{i, i} for i in 1:nS}
SI.TemperatureT_ref (from BaseFilmModel)
BooleanconsiderStartUp (from BaseFilmModel)false
SI.Timedelay_startUp (from BaseFilmModel)200
Booleansmooth_startUp (from BaseFilmModel)false
Boolean[nSV]lowBoilingPoint (from BaseFilmModel)fill(false, nSV)
Heat and Mass Transfer › Equilibrium
Realk_vap1e4gain of PI controller
RealT_vap0.01time constant of PI controller
RealK_start_vap1start value for output of PI controller
Realk_liq1e4gain of PI controller
RealT_liq0.1time constant of PI controller
RealK_start_liq1e-2start value for output of PI controller

Components

TypeNameDefaultDescription
MediumVapour.ThermodynamicPropertiespropsVap (from BaseFilmModel)
SI.MoleFraction[n,nSV]x_v_star (from BaseFilmModel)
MediumVapour.ThermodynamicStatestateVap (from BaseFilmModel)
SI.MoleFraction[nSV]x_v_in (from BaseFilmModel)
SI.Concentration[n,nSV]c_v_star (from BaseFilmModel)
SI.MoleFraction[n,nSL]x_l (from BaseFilmModel)
SI.MoleFraction[n,nSV]x_v (from BaseFilmModel)
SI.Pressure[n,nSL]p_sat (from BaseFilmModel)
MediumLiquid.ThermodynamicPropertiespropsLiq (from BaseFilmModel)
MediumLiquid.ThermodynamicStatestateLiq (from BaseFilmModel)
SI.MoleFraction[n,nSL]x_l_star (from BaseFilmModel)
SI.Concentration[n,nSL]c_l (from BaseFilmModel)
SI.Concentration[n,nSL]c_l_star (from BaseFilmModel)
Real[n,nSL]eta_comp (from BaseFilmModel)
Real[n,nSL]gamma (from BaseFilmModel)
SI.MoleFraction[n,nS]x_vap_liq (from BaseFilmModel)
SI.Concentration[nSV]c_v_in (from BaseFilmModel)
SI.Concentration[n,nSV]c_v (from BaseFilmModel)
SI.VolumeFlowRateVdot_v_in (from BaseFilmModel)
SI.VolumeFlowRate[n]Vdot_v (from BaseFilmModel)
SI.VolumeFlowRate[n]Vdot_l (from BaseFilmModel)
Real[n]eps_liq (from BaseFilmModel)
SI.MolarFlowRate[n,nSL]Ndot_l_transfer (from BaseFilmModel)
SI.MolarFlowRate[n,nSV]Ndot_v_transfer (from BaseFilmModel)positive when entering the bulk phase
SI.HeatFlowRate[n]Edot_l_transfer (from BaseFilmModel)
SI.HeatFlowRate[n]Edot_v_transfer (from BaseFilmModel)
SI.Pressure[n + 1]p_hyd (from BaseFilmModel)
SI.Pressure[n + 1]p_v (from BaseFilmModel)
SI.Temperature[n]T_star (from BaseFilmModel)
Real[n]omega (from BaseFilmModel)
Boolean[n]startUp (from BaseFilmModel)
Boolean[n]before_transition (from BaseFilmModel)
Realk (from BaseFilmModel)
Real[n,nSL]rel_dev_liq (from BaseFilmModel)relative deviation from equilibrium, liquid
Real[n,nSV]rel_dev_vap (from BaseFilmModel)relative deviation from equilibrium, vapour
Realmax_rel_dev_liq (from BaseFilmModel)max(rel_dev_liq)maximum relative deviation from equilibrium, liquid
Realmax_rel_dev_vap (from BaseFilmModel)max(rel_dev_vap)maximum relative deviation from equilibrium, vapour
HomotopyMethodhomotopyMethod (from BaseFilmModel)
Real[n,nS]Kthermodynamic equilibrium constant
SI.Density[n]rho_vpropsVap.rho
SI.MolarMass[n]MM_vpropsVap.MM
ThermoEquilibrium[n]thermoEquilibrium
ThermalSeparation.Utilities.PI_InputPI_vap
ThermalSeparation.Utilities.PI_InputPI_liq
StateSelectionstateSelection
SI.Area[n]A_Iinterfacial area
SI.MoleFractionmax_rel_error_liqmax(vector_liq)
SI.MoleFractionmax_rel_error_vapmax(vector_vap)
Real[n,nSL]vector_liq
Real[n,nSV]vector_vap
SI.HeatFlowRate[n]Qdot_l_transfer
SI.HeatFlowRate[n]Qdot_v_transfer
SI.MoleFraction[n,nSV]x_v_star_eq

Contents

NameDescription
ThermoEquilibrium
StateSelection