Class ExpanderCostEstimate
java.lang.Object
neqsim.process.costestimation.UnitCostEstimateBaseClass
neqsim.process.costestimation.expander.ExpanderCostEstimate
- All Implemented Interfaces:
Serializable
Cost estimation class for turboexpanders.
This class provides expander-specific cost estimation methods using chemical engineering cost correlations for radial inflow and axial turboexpanders used in gas processing, cryogenic, and power recovery applications.
Correlations are based on:
- Turton et al. - Analysis, Synthesis and Design of Chemical Processes
- API 617 - Axial and Centrifugal Compressors and Expander-compressors
- Industry data for turboexpander costs
- Version:
- 1.0
- Author:
- AGAS
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanIs cryogenic service (below -40°C).private StringExpander type.private booleanInclude control system.private booleanInclude gearbox.private booleanInclude load in cost.private booleanInclude lube oil system.private doubleInlet temperature in K.private StringLoad type (generator, compressor, brake).private doubleManual shaft power in kW (used when no MechanicalDesign available).private static final longSerialization version UID.Fields inherited from class UnitCostEstimateBaseClass
annualOperatingCost, bareModuleCost, costCalculator, equipmentType, grassRootsCost, installationManHours, mechanicalEquipment, purchasedEquipmentCost, totalModuleCost -
Constructor Summary
ConstructorsConstructorDescriptionExpanderCostEstimate(ExpanderMechanicalDesign mechanicalEquipment) Constructor for ExpanderCostEstimate. -
Method Summary
Modifier and TypeMethodDescriptiondoublecalcAnnualOperatingCost(int operatingHoursPerYear) Calculate annual operating cost.private doublecalcAxialExpanderCost(double power) Calculate axial expander cost.private doublecalcControlSystemCost(double power) Calculate control system cost.private doublecalcGearboxCost(double power) Calculate gearbox cost.private doublecalcLoadCost(double power) Calculate load (generator/compressor/brake) cost.private doublecalcLubeOilSystemCost(double power) Calculate lube oil system cost.private doublecalcMixedFlowExpanderCost(double power) Calculate mixed flow expander cost.doublecalcPowerGenerationRevenue(int operatingHoursPerYear, double electricityPrice) Calculate power generation revenue.protected doubleCalculate purchased equipment cost.private doublecalcRadialInflowExpanderCost(double power) Calculate radial inflow expander cost.Get cost breakdown by component.Get expander type.Get load type.doubleGet shaft power.voidsetCryogenicService(boolean cryogenic) Set cryogenic service flag.voidsetExpanderType(String type) Set expander type.voidsetIncludeControlSystem(boolean include) Set whether to include control system.voidsetIncludeGearbox(boolean include) Set whether to include gearbox.voidsetIncludeLoad(boolean include) Set whether to include load.voidsetIncludeLubeOilSystem(boolean include) Set whether to include lube oil system.voidsetInletTemperature(double temp) Set inlet temperature.voidsetLoadType(String type) Set load type.voidsetShaftPower(double power) Set shaft power manually (for standalone cost estimation without MechanicalDesign).toMap()Convert cost estimate to map for JSON export.Methods inherited from class UnitCostEstimateBaseClass
calcAnnualOperatingCost, calculateCostEstimate, equals, generateBillOfMaterials, getBareModuleCost, getCostCalculator, getCostPerWeightUnit, getEquipmentType, getGrassRootsCost, getInstallationManHours, getMaterialFactor, getMaterialGrade, getPurchasedEquipmentCost, getTotalCost, getTotalModuleCost, hashCode, setCostCalculator, setCostPerWeightUnit, setCurrentCepci, setEquipmentType, setLocationFactor, setMaterialOfConstruction, toCompactJson, toJson
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerialization version UID.- See Also:
-
expanderType
Expander type. -
loadType
Load type (generator, compressor, brake). -
includeLoad
private boolean includeLoadInclude load in cost. -
includeGearbox
private boolean includeGearboxInclude gearbox. -
includeLubeOilSystem
private boolean includeLubeOilSystemInclude lube oil system. -
includeControlSystem
private boolean includeControlSystemInclude control system. -
inletTemperature
private double inletTemperatureInlet temperature in K. -
cryogenicService
private boolean cryogenicServiceIs cryogenic service (below -40°C). -
manualShaftPower
private double manualShaftPowerManual shaft power in kW (used when no MechanicalDesign available).
-
-
Constructor Details
-
ExpanderCostEstimate
Constructor for ExpanderCostEstimate.- Parameters:
mechanicalEquipment- the expander mechanical design
-
-
Method Details
-
setShaftPower
public void setShaftPower(double power) Set shaft power manually (for standalone cost estimation without MechanicalDesign).- Parameters:
power- shaft power in kW
-
getShaftPower
public double getShaftPower()Get shaft power.- Returns:
- shaft power in kW
-
setExpanderType
Set expander type.- Parameters:
type- expander type ("radial-inflow", "axial", "mixed-flow")
-
getExpanderType
-
setLoadType
Set load type.- Parameters:
type- load type ("generator", "compressor", "brake")
-
getLoadType
-
setIncludeLoad
public void setIncludeLoad(boolean include) Set whether to include load.- Parameters:
include- true to include load cost
-
setIncludeGearbox
public void setIncludeGearbox(boolean include) Set whether to include gearbox.- Parameters:
include- true to include gearbox
-
setIncludeLubeOilSystem
public void setIncludeLubeOilSystem(boolean include) Set whether to include lube oil system.- Parameters:
include- true to include lube oil system
-
setIncludeControlSystem
public void setIncludeControlSystem(boolean include) Set whether to include control system.- Parameters:
include- true to include control system
-
setInletTemperature
public void setInletTemperature(double temp) Set inlet temperature.- Parameters:
temp- inlet temperature in K
-
setCryogenicService
public void setCryogenicService(boolean cryogenic) Set cryogenic service flag.- Parameters:
cryogenic- true for cryogenic service
-
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
-
calcRadialInflowExpanderCost
private double calcRadialInflowExpanderCost(double power) Calculate radial inflow expander cost.- Parameters:
power- shaft power in kW- Returns:
- cost in USD
-
calcAxialExpanderCost
private double calcAxialExpanderCost(double power) Calculate axial expander cost.- Parameters:
power- shaft power in kW- Returns:
- cost in USD
-
calcMixedFlowExpanderCost
private double calcMixedFlowExpanderCost(double power) Calculate mixed flow expander cost.- Parameters:
power- shaft power in kW- Returns:
- cost in USD
-
calcLoadCost
private double calcLoadCost(double power) Calculate load (generator/compressor/brake) cost.- Parameters:
power- shaft power in kW- Returns:
- cost in USD
-
calcGearboxCost
private double calcGearboxCost(double power) Calculate gearbox cost.- Parameters:
power- transmitted power in kW- Returns:
- cost in USD
-
calcLubeOilSystemCost
private double calcLubeOilSystemCost(double power) Calculate lube oil system cost.- Parameters:
power- expander power in kW (determines system size)- Returns:
- cost in USD
-
calcControlSystemCost
private double calcControlSystemCost(double power) Calculate control system cost.- Parameters:
power- expander power in kW- Returns:
- cost in USD
-
calcAnnualOperatingCost
public double calcAnnualOperatingCost(int operatingHoursPerYear) Calculate annual operating cost.- Parameters:
operatingHoursPerYear- operating hours per year- Returns:
- annual operating cost in USD
-
calcPowerGenerationRevenue
public double calcPowerGenerationRevenue(int operatingHoursPerYear, double electricityPrice) Calculate power generation revenue.- Parameters:
operatingHoursPerYear- operating hours per yearelectricityPrice- electricity price in $/kWh- Returns:
- annual revenue in USD
-
getCostBreakdown
-
toMap
Convert cost estimate to map for JSON export.- Overrides:
toMapin classUnitCostEstimateBaseClass- Returns:
- map of cost data
-