Class SubseaJumperMechanicalDesign
java.lang.Object
neqsim.process.mechanicaldesign.MechanicalDesign
neqsim.process.mechanicaldesign.subsea.SubseaJumperMechanicalDesign
- All Implemented Interfaces:
Serializable
Mechanical design class for Subsea Jumper equipment.
Calculates wall thickness, stress analysis, and connection design for subsea jumpers per:
- DNV-ST-F101 - Submarine Pipeline Systems (for rigid)
- API RP 17B - Flexible Pipe (for flexible)
- API RP 17G - Subsea Production System Design
- Version:
- 1.0
- Author:
- ESOL
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate doubleAllowable stress in MPa.private booleanMinimum bend radius check.private doubleCombined stress in MPa.private SubseaCostEstimatorCost estimator.private StringDesign standard code.private doubleEquipment cost in USD.private doubleHoop stress in MPa.private doubleHub connection stress in MPa.private doubleInstallation cost in USD.private SubseaJumperReference to jumper equipment.private doubleRequired wall thickness in mm.private static final longSerialization version UID.private doubleTotal estimated cost in USD.private doubleTotal manhours.private doubleUnity check (stress ratio).private doubleVessel days required.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. -
Method Summary
Modifier and TypeMethodDescriptionvoidcalcDesign.voidCalculate cost estimate for the jumper.private voidCalculate flexible jumper design per API RP 17B.private voidCalculate rigid jumper design per DNV-ST-F101.private voidCalculate weight.Generate bill of materials.Get cost breakdown.Get design standard code.doubleGet equipment cost USD.doubleGet hoop stress.doubleGet installation cost USD.private doublegetMaterialSMYS(String materialGrade) Get material SMYS.doubleGet required wall thickness.doubleGet total cost USD.doubleGet total manhours.doubleGet unity check.doubleGet vessel days.booleanCheck if bend radius is OK.voidreadDesignSpecifications.voidsetDesignStandardCode(String designStandardCode) Set design standard code.voidsetRegion(SubseaCostEstimator.Region region) Set region for cost estimation.toJson()Export mechanical design data to JSON format.toMap()Get design results as Map.Methods inherited from class MechanicalDesign
addDesignDataSource, costEstimateToJson, displayResults, equals, 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:
-
jumper
Reference to jumper equipment. -
designStandardCode
Design standard code. -
requiredWallThickness
private double requiredWallThicknessRequired wall thickness in mm. -
hoopStress
private double hoopStressHoop stress in MPa. -
combinedStress
private double combinedStressCombined stress in MPa. -
allowableStress
private double allowableStressAllowable stress in MPa. -
unityCheck
private double unityCheckUnity check (stress ratio). -
bendRadiusOK
private boolean bendRadiusOKMinimum bend radius check. -
hubStress
private double hubStressHub connection stress in MPa. -
costEstimator
Cost estimator. -
totalCostUSD
private double totalCostUSDTotal estimated cost in USD. -
equipmentCostUSD
private double equipmentCostUSDEquipment cost in USD. -
installationCostUSD
private double installationCostUSDInstallation cost in USD. -
vesselDays
private double vesselDaysVessel days required. -
totalManhours
private double totalManhoursTotal manhours.
-
-
Constructor Details
-
SubseaJumperMechanicalDesign
Constructor.- Parameters:
equipment- jumper equipment instance
-
-
Method Details
-
readDesignSpecifications
public void readDesignSpecifications()readDesignSpecifications.
- Overrides:
readDesignSpecificationsin classMechanicalDesign
-
calcDesign
-
calculateRigidJumperDesign
private void calculateRigidJumperDesign()Calculate rigid jumper design per DNV-ST-F101. -
calculateFlexibleJumperDesign
private void calculateFlexibleJumperDesign()Calculate flexible jumper design per API RP 17B. -
getMaterialSMYS
Get material SMYS.- Parameters:
materialGrade- material grade- Returns:
- SMYS in MPa
-
calculateWeight
private void calculateWeight()Calculate weight. -
calculateCostEstimate
public void calculateCostEstimate()Calculate cost estimate for the jumper.- Overrides:
calculateCostEstimatein classMechanicalDesign
-
getCostBreakdown
-
generateBillOfMaterials
Generate bill of materials.- Overrides:
generateBillOfMaterialsin classMechanicalDesign- Returns:
- list of BOM items
-
getTotalCostUSD
public double getTotalCostUSD()Get total cost USD.- Returns:
- total cost
-
getEquipmentCostUSD
public double getEquipmentCostUSD()Get equipment cost USD.- Returns:
- equipment cost
-
getInstallationCostUSD
public double getInstallationCostUSD()Get installation cost USD.- Returns:
- installation cost
-
getVesselDays
public double getVesselDays()Get vessel days.- Returns:
- vessel days
-
getTotalManhours
public double getTotalManhours()Get total manhours.- Returns:
- total manhours
-
setRegion
Set region for cost estimation.- Parameters:
region- cost region
-
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
-
toMap
-
getDesignStandardCode
-
setDesignStandardCode
Set design standard code.- Parameters:
designStandardCode- design standard code
-
getRequiredWallThickness
public double getRequiredWallThickness()Get required wall thickness.- Returns:
- wall thickness in mm
-
getHoopStress
public double getHoopStress()Get hoop stress.- Returns:
- hoop stress in MPa
-
getUnityCheck
public double getUnityCheck()Get unity check.- Returns:
- unity check ratio
-
isBendRadiusOK
public boolean isBendRadiusOK()Check if bend radius is OK.- Returns:
- true if bend radius meets requirements
-