Class ColumnCostEstimate
java.lang.Object
neqsim.process.costestimation.UnitCostEstimateBaseClass
neqsim.process.costestimation.column.ColumnCostEstimate
- All Implemented Interfaces:
Serializable
Cost estimation class for distillation and absorption columns.
This class provides column-specific cost estimation methods using chemical engineering cost correlations for trayed and packed columns. Includes costs for internals, reboiler, and condenser.
- Version:
- 1.0
- Author:
- AGAS
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate doubleColumn diameter in meters.private doubleColumn height in meters.private StringColumn type.private doubleCondenser duty in kW.private doubleDesign pressure in barg.private booleanInclude condenser in cost.private booleanInclude reboiler in cost.private intNumber of trays.private doublePacking height in meters.private StringPacking type.private doubleReboiler duty in kW.private static final longSerialization version UID.private StringTray type.Fields inherited from class UnitCostEstimateBaseClass
annualOperatingCost, bareModuleCost, costCalculator, equipmentType, grassRootsCost, installationManHours, mechanicalEquipment, purchasedEquipmentCost, totalModuleCost -
Constructor Summary
ConstructorsConstructorDescriptionColumnCostEstimate(MechanicalDesign mechanicalEquipment) Constructor for ColumnCostEstimate. -
Method Summary
Modifier and TypeMethodDescriptiondoublecalcAnnualUtilityCost(double hoursPerYear, double steamCostPerTonne, double coolingWaterCostPerM3) Calculate annual utility cost for reboiler and condenser.private doubleCalculate column shell cost.doubleCalculate column weight.private doubleCalculate condenser cost.private doubleCalculate liquid distributor cost.private doubleCalculate packing cost.protected doubleCalculate purchased equipment cost.private doubleCalculate reboiler cost.private doubleCalculate trays cost.private doubleEstimate wall thickness based on diameter and pressure.doubleGet column diameter.Get column type.Get cost breakdown as map.private doubleGet pressure factor for shell cost.doubleGet total cost using simple weight-based method.voidsetColumnDiameter(double diameter) Set column diameter.voidsetColumnHeight(double height) Set column height.voidsetColumnType(String type) Set column type.voidsetCondenserDuty(double duty) Set condenser duty.voidsetDesignPressure(double pressure) Set design pressure.voidsetIncludeCondenser(boolean include) Set whether to include condenser.voidsetIncludeReboiler(boolean include) Set whether to include reboiler.voidsetNumberOfTrays(int trays) Set number of trays.voidsetPackingHeight(double height) Set packing height.voidsetPackingType(String type) Set packing type.voidsetReboilerDuty(double duty) Set reboiler duty.voidsetTrayType(String type) Set tray type.Methods inherited from class UnitCostEstimateBaseClass
calcAnnualOperatingCost, calculateCostEstimate, equals, generateBillOfMaterials, getBareModuleCost, getCostCalculator, getCostPerWeightUnit, getEquipmentType, getGrassRootsCost, getInstallationManHours, getMaterialFactor, getMaterialGrade, getPurchasedEquipmentCost, getTotalModuleCost, hashCode, setCostCalculator, setCostPerWeightUnit, setCurrentCepci, setEquipmentType, setLocationFactor, setMaterialOfConstruction, toCompactJson, toJson, toMap
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerialization version UID.- See Also:
-
columnType
Column type. -
trayType
Tray type. -
packingType
Packing type. -
columnDiameter
private double columnDiameterColumn diameter in meters. -
columnHeight
private double columnHeightColumn height in meters. -
numberOfTrays
private int numberOfTraysNumber of trays. -
packingHeight
private double packingHeightPacking height in meters. -
designPressure
private double designPressureDesign pressure in barg. -
includeReboiler
private boolean includeReboilerInclude reboiler in cost. -
includeCondenser
private boolean includeCondenserInclude condenser in cost. -
reboilerDuty
private double reboilerDutyReboiler duty in kW. -
condenserDuty
private double condenserDutyCondenser duty in kW.
-
-
Constructor Details
-
ColumnCostEstimate
Constructor for ColumnCostEstimate.- Parameters:
mechanicalEquipment- the column mechanical design
-
-
Method Details
-
setColumnType
Set column type.- Parameters:
type- column type ("trayed", "packed")
-
getColumnType
-
setTrayType
Set tray type.- Parameters:
type- tray type ("sieve", "valve", "bubble-cap")
-
setPackingType
Set packing type.- Parameters:
type- packing type ("structured", "random", "grid")
-
setColumnDiameter
public void setColumnDiameter(double diameter) Set column diameter.- Parameters:
diameter- column diameter in meters
-
getColumnDiameter
public double getColumnDiameter()Get column diameter.- Returns:
- column diameter in meters
-
setColumnHeight
public void setColumnHeight(double height) Set column height.- Parameters:
height- column height in meters
-
setNumberOfTrays
public void setNumberOfTrays(int trays) Set number of trays.- Parameters:
trays- number of trays
-
setPackingHeight
public void setPackingHeight(double height) Set packing height.- Parameters:
height- packing height in meters
-
setDesignPressure
public void setDesignPressure(double pressure) Set design pressure.- Parameters:
pressure- design pressure in barg
-
setIncludeReboiler
public void setIncludeReboiler(boolean include) Set whether to include reboiler.- Parameters:
include- true to include reboiler
-
setIncludeCondenser
public void setIncludeCondenser(boolean include) Set whether to include condenser.- Parameters:
include- true to include condenser
-
setReboilerDuty
public void setReboilerDuty(double duty) Set reboiler duty.- Parameters:
duty- reboiler duty in kW
-
setCondenserDuty
public void setCondenserDuty(double duty) Set condenser duty.- Parameters:
duty- condenser duty in kW
-
calcPurchasedEquipmentCost
protected double calcPurchasedEquipmentCost()Calculate purchased equipment cost.Override this method in subclasses to provide equipment-specific cost correlations.
- Overrides:
calcPurchasedEquipmentCostin classUnitCostEstimateBaseClass- Returns:
- purchased equipment cost in USD
-
calcColumnShellCost
private double calcColumnShellCost()Calculate column shell cost.- Returns:
- shell cost in USD
-
getPressureFactor
private double getPressureFactor()Get pressure factor for shell cost.- Returns:
- pressure factor
-
calcTraysCost
private double calcTraysCost()Calculate trays cost.- Returns:
- trays cost in USD
-
calcPackingCost
private double calcPackingCost()Calculate packing cost.- Returns:
- packing cost in USD
-
calcDistributorCost
private double calcDistributorCost()Calculate liquid distributor cost.- Returns:
- distributor cost in USD
-
calcReboilerCost
private double calcReboilerCost()Calculate reboiler cost.- Returns:
- reboiler cost in USD
-
calcCondenserCost
private double calcCondenserCost()Calculate condenser cost.- Returns:
- condenser cost in USD
-
calcColumnWeight
public double calcColumnWeight()Calculate column weight.- Returns:
- column weight in kg
-
estimateWallThickness
private double estimateWallThickness()Estimate wall thickness based on diameter and pressure.- Returns:
- wall thickness in meters
-
calcAnnualUtilityCost
public double calcAnnualUtilityCost(double hoursPerYear, double steamCostPerTonne, double coolingWaterCostPerM3) Calculate annual utility cost for reboiler and condenser.- Parameters:
hoursPerYear- operating hours per yearsteamCostPerTonne- steam cost in $/tonnecoolingWaterCostPerM3- cooling water cost in $/m3- Returns:
- annual utility cost in USD
-
getTotalCost
public double getTotalCost()Get total cost using simple weight-based method.- Overrides:
getTotalCostin classUnitCostEstimateBaseClass- Returns:
- the total cost in USD
-
getCostBreakdown
-