Class SubseaTreeMechanicalDesign
java.lang.Object
neqsim.process.mechanicaldesign.MechanicalDesign
neqsim.process.mechanicaldesign.subsea.SubseaTreeMechanicalDesign
- All Implemented Interfaces:
Serializable
Mechanical design class for Subsea Tree (Christmas Tree) equipment.
Calculates valve design, pressure containment, and structural requirements per:
- API Spec 17D - Design and Operation of Subsea Production Systems
- API RP 17A - Design and Operation of Subsea Production Systems
- ISO 13628-4 - Subsea Wellhead and Tree Equipment
- Version:
- 1.0
- Author:
- ESOL
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate doubleActuator force required in kN.private doubleTree block wall thickness in mm.private doubleBore wall thickness in mm.private doubleConnector capacity in kN.private SubseaCostEstimatorCost estimator.private StringDesign standard code.private doubleEquipment cost in USD.private doubleInstallation cost in USD.private static final longSerialization version UID.private doubleRequired test pressure in bar.private doubleTotal estimated cost in USD.private doubleTotal manhours.private doubleValve Cv total.private SubseaTreeReference to tree equipment.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.private voidCalculate actuator sizing.private voidCalculate connector capacity.voidCalculate cost estimate for the subsea tree.private voidCalculate pressure containment requirements.private voidCalculate valve sizing.private voidCalculate weight.Generate bill of materials.doubleGet bore wall thickness.doubleGet connector capacity.Get cost breakdown.Get design standard code.doubleGet equipment cost USD.doubleGet installation cost USD.doubleGet test pressure.doubleGet total cost USD.doubleGet total manhours.doubleGet vessel days.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:
-
tree
Reference to tree equipment. -
designStandardCode
Design standard code. -
boreWallThickness
private double boreWallThicknessBore wall thickness in mm. -
blockWallThickness
private double blockWallThicknessTree block wall thickness in mm. -
testPressure
private double testPressureRequired test pressure in bar. -
connectorCapacity
private double connectorCapacityConnector capacity in kN. -
totalValveCv
private double totalValveCvValve Cv total. -
actuatorForce
private double actuatorForceActuator force required in kN. -
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
-
SubseaTreeMechanicalDesign
Constructor.- Parameters:
equipment- tree equipment instance
-
-
Method Details
-
readDesignSpecifications
public void readDesignSpecifications()readDesignSpecifications.
- Overrides:
readDesignSpecificationsin classMechanicalDesign
-
calcDesign
-
calculatePressureContainment
private void calculatePressureContainment()Calculate pressure containment requirements. -
calculateConnectorCapacity
private void calculateConnectorCapacity()Calculate connector capacity. -
calculateValveSizing
private void calculateValveSizing()Calculate valve sizing. -
calculateActuatorSizing
private void calculateActuatorSizing()Calculate actuator sizing. -
calculateWeight
private void calculateWeight()Calculate weight. -
calculateCostEstimate
public void calculateCostEstimate()Calculate cost estimate for the subsea tree.- 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
-
getBoreWallThickness
public double getBoreWallThickness()Get bore wall thickness.- Returns:
- wall thickness in mm
-
getTestPressure
public double getTestPressure()Get test pressure.- Returns:
- test pressure in bar
-
getConnectorCapacity
public double getConnectorCapacity()Get connector capacity.- Returns:
- capacity in kN
-