Class EndFlash

All Implemented Interfaces:
Serializable, Runnable, AutoSizeable, CapacityConstrainedEquipment, ProcessEquipmentInterface, SeparatorInterface, StateVectorProvider, ProcessElementInterface, SimulationInterface, NamedInterface

public class EndFlash extends Separator
End flash drum model for LNG production.

The end flash drum is the final separation stage in an LNG plant. Sub-cooled LNG from the main cryogenic heat exchanger (MCHE) is letdown to near-atmospheric pressure, causing flash evaporation. The flash gas (rich in nitrogen) is separated from the LNG product.

This class extends Separator and adds:

  • N2 content tracking in LNG product and flash gas
  • LNG product specification checking (max N2 per ISO 16903)
  • Flash gas fuel value assessment
  • LNG heating value calculation
Version:
1.0
Author:
NeqSim
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • logger

      private static final org.apache.logging.log4j.Logger logger
    • maxN2InLNG

      private double maxN2InLNG
      Maximum allowable N2 mole fraction in LNG product (ISO 16903 limit).
    • n2InLNGMolFrac

      private double n2InLNGMolFrac
      Actual N2 mole fraction in LNG product.
    • n2InFlashGasMolFrac

      private double n2InFlashGasMolFrac
      N2 mole fraction in flash gas.
    • methaneInLNGMolFrac

      private double methaneInLNGMolFrac
      Methane mole fraction in LNG product.
    • lngSpecMet

      private boolean lngSpecMet
      Whether LNG product meets N2 specification.
    • flashGasRatio

      private double flashGasRatio
      Flash gas to feed ratio (molar).
  • Constructor Details

    • EndFlash

      public EndFlash(String name)
      Constructor for EndFlash.
      Parameters:
      name - name of the end flash drum
    • EndFlash

      public EndFlash(String name, StreamInterface inletStream)
      Constructor for EndFlash with inlet stream.
      Parameters:
      name - name of the end flash drum
      inletStream - inlet sub-cooled LNG stream
  • Method Details

    • setMaxN2InLNG

      public void setMaxN2InLNG(double maxFraction)
      Set the maximum allowable N2 mole fraction in the LNG product.
      Parameters:
      maxFraction - maximum N2 mole fraction (default 0.01 = 1%)
    • getMaxN2InLNG

      public double getMaxN2InLNG()
      Get the maximum allowable N2 mole fraction.
      Returns:
      maximum N2 mole fraction
    • getN2InLNGMolFrac

      public double getN2InLNGMolFrac()
      Get the N2 mole fraction in the LNG product.
      Returns:
      N2 mole fraction
    • getN2InFlashGasMolFrac

      public double getN2InFlashGasMolFrac()
      Get the N2 mole fraction in the flash gas.
      Returns:
      N2 mole fraction
    • getMethaneInLNGMolFrac

      public double getMethaneInLNGMolFrac()
      Get the methane mole fraction in the LNG product.
      Returns:
      methane mole fraction
    • isLNGSpecMet

      public boolean isLNGSpecMet()
      Check whether the LNG product meets the N2 specification.
      Returns:
      true if N2 in LNG is within limit
    • getFlashGasRatio

      public double getFlashGasRatio()
      Get the flash gas to feed ratio (moles of flash gas / moles of feed).
      Returns:
      flash gas ratio
    • run

      public void run(UUID id)

      In this method all thermodynamic and unit operations will be calculated in a steady state calculation.

      Specified by:
      run in interface SimulationInterface
      Overrides:
      run in class Separator
      Parameters:
      id - UUID
    • analyseFlashGas

      private void analyseFlashGas(SystemInterface gasSystem)
      Analyse the flash gas composition.
      Parameters:
      gasSystem - flash gas thermodynamic system
    • analyseLNGProduct

      private void analyseLNGProduct(SystemInterface liqSystem)
      Analyse the LNG product composition.
      Parameters:
      liqSystem - LNG product thermodynamic system