Class HeatExchangerMechanicalDesign
java.lang.Object
neqsim.process.mechanicaldesign.MechanicalDesign
neqsim.process.mechanicaldesign.heatexchanger.HeatExchangerMechanicalDesign
- All Implemented Interfaces:
Serializable
Mechanical design for a generic heat exchanger. Provides detailed sizing estimates for supported
exchanger configurations and selects a preferred option based on configurable criteria.
The implementation supports both full two-stream heat exchangers and single-stream heaters or
coolers that only know their process-side conditions. When the utility side is described through
UtilityStreamSpecification the sizing routine derives approximate UA and approach
temperatures before computing a simplified geometric layout.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumRanking metric for automatic exchanger-type selection. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate doubleprivate doubleprivate List<HeatExchangerType> private static final doubleprivate doubleprivate HeatExchangerTypeprivate HeatExchangerSizingResultprivate static final longSerialization version UID.private List<HeatExchangerSizingResult> private doubleFields inherited from class MechanicalDesign
costEstimate, designStandard, innerDiameter, maxDesignDuty, maxDesignGassVolumeFlow, maxDesignOilVolumeFlow, maxDesignPower, 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 HeatExchangerMechanicalDesign. -
Method Summary
Modifier and TypeMethodDescriptionprivate voidprivate voidbuildSizingResults(HeatExchanger exchanger, double duty, boolean useTypeSpecificCoefficient) voidcalcDesign.private doublecalculateLmtd(double deltaT1, double deltaT2) private doubledetermineDuty(ProcessEquipmentInterface equipment) private double[]determineSingleStreamTemperatures(Heater heater, UtilityStreamSpecification spec, double duty) private double[]determineTwoStreamTemperatures(HeatExchanger exchanger) private List<HeatExchangerType> private voidfinalizeThermalEstimates(double duty) doubledoubledoubledoubleprivate voidhandleSingleStreamThermalData(Heater heater, UtilityStreamSpecification specification, double duty) private voidhandleTwoStreamThermalData(HeatExchanger exchanger, double duty) private voidvoidsetCandidateTypes(List<HeatExchangerType> types) voidsetCandidateTypes(HeatExchangerType... types) voidsetManualSelection(HeatExchangerType manualSelection) voidsetSelectionCriterion(HeatExchangerMechanicalDesign.SelectionCriterion selectionCriterion) Methods inherited from class MechanicalDesign
addDesignDataSource, displayResults, equals, getApplicableStandards, getCompanySpecificDesignStandards, getConstrutionMaterial, getCorrosionAllowance, getCostEstimate, getDefaultLiquidDensity, getDefaultLiquidViscosity, getDesignCorrosionAllowance, getDesignDataSources, getDesignJointEfficiency, getDesignLimitData, getDesignMaxPressureLimit, getDesignMaxTemperatureLimit, getDesignMinPressureLimit, getDesignMinTemperatureLimit, getDesignStandard, getInnerDiameter, getJointEfficiency, getLastMarginResult, getMaterialDesignStandard, getMaterialPipeDesignStandard, getMaxAllowableStress, getMaxDesignGassVolumeFlow, getMaxDesignOilVolumeFlow, getMaxDesignPressure, getMaxDesignVolumeFlow, getMaxDesignWaterVolumeFlow, getMaxOperationPressure, getMaxOperationTemperature, getMinDesignGassVolumeFLow, getMinDesignOilFLow, getMinDesignPressure, getMinDesignVolumeFLow, getMinDesignWaterVolumeFLow, getMinOperationPressure, getMinOperationTemperature, getModuleHeight, getModuleLength, getModuleWidth, getOuterDiameter, getPressureMarginFactor, getProcessEquipment, getRecommendedStandards, getResponse, getTantanLength, getTensileStrength, getVolumeTotal, getWallThickness, getWeightElectroInstrument, getWeightNozzle, getWeightPiping, getWeightStructualSteel, getWeightTotal, getWeightVessel, getWeigthInternals, getWeigthVesselShell, hasDesignStandard, hashCode, initMechanicalDesign, isHasSetCompanySpecificDesignStandards, readDesignSpecifications, setCompanySpecificDesignStandards, setConstrutionMaterial, setCorrosionAllowance, setDefaultLiquidDensity, setDefaultLiquidViscosity, setDesign, setDesignDataSource, setDesignDataSources, setDesignStandard, setDesignStandard, setDesignStandard, setDesignStandard, setDesignStandards, setHasSetCompanySpecificDesignStandards, setInnerDiameter, setJointEfficiency, setMaterialDesignStandard, setMaterialPipeDesignStandard, setMaxDesignDuty, setMaxDesignGassVolumeFlow, setMaxDesignOilVolumeFlow, setMaxDesignPower, 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, toJson, validateOperatingEnvelope, validateOperatingEnvelope
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerialization version UID.- See Also:
-
DEFAULT_OVERALL_HEAT_TRANSFER_COEFFICIENT
private static final double DEFAULT_OVERALL_HEAT_TRANSFER_COEFFICIENT- See Also:
-
usedOverallHeatTransferCoefficient
private double usedOverallHeatTransferCoefficient -
calculatedUA
private double calculatedUA -
logMeanTemperatureDifference
private double logMeanTemperatureDifference -
approachTemperature
private double approachTemperature -
candidateTypes
-
selectionCriterion
-
manualSelection
-
sizingResults
-
selectedSizingResult
-
-
Constructor Details
-
HeatExchangerMechanicalDesign
Constructor for HeatExchangerMechanicalDesign.- Parameters:
equipment-ProcessEquipmentInterfaceobject
-
-
Method Details
-
calcDesign
-
handleTwoStreamThermalData
-
handleSingleStreamThermalData
private void handleSingleStreamThermalData(Heater heater, UtilityStreamSpecification specification, double duty) -
finalizeThermalEstimates
private void finalizeThermalEstimates(double duty) -
buildSizingResults
private void buildSizingResults(HeatExchanger exchanger, double duty, boolean useTypeSpecificCoefficient) -
determineTypesToEvaluate
-
selectPreferredResult
private void selectPreferredResult() -
applySelectedSizing
private void applySelectedSizing() -
setCandidateTypes
-
setCandidateTypes
-
getCandidateTypes
-
getSelectionCriterion
-
setSelectionCriterion
public void setSelectionCriterion(HeatExchangerMechanicalDesign.SelectionCriterion selectionCriterion) -
getManualSelection
-
setManualSelection
-
getSizingResults
-
getSelectedSizingResult
-
getSelectedType
-
getSizingSummary
-
getCalculatedUA
public double getCalculatedUA()- Returns:
- Calculated UA (W/K) based on the available duty and temperature approach information.
-
getLogMeanTemperatureDifference
public double getLogMeanTemperatureDifference()- Returns:
- Log-mean temperature difference used for the simplified sizing (K).
-
getApproachTemperature
public double getApproachTemperature()- Returns:
- Minimum temperature difference between the hot and cold streams (K).
-
getUsedOverallHeatTransferCoefficient
public double getUsedOverallHeatTransferCoefficient()- Returns:
- Overall heat-transfer coefficient used during the calculation (W/(m^2*K)).
-
determineDuty
-
determineTwoStreamTemperatures
-
determineSingleStreamTemperatures
private double[] determineSingleStreamTemperatures(Heater heater, UtilityStreamSpecification spec, double duty) -
calculateLmtd
private double calculateLmtd(double deltaT1, double deltaT2)
-