Class DemistingInternal

java.lang.Object
neqsim.process.mechanicaldesign.separator.internals.DemistingInternal
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
DemistingInternalWithDrainage

public class DemistingInternal extends Object implements Serializable
Base class for demisting internals used in separators and gas scrubbers.

Models wire mesh, vane pack, and cyclone demisting devices. Provides methods to calculate allowable gas velocity (Souders-Brown), pressure drop (Euler number), and liquid carry-over fraction.

Typical Euler numbers (Eu):

Typical Euler numbers by demister type
Demister Type Eu
Wire mesh (standard) 100–200
Wire mesh (high-capacity) 50–100
Vane pack (horizontal flow) 20–60
Multi-cyclone 40–80
Version:
1.0
Author:
NeqSim
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private double
    Cross-sectional area available for gas flow [m2].
    private double
    Euler number used for pressure drop calculation [-].
    private double
    Souders-Brown K-factor for maximum allowable gas velocity [m/s].
    (package private) static org.apache.logging.log4j.Logger
    Logger object for class.
    private String
    Name identifier for this internal.
    private static final long
    Serialization version UID.
    private double
    Thickness of the demisting pad [m].
    private String
    Demister type: "wire_mesh", "vane_pack", or "cyclone".
    private double
    Void fraction of the demisting element [-].
    private double
    Wire diameter for wire mesh type [m].
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a DemistingInternal with default parameters.
    Constructs a DemistingInternal with a name.
    Constructs a DemistingInternal with a name and type.
  • Method Summary

    Modifier and Type
    Method
    Description
    private void
    applyTypeDefaults(String demisterType)
    Applies default parameters based on the demister type.
    double
    calcGasVelocity(double gasVelocitySuperficial, double gasDensity, double liquidDensity)
    Calculates the maximum allowable gas velocity through the demister using the Souders-Brown equation.
    double
    calcLiquidCarryOver(double gasVelocity, double maxGasVelocity)
    Calculates the liquid carry-over fraction past the demister.
    double
    calcPressureDrop(double gasVelocity, double gasDensity)
    Calculates the pressure drop across the demister using the Euler number correlation.
    double
    Gets the cross-sectional area available for gas flow.
    double
    Gets the Euler number for pressure drop calculation.
    double
    Gets the Souders-Brown K-factor.
    Gets the name of this demisting internal.
    double
    Gets the thickness of the demisting pad.
    Gets the demister type.
    double
    Gets the void fraction of the demisting element.
    double
    Gets the wire diameter for wire mesh type.
    void
    setArea(double area)
    Sets the cross-sectional area available for gas flow.
    void
    setEuNumber(double euNumber)
    Sets the Euler number for pressure drop calculation.
    void
    setKFactor(double kFactor)
    Sets the Souders-Brown K-factor.
    void
    Sets the name of this demisting internal.
    void
    setThickness(double thickness)
    Sets the thickness of the demisting pad.
    void
    Sets the demister type and applies default parameters for that type.
    void
    setVoidFraction(double voidFraction)
    Sets the void fraction of the demisting element.
    void
    setWireDiameter(double wireDiameter)
    Sets the wire diameter for wire mesh type.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Serialization version UID.
      See Also:
    • logger

      static org.apache.logging.log4j.Logger logger
      Logger object for class.
    • name

      private String name
      Name identifier for this internal.
    • area

      private double area
      Cross-sectional area available for gas flow [m2].
    • euNumber

      private double euNumber
      Euler number used for pressure drop calculation [-].
    • kFactor

      private double kFactor
      Souders-Brown K-factor for maximum allowable gas velocity [m/s]. Typical values: wire mesh 0.05-0.12, vane pack 0.10-0.20, cyclone 0.15-0.30.
    • voidFraction

      private double voidFraction
      Void fraction of the demisting element [-].
    • thickness

      private double thickness
      Thickness of the demisting pad [m].
    • wireDiameter

      private double wireDiameter
      Wire diameter for wire mesh type [m].
    • type

      private String type
      Demister type: "wire_mesh", "vane_pack", or "cyclone".
  • Constructor Details

    • DemistingInternal

      public DemistingInternal()
      Constructs a DemistingInternal with default parameters.
    • DemistingInternal

      public DemistingInternal(String name)
      Constructs a DemistingInternal with a name.
      Parameters:
      name - the name of this demisting internal
    • DemistingInternal

      public DemistingInternal(String name, String type)
      Constructs a DemistingInternal with a name and type.
      Parameters:
      name - the name of this demisting internal
      type - the demister type ("wire_mesh", "vane_pack", or "cyclone")
  • Method Details

    • applyTypeDefaults

      private void applyTypeDefaults(String demisterType)
      Applies default parameters based on the demister type.
      Parameters:
      demisterType - the demister type string
    • calcGasVelocity

      public double calcGasVelocity(double gasVelocitySuperficial, double gasDensity, double liquidDensity)
      Calculates the maximum allowable gas velocity through the demister using the Souders-Brown equation.

      $$ v_{gas,max} = K \sqrt{\frac{\rho_L - \rho_G}{\rho_G}} $$

      Parameters:
      gasVelocitySuperficial - superficial gas velocity [m/s] (not used in max calc, but retained for signature compatibility)
      gasDensity - gas phase density [kg/m3]
      liquidDensity - liquid phase density [kg/m3]
      Returns:
      maximum allowable gas velocity [m/s]
    • calcPressureDrop

      public double calcPressureDrop(double gasVelocity, double gasDensity)
      Calculates the pressure drop across the demister using the Euler number correlation.

      $$ \Delta P = Eu \cdot \frac{1}{2} \rho_G v_{gas}^2 $$

      Parameters:
      gasVelocity - gas velocity through the demister [m/s]
      gasDensity - gas phase density [kg/m3]
      Returns:
      pressure drop [Pa]
    • calcLiquidCarryOver

      public double calcLiquidCarryOver(double gasVelocity, double maxGasVelocity)
      Calculates the liquid carry-over fraction past the demister. Uses a simple exponential decay model based on the ratio of actual velocity to maximum velocity.

      For velocity ratios below 1.0, carry-over is near zero. Above 1.0, carry-over rises rapidly towards 1.0 (flooding).

      Parameters:
      gasVelocity - actual gas velocity [m/s]
      maxGasVelocity - maximum allowable gas velocity [m/s]
      Returns:
      liquid carry-over fraction [0..1], where 0 = no carry-over, 1 = total flooding
    • getName

      public String getName()
      Gets the name of this demisting internal.
      Returns:
      the name
    • setName

      public void setName(String name)
      Sets the name of this demisting internal.
      Parameters:
      name - the name to set
    • getArea

      public double getArea()
      Gets the cross-sectional area available for gas flow.
      Returns:
      area [m2]
    • setArea

      public void setArea(double area)
      Sets the cross-sectional area available for gas flow.
      Parameters:
      area - area [m2]
    • getEuNumber

      public double getEuNumber()
      Gets the Euler number for pressure drop calculation.
      Returns:
      Euler number [-]
    • setEuNumber

      public void setEuNumber(double euNumber)
      Sets the Euler number for pressure drop calculation.
      Parameters:
      euNumber - Euler number [-]
    • getKFactor

      public double getKFactor()
      Gets the Souders-Brown K-factor.
      Returns:
      K-factor [m/s]
    • setKFactor

      public void setKFactor(double kFactor)
      Sets the Souders-Brown K-factor.
      Parameters:
      kFactor - K-factor [m/s]
    • getVoidFraction

      public double getVoidFraction()
      Gets the void fraction of the demisting element.
      Returns:
      void fraction [-]
    • setVoidFraction

      public void setVoidFraction(double voidFraction)
      Sets the void fraction of the demisting element.
      Parameters:
      voidFraction - void fraction [-]
    • getThickness

      public double getThickness()
      Gets the thickness of the demisting pad.
      Returns:
      thickness [m]
    • setThickness

      public void setThickness(double thickness)
      Sets the thickness of the demisting pad.
      Parameters:
      thickness - thickness [m]
    • getWireDiameter

      public double getWireDiameter()
      Gets the wire diameter for wire mesh type.
      Returns:
      wire diameter [m]
    • setWireDiameter

      public void setWireDiameter(double wireDiameter)
      Sets the wire diameter for wire mesh type.
      Parameters:
      wireDiameter - wire diameter [m]
    • getType

      public String getType()
      Gets the demister type.
      Returns:
      demister type string
    • setType

      public void setType(String type)
      Sets the demister type and applies default parameters for that type.
      Parameters:
      type - demister type ("wire_mesh", "vane_pack", or "cyclone")