Class DehydrationTemplate
java.lang.Object
neqsim.process.design.template.DehydrationTemplate
- All Implemented Interfaces:
ProcessTemplate
Template for creating TEG (Triethylene Glycol) gas dehydration systems.
This template creates a standard TEG dehydration unit consisting of an absorber column, glycol regeneration system, and associated equipment. The design follows industry standards for natural gas dehydration.
Features
- TEG absorber with configurable number of theoretical stages
- Rich glycol flash drum for hydrocarbon recovery
- Glycol-glycol heat exchanger for heat recovery
- Regeneration still with configurable reboiler temperature
- Lean glycol pump and cooler
Usage Example
ProcessBasis basis = new ProcessBasis();
basis.setFeedFluid(wetGasFluid);
basis.setParameter("tegCirculationRate", 5.0); // m3/hr
basis.setParameter("reboilerTemperature", 204.0); // °C
basis.setParameter("numberOfStages", 4);
DehydrationTemplate template = new DehydrationTemplate();
ProcessSystem dehy = template.create(basis);
dehy.run();
Water Content Targets
- Pipeline specification: 7 lb/MMscf
- Cryogenic processing: < 1 ppm
- LNG feed: < 0.1 ppm
- Version:
- 1.0
- Author:
- NeqSim Development Team
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final intDefault number of theoretical stages in absorber.private static final doubleDefault lean glycol temperature in Celsius.private static final doubleDefault lean TEG purity (mass fraction).private static final doubleDefault reboiler temperature in Celsius.private static final doubleDefault TEG circulation rate in m3/hr per MMscfd of gas. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic doublecalculateTEGRate(double gasFlowRate, double inletWaterContent, double outletWaterContent) Calculates required TEG circulation rate for target water content.create(ProcessBasis basis) Create a process system from this template using the given process basis.private SystemInterfacecreateTEGFluid(double purity, double pressure) Creates a TEG fluid for the dehydration system.static doubleestimateEquilibriumWater(double tegPurity, double temperature, double pressure) Estimates equilibrium water content above TEG at given conditions.Get a description of the process template.String[]Get the expected outputs from this process template.getName()Get the template name.String[]Get the required equipment types for this template.booleanisApplicable(SystemInterface fluid) Check if this template is applicable for the given fluid.
-
Field Details
-
DEFAULT_ABSORBER_STAGES
private static final int DEFAULT_ABSORBER_STAGESDefault number of theoretical stages in absorber.- See Also:
-
DEFAULT_REBOILER_TEMP_C
private static final double DEFAULT_REBOILER_TEMP_CDefault reboiler temperature in Celsius.- See Also:
-
DEFAULT_LEAN_TEG_PURITY
private static final double DEFAULT_LEAN_TEG_PURITYDefault lean TEG purity (mass fraction).- See Also:
-
DEFAULT_TEG_RATE_PER_MMSCFD
private static final double DEFAULT_TEG_RATE_PER_MMSCFDDefault TEG circulation rate in m3/hr per MMscfd of gas.- See Also:
-
DEFAULT_LEAN_GLYCOL_TEMP_C
private static final double DEFAULT_LEAN_GLYCOL_TEMP_CDefault lean glycol temperature in Celsius.- See Also:
-
-
Constructor Details
-
DehydrationTemplate
public DehydrationTemplate()Creates a new DehydrationTemplate.
-
-
Method Details
-
create
Create a process system from this template using the given process basis.- Specified by:
createin interfaceProcessTemplate- Parameters:
basis- the process basis containing feed conditions and constraints- Returns:
- a configured ProcessSystem
-
createTEGFluid
Creates a TEG fluid for the dehydration system.- Parameters:
purity- TEG mass fraction (typically 0.98-0.995)pressure- system pressure in bara- Returns:
- TEG fluid system
-
isApplicable
Check if this template is applicable for the given fluid.- Specified by:
isApplicablein interfaceProcessTemplate- Parameters:
fluid- the fluid to check- Returns:
- true if template is applicable
-
getRequiredEquipmentTypes
Get the required equipment types for this template.- Specified by:
getRequiredEquipmentTypesin interfaceProcessTemplate- Returns:
- array of equipment type names
-
getExpectedOutputs
Get the expected outputs from this process template.- Specified by:
getExpectedOutputsin interfaceProcessTemplate- Returns:
- array of output stream names/types
-
getName
Get the template name.- Specified by:
getNamein interfaceProcessTemplate- Returns:
- template name
-
getDescription
Get a description of the process template.- Specified by:
getDescriptionin interfaceProcessTemplate- Returns:
- template description
-
calculateTEGRate
public static double calculateTEGRate(double gasFlowRate, double inletWaterContent, double outletWaterContent) Calculates required TEG circulation rate for target water content.- Parameters:
gasFlowRate- gas flow rate in MMscfdinletWaterContent- inlet water content in lb/MMscfoutletWaterContent- target outlet water content in lb/MMscf- Returns:
- required TEG circulation rate in gal/hr
-
estimateEquilibriumWater
public static double estimateEquilibriumWater(double tegPurity, double temperature, double pressure) Estimates equilibrium water content above TEG at given conditions.- Parameters:
tegPurity- TEG mass fractiontemperature- temperature in Celsiuspressure- pressure in bara- Returns:
- equilibrium water content in lb/MMscf
-