Class RiserMechanicalDesign
java.lang.Object
neqsim.process.mechanicaldesign.MechanicalDesign
neqsim.process.mechanicaldesign.pipeline.PipelineMechanicalDesign
neqsim.process.mechanicaldesign.pipeline.RiserMechanicalDesign
- All Implemented Interfaces:
Serializable
Mechanical design class for risers.
This class extends PipelineMechanicalDesign to provide riser-specific mechanical design calculations including:
- Top tension calculation for catenary and TTR
- Touchdown point stress analysis
- VIV (Vortex-Induced Vibration) response estimation
- Dynamic stress factors for wave and current loading
- Fatigue life estimation for cyclic loading
- Heave motion response
Design Standards
- DNV-OS-F201 - Dynamic Risers
- DNV-RP-F204 - Riser Fatigue
- DNV-RP-C203 - Fatigue Design of Offshore Structures
- API RP 2RD - Design of Risers for Floating Production Systems
- API RP 17B - Flexible Pipe
Usage Example
Riser riser = new Riser("Production Riser", inletStream);
riser.setRiserType(RiserType.STEEL_CATENARY_RISER);
riser.setWaterDepth(800.0);
riser.run();
RiserMechanicalDesign design = (RiserMechanicalDesign) riser.getMechanicalDesign();
design.setMaxOperationPressure(100.0);
design.setMaterialGrade("X65");
design.setDesignStandardCode("DNV-OS-F201");
design.readDesignSpecifications();
design.calcDesign();
// Get riser-specific results
RiserMechanicalDesignCalculator calc = design.getRiserCalculator();
double topTension = calc.getTopTension();
double touchdownStress = calc.getTouchdownPointStress();
double vivAmplitude = calc.getVIVAmplitude();
double fatigueLife = calc.getRiserFatigueLife();
- Version:
- 1.0
- Author:
- ASMF
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate RiserMechanicalDesignDataSourceData source for loading design parameters from database.private RiserReference to the riser equipment.private RiserMechanicalDesignCalculatorRiser-specific calculator.private static final longSerialization version UID.Fields inherited from class PipelineMechanicalDesign
designStandardCode, innerDiameterFields inherited from class MechanicalDesign
costEstimate, designStandard, 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcalcDesign.doubleGet design life in years.Get the riser-specific calculator.booleanCheck if the riser design is acceptable.voidreadDesignSpecifications.toJson()Export mechanical design data to JSON format.Methods inherited from class PipelineMechanicalDesign
getCalculator, getDataSource, getDesignStandardCode, getLocationClass, getMAOP, getMaterialGrade, getPipelineLength, getTestPressure, isDesignSafe, loadDesignFactorsFromDatabase, loadFromDatabase, loadMaterialFromDatabase, main, setDesignStandardCode, setLocationClass, setMaterialGrade, setPipelineLengthMethods inherited from class MechanicalDesign
addDesignDataSource, calculateCostEstimate, costEstimateToJson, displayResults, equals, generateBillOfMaterials, 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:
-
riserCalculator
Riser-specific calculator. -
riser
Reference to the riser equipment. -
dataSource
Data source for loading design parameters from database.
-
-
Constructor Details
-
RiserMechanicalDesign
Constructor with riser equipment.- Parameters:
equipment- the riser equipment
-
-
Method Details
-
readDesignSpecifications
public void readDesignSpecifications()readDesignSpecifications.
- Overrides:
readDesignSpecificationsin classPipelineMechanicalDesign
-
calcDesign
-
getRiserCalculator
Get the riser-specific calculator.- Returns:
- riser mechanical design calculator
-
isDesignAcceptable
public boolean isDesignAcceptable()Check if the riser design is acceptable.- Returns:
- true if all design checks pass
-
getDesignLifeYears
public double getDesignLifeYears()Get design life in years.- Returns:
- design life
-
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 classPipelineMechanicalDesign- Returns:
- JSON string representation of the mechanical design
-