Class RiserMechanicalDesignDataSource

java.lang.Object
neqsim.process.mechanicaldesign.pipeline.RiserMechanicalDesignDataSource

public class RiserMechanicalDesignDataSource extends Object
Data source for loading riser mechanical design parameters from the NeqSim database.

This class reads from the following database tables:

  • MaterialPipeProperties - Material grades, SMYS, SMTS per API 5L
  • TechnicalRequirements_Process - Riser design factors per company
  • dnv_iso_en_standards - DNV-OS-F201, DNV-RP-F204, API RP 2RD parameters

Riser-Specific Standards

  • DNV-OS-F201 - Dynamic Risers
  • DNV-RP-F204 - Riser Fatigue
  • DNV-RP-C203 - Fatigue Design of Offshore Structures
  • DNV-RP-C205 - Environmental Conditions and Environmental Loads
  • API RP 2RD - Design of Risers for Floating Production Systems
  • API RP 17B - Recommended Practice for Flexible Pipe
Version:
1.0
Author:
ASMF
  • Field Details

    • logger

      private static final org.apache.logging.log4j.Logger logger
      Logger for this class.
    • RISER_DESIGN_FACTORS_QUERY

      private static final String RISER_DESIGN_FACTORS_QUERY
      Query template for company-specific riser design factors.
      See Also:
    • RISER_STANDARDS_QUERY

      private static final String RISER_STANDARDS_QUERY
      Query template for riser standards.
      See Also:
  • Constructor Details

    • RiserMechanicalDesignDataSource

      public RiserMechanicalDesignDataSource()
  • Method Details

    • loadDesignParameters

      public RiserMechanicalDesignDataSource.RiserDesignParameters loadDesignParameters(String company)
      Load riser design parameters from database for a given company.
      Parameters:
      company - company name (e.g., "Equinor", "default")
      Returns:
      RiserDesignParameters with values from database, or defaults if not found
    • loadFromStandard

      public Map<String,Double> loadFromStandard(String standardCode)
      Load riser parameters from a specific design standard.
      Parameters:
      standardCode - the design standard code (e.g., "DNV-OS-F201", "API-RP-2RD")
      Returns:
      map of parameter names to values
    • loadIntoCalculator

      public void loadIntoCalculator(RiserMechanicalDesignCalculator calculator, String company, String designCode)
      Load design parameters into the riser calculator.
      Parameters:
      calculator - the riser calculator to populate
      company - company name for TR-specific values
      designCode - the design standard code
    • getAvailableStandards

      public Map<String,String> getAvailableStandards()
      Get available design standards for risers.
      Returns:
      map of standard codes to descriptions
    • applyParameter

      private void applyParameter(RiserMechanicalDesignDataSource.RiserDesignParameters params, String specification, double minValue, double maxValue, String documentId)
      Apply a parameter value to the design parameters object.
      Parameters:
      params - the parameters object
      specification - the parameter name
      minValue - minimum value
      maxValue - maximum value
      documentId - the source document ID
    • loadFatigueParameters

      public void loadFatigueParameters(RiserMechanicalDesignCalculator calculator)
      Load fatigue-specific parameters from DNV-RP-F204.
      Parameters:
      calculator - the calculator to populate
    • loadVIVParameters

      public void loadVIVParameters(RiserMechanicalDesignCalculator calculator)
      Load VIV-specific parameters from DNV-RP-C205.
      Parameters:
      calculator - the calculator to populate