Class PipelineMechanicalDesignDataSource
java.lang.Object
neqsim.process.mechanicaldesign.pipeline.PipelineMechanicalDesignDataSource
Data source for loading pipeline mechanical design parameters from the NeqSim database.
This class reads from the following database tables:
MaterialPipeProperties- Material grades, SMYS, SMTS per API 5LTechnicalRequirements_Process- Design factors per company/projectTechnicalRequirements_Piping- Piping-specific requirements
- Version:
- 1.0
- Author:
- Even Solbraa
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classPipeline design factors holder.static classPipeline material data holder. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final StringQuery template for company-specific design factors.private static final org.apache.logging.log4j.Loggerprivate static final StringQuery template for material properties.private static final StringQuery template for piping requirements. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionloadDesignFactors(String companyIdentifier) Load design factors from database for a given company.voidloadFromStandardsTable(String designCode, String equipmentType, PipelineMechanicalDesignDataSource.PipeDesignFactors factors) Load parameters from the design standards tables based on design code.voidloadIntoCalculator(String materialGrade, String companyIdentifier, String designCode, String equipmentType, PipeMechanicalDesignCalculator calculator) Load all pipeline mechanical design data including standards-based parameters.voidloadIntoCalculator(String materialGrade, String companyIdentifier, PipeMechanicalDesignCalculator calculator) Load all pipeline mechanical design data.loadMaterialProperties(String grade) Load material properties from database for a given API 5L grade.private voidloadPipingRequirements(String companyIdentifier, PipelineMechanicalDesignDataSource.PipeDesignFactors factors) Load piping-specific requirements from database.private doubleparseDouble(String value)
-
Field Details
-
logger
private static final org.apache.logging.log4j.Logger logger -
MATERIAL_QUERY
-
DESIGN_FACTORS_QUERY
Query template for company-specific design factors.- See Also:
-
PIPING_QUERY
-
-
Constructor Details
-
PipelineMechanicalDesignDataSource
public PipelineMechanicalDesignDataSource()
-
-
Method Details
-
loadMaterialProperties
public Optional<PipelineMechanicalDesignDataSource.PipeMaterialData> loadMaterialProperties(String grade) Load material properties from database for a given API 5L grade.- Parameters:
grade- material grade (e.g., "X52", "X65", "X70")- Returns:
- Optional containing material data if found
-
loadDesignFactors
public PipelineMechanicalDesignDataSource.PipeDesignFactors loadDesignFactors(String companyIdentifier) Load design factors from database for a given company.- Parameters:
companyIdentifier- company identifier (e.g., "Equinor", "Statoil")- Returns:
- design factors object with loaded or default values
-
loadPipingRequirements
private void loadPipingRequirements(String companyIdentifier, PipelineMechanicalDesignDataSource.PipeDesignFactors factors) Load piping-specific requirements from database.- Parameters:
companyIdentifier- company identifierfactors- design factors to update
-
loadFromStandardsTable
public void loadFromStandardsTable(String designCode, String equipmentType, PipelineMechanicalDesignDataSource.PipeDesignFactors factors) Load parameters from the design standards tables based on design code.- Parameters:
designCode- the design code (e.g., "ASME-B31.8", "DNV-ST-F101")equipmentType- the equipment type (e.g., "Pipeline", "MultiphasePipe")factors- design factors to update with loaded values
-
loadIntoCalculator
public void loadIntoCalculator(String materialGrade, String companyIdentifier, PipeMechanicalDesignCalculator calculator) Load all pipeline mechanical design data.- Parameters:
materialGrade- API 5L material gradecompanyIdentifier- company identifiercalculator- calculator to update with loaded values
-
loadIntoCalculator
public void loadIntoCalculator(String materialGrade, String companyIdentifier, String designCode, String equipmentType, PipeMechanicalDesignCalculator calculator) Load all pipeline mechanical design data including standards-based parameters.- Parameters:
materialGrade- API 5L material gradecompanyIdentifier- company identifierdesignCode- design code (e.g., "ASME-B31.8", "DNV-ST-F101")equipmentType- equipment type (e.g., "Pipeline", "MultiphasePipe")calculator- calculator to update with loaded values
-
parseDouble
-