Class DistillationColumnMechanicalDesign
java.lang.Object
neqsim.process.mechanicaldesign.MechanicalDesign
neqsim.process.mechanicaldesign.distillation.DistillationColumnMechanicalDesign
- All Implemented Interfaces:
Serializable
Mechanical design class for distillation columns.
Handles design calculations for tray-based and packed distillation columns including:
- Column vessel sizing (diameter, height, wall thickness)
- Tray hydraulics (weir loading, flooding, pressure drop)
- Internals design (tray spacing, downcomer area)
- Reboiler and condenser duty requirements
- Version:
- $Id: $Id
- Author:
- AGAS
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate doubleActive area fraction.private intActual number of trays (accounting for efficiency).private doubleColumn internal diameter [m].private doubleColumn tangent-to-tangent height [m].private doubleColumn wall thickness [mm].private doubleCondenser duty [kW].private StringDesign standard code.private doubleDowncomer area fraction.private doubleFlooding factor (0-1, design typically 0.80-0.85).private doubleHole area fraction (for sieve trays).private doubleHole diameter [mm] (for sieve trays).private StringMaterial grade for column shell.private doubleMaximum flooding factor allowed.private doubleMaximum weir loading [m3/hr per m].private intNumber of theoretical trays.private doubleReboiler duty [kW].private static final longSerialization version UID.private doubleTotal column pressure drop [bar].private doubleOverall tray efficiency.private StringTray material.private doubleTray pressure drop [mbar/tray].private doubleTray spacing [m].private StringTray type (sieve, valve, bubble-cap).private doubleWeir height [m].private doubleWeir length [m].private doubleWeir liquid loading [m3/hr per m of weir].Fields inherited from class MechanicalDesign
costEstimate, designStandard, innerDiameter, maxDesignCv, maxDesignDuty, maxDesignGassVolumeFlow, maxDesignOilVolumeFlow, maxDesignPower, maxDesignPressureDrop, maxDesignVelocity, maxDesignVolumeFlow, maxDesignWaterVolumeFlow, minDesignDuty, minDesignGassVolumeFLow, minDesignOilFLow, minDesignPower, minDesignVolumeFLow, minDesignWaterVolumeFLow, moduleHeight, moduleLength, moduleWidth, outerDiameter, tantanLength, wallThickness, weightElectroInstrument, weightNozzle, weightPiping, weightStructualSteel, weightVessel, weigthInternals, weigthVesselShell -
Constructor Summary
ConstructorsConstructorDescriptionConstructor for DistillationColumnMechanicalDesign. -
Method Summary
Modifier and TypeMethodDescriptionvoidcalcDesign.doubleCalculate cost for distillation column.doubleCalculate condenser cost estimate.doubleCalculate reboiler cost estimate.doubleCalculate total column system cost including reboiler and condenser.voidCalculate equipment weight for cost estimation.intGets the actual number of trays.doubleGets the column diameter.doubleGets the column height.doubleGets the column wall thickness.doubleGets the condenser duty.Gets the design standard code.doubleGets the flooding factor.Gets the material grade.doubleGets the maximum flooding factor.intGets the number of theoretical trays.doubleGets the reboiler duty.doubleGets the total column pressure drop.doubleGets the tray efficiency.doubleGets the tray pressure drop.doubleGets the tray spacing.Gets the tray type.doubleGets the weir loading.voidreadDesignSpecifications.private doubleroundToStandardDiameter(double diameter) Rounds diameter to nearest standard vessel diameter.voidsetColumnDiameter(double diameter) Sets the column diameter.voidsetColumnHeight(double height) Sets the column height.voidsetDesignStandardCode(String code) Sets the design standard code.voidsetMaterialGrade(String grade) Sets the material grade.voidsetMaxFloodingFactor(double factor) Sets the maximum flooding factor.voidsetTrayEfficiency(double efficiency) Sets the tray efficiency.voidsetTraySpacing(double spacing) Sets the tray spacing.voidsetTrayType(String type) Sets the tray type.toJson()Export mechanical design data to JSON format.Methods inherited from class MechanicalDesign
addDesignDataSource, calculateCostEstimate, costEstimateToJson, displayResults, equals, generateBillOfMaterials, getApplicableStandards, getBareModuleCost, getCompanySpecificDesignStandards, getConstrutionMaterial, getCorrosionAllowance, getCostEstimate, getDefaultLiquidDensity, getDefaultLiquidViscosity, getDesignCorrosionAllowance, getDesignDataSources, getDesignJointEfficiency, getDesignLimitData, getDesignMaxPressureLimit, getDesignMaxTemperatureLimit, getDesignMinPressureLimit, getDesignMinTemperatureLimit, getDesignStandard, getDuty, getGrassRootsCost, getHeatTransferArea, getInnerDiameter, getInstallationManHours, getJointEfficiency, getLastMarginResult, getMaterialDesignStandard, getMaterialPipeDesignStandard, getMaxAllowableStress, getMaxDesignCv, getMaxDesignGassVolumeFlow, getMaxDesignOilVolumeFlow, getMaxDesignPressure, getMaxDesignPressureDrop, getMaxDesignVelocity, getMaxDesignVolumeFlow, getMaxDesignWaterVolumeFlow, getMaxOperationPressure, getMaxOperationTemperature, getMinDesignGassVolumeFLow, getMinDesignOilFLow, getMinDesignPressure, getMinDesignVolumeFLow, getMinDesignWaterVolumeFLow, getMinOperationPressure, getMinOperationTemperature, getModuleHeight, getModuleLength, getModuleWidth, getOuterDiameter, getPower, getPressureMarginFactor, getProcessEquipment, getPurchasedEquipmentCost, getRecommendedStandards, getResponse, getTantanLength, getTensileStrength, getTotalModuleCost, getVolumeTotal, getWallThickness, getWeightElectroInstrument, getWeightNozzle, getWeightPiping, getWeightStructualSteel, getWeightTotal, getWeightVessel, getWeigthInternals, getWeigthVesselShell, hasDesignStandard, hashCode, initMechanicalDesign, isHasSetCompanySpecificDesignStandards, setCompanySpecificDesignStandards, setConstrutionMaterial, setCorrosionAllowance, setCostEstimateCepci, setCostEstimateLocationFactor, setCostEstimateMaterial, setDefaultLiquidDensity, setDefaultLiquidViscosity, setDesign, setDesignDataSource, setDesignDataSources, setDesignStandard, setDesignStandard, setDesignStandard, setDesignStandard, setDesignStandards, setHasSetCompanySpecificDesignStandards, setInnerDiameter, setJointEfficiency, setMaterialDesignStandard, setMaterialPipeDesignStandard, setMaxDesignCv, setMaxDesignDuty, setMaxDesignGassVolumeFlow, setMaxDesignOilVolumeFlow, setMaxDesignPower, setMaxDesignPressureDrop, setMaxDesignVelocity, setMaxDesignVolumeFlow, setMaxDesignWaterVolumeFlow, setMaxOperationPressure, setMaxOperationTemperature, setMinDesignDuty, setMinDesignGassVolumeFLow, setMinDesignOilFLow, setMinDesignPower, setMinDesignVolumeFLow, setMinDesignWaterVolumeFLow, setMinOperationPressure, setMinOperationTemperature, setModuleHeight, setModuleLength, setModuleWidth, setOuterDiameter, setPressureMarginFactor, setProcessEquipment, setTantanLength, setTensileStrength, setWallThickness, setWeightElectroInstrument, setWeightNozzle, setWeightPiping, setWeightStructualSteel, setWeightTotal, setWeightVessel, setWeigthInternals, setWeigthVesselShell, toCompactJson, validateOperatingEnvelope, validateOperatingEnvelope
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerialization version UID.- See Also:
-
columnDiameter
private double columnDiameterColumn internal diameter [m]. -
columnHeight
private double columnHeightColumn tangent-to-tangent height [m]. -
columnWallThickness
private double columnWallThicknessColumn wall thickness [mm]. -
numberOfTrays
private int numberOfTraysNumber of theoretical trays. -
actualTrays
private int actualTraysActual number of trays (accounting for efficiency). -
trayEfficiency
private double trayEfficiencyOverall tray efficiency. -
traySpacing
private double traySpacingTray spacing [m]. -
weirHeight
private double weirHeightWeir height [m]. -
weirLength
private double weirLengthWeir length [m]. -
downcomberAreaFraction
private double downcomberAreaFractionDowncomer area fraction. -
activeAreaFraction
private double activeAreaFractionActive area fraction. -
holeAreaFraction
private double holeAreaFractionHole area fraction (for sieve trays). -
holeDiameter
private double holeDiameterHole diameter [mm] (for sieve trays). -
floodingFactor
private double floodingFactorFlooding factor (0-1, design typically 0.80-0.85). -
maxFloodingFactor
private double maxFloodingFactorMaximum flooding factor allowed. -
weirLoading
private double weirLoadingWeir liquid loading [m3/hr per m of weir]. -
maxWeirLoading
private double maxWeirLoadingMaximum weir loading [m3/hr per m]. -
trayPressureDrop
private double trayPressureDropTray pressure drop [mbar/tray]. -
totalPressureDrop
private double totalPressureDropTotal column pressure drop [bar]. -
reboilerDuty
private double reboilerDutyReboiler duty [kW]. -
condenserDuty
private double condenserDutyCondenser duty [kW]. -
trayType
Tray type (sieve, valve, bubble-cap). -
materialGrade
Material grade for column shell. -
designStandardCode
Design standard code. -
trayMaterial
Tray material.
-
-
Constructor Details
-
DistillationColumnMechanicalDesign
Constructor for DistillationColumnMechanicalDesign.- Parameters:
equipment- the process equipment for this design
-
-
Method Details
-
readDesignSpecifications
public void readDesignSpecifications()readDesignSpecifications.
- Overrides:
readDesignSpecificationsin classMechanicalDesign
-
calcDesign
-
roundToStandardDiameter
private double roundToStandardDiameter(double diameter) Rounds diameter to nearest standard vessel diameter.- Parameters:
diameter- diameter in meters- Returns:
- nearest standard vessel diameter in meters
-
getColumnDiameter
public double getColumnDiameter()Gets the column diameter.- Returns:
- column diameter in meters
-
setColumnDiameter
public void setColumnDiameter(double diameter) Sets the column diameter.- Parameters:
diameter- column diameter in meters
-
getColumnHeight
public double getColumnHeight()Gets the column height.- Returns:
- column height in meters
-
setColumnHeight
public void setColumnHeight(double height) Sets the column height.- Parameters:
height- column height in meters
-
getColumnWallThickness
public double getColumnWallThickness()Gets the column wall thickness.- Returns:
- wall thickness in mm
-
getNumberOfTrays
public int getNumberOfTrays()Gets the number of theoretical trays.- Returns:
- number of theoretical trays
-
getActualTrays
public int getActualTrays()Gets the actual number of trays.- Returns:
- actual number of trays
-
getTrayEfficiency
public double getTrayEfficiency()Gets the tray efficiency.- Returns:
- tray efficiency (0-1)
-
setTrayEfficiency
public void setTrayEfficiency(double efficiency) Sets the tray efficiency.- Parameters:
efficiency- tray efficiency (0-1)
-
getTraySpacing
public double getTraySpacing()Gets the tray spacing.- Returns:
- tray spacing in meters
-
setTraySpacing
public void setTraySpacing(double spacing) Sets the tray spacing.- Parameters:
spacing- tray spacing in meters
-
getFloodingFactor
public double getFloodingFactor()Gets the flooding factor.- Returns:
- flooding factor (0-1)
-
getMaxFloodingFactor
public double getMaxFloodingFactor()Gets the maximum flooding factor.- Returns:
- maximum flooding factor
-
setMaxFloodingFactor
public void setMaxFloodingFactor(double factor) Sets the maximum flooding factor.- Parameters:
factor- maximum flooding factor (typically 0.80-0.85)
-
getWeirLoading
public double getWeirLoading()Gets the weir loading.- Returns:
- weir loading in m3/hr per m
-
getTrayPressureDrop
public double getTrayPressureDrop()Gets the tray pressure drop.- Returns:
- tray pressure drop in mbar/tray
-
getTotalPressureDrop
public double getTotalPressureDrop()Gets the total column pressure drop.- Returns:
- total pressure drop in bar
-
getReboilerDuty
public double getReboilerDuty()Gets the reboiler duty.- Returns:
- reboiler duty in kW
-
getCondenserDuty
public double getCondenserDuty()Gets the condenser duty.- Returns:
- condenser duty in kW
-
getTrayType
-
setTrayType
Sets the tray type.- Parameters:
type- tray type (sieve, valve, bubble-cap)
-
getMaterialGrade
-
setMaterialGrade
Sets the material grade.- Parameters:
grade- material grade
-
getDesignStandardCode
-
setDesignStandardCode
Sets the design standard code.- Parameters:
code- design standard code
-
calculateWeights
public void calculateWeights()Calculate equipment weight for cost estimation.Calculates column shell weight, head weight, tray weight, and total weight based on dimensions and wall thickness.
-
calculateColumnCost
public double calculateColumnCost()Calculate cost for distillation column.- Returns:
- estimated cost in USD
-
calculateReboilerCost
public double calculateReboilerCost()Calculate reboiler cost estimate.- Returns:
- reboiler cost in USD
-
calculateCondenserCost
public double calculateCondenserCost()Calculate condenser cost estimate.- Returns:
- condenser cost in USD
-
calculateTotalSystemCost
public double calculateTotalSystemCost()Calculate total column system cost including reboiler and condenser.- Returns:
- total system cost in USD
-
toJson
Export mechanical design data to JSON format.This method creates a
MechanicalDesignResponseobject and serializes it to JSON using Gson. The JSON includes equipment identification, weight breakdown, design conditions, dimensions, and materials information.Usage example:
MechanicalDesign mecDesign = separator.getMechanicalDesign(); mecDesign.calcDesign(); String json = mecDesign.toJson();- Overrides:
toJsonin classMechanicalDesign- Returns:
- JSON string representation of the mechanical design
-