Interface AutoSizeable
- All Known Implementing Classes:
AdiabaticPipe, AirCooler, BlowdownValve, CheckValve, Compressor, ControlValve, Cooler, Ejector, ESDValve, ESPPump, Expander, GasScrubber, GasScrubberSimple, Heater, HeatExchanger, HIPPSValve, Hydrocyclone, Hydrocyclone, IncompressiblePipeFlow, LevelControlValve, Manifold, MultiStreamHeatExchanger, MultiStreamHeatExchanger2, NeqGasScrubber, NeqHeater, PipeBeggsAndBrills, PressureControlValve, PressureDrop, PSDValve, Pump, Riser, RuptureDisk, SafetyReliefValve, SafetyValve, Separator, SimpleAbsorber, SimpleTEGAbsorber, SteamHeater, Tank, ThreePhaseSeparator, ThrottlingValve, TopsidePiping, TurboExpanderCompressor, TwoPhaseSeparator, WaterCooler, WaterStripperColumn
public interface AutoSizeable
Interface for process equipment that can be automatically sized based on design criteria.
Equipment implementing this interface can calculate their dimensions and design parameters from connected stream conditions and design safety factors. This enables automated process design workflows where equipment is sized from specifications rather than manually configured.
Example usage:
ThreePhaseSeparator separator = new ThreePhaseSeparator("HP-Sep", feedStream);
separator.autoSize(1.2); // Size with 20% safety factor
System.out.println(separator.getSizingReport());
- Version:
- 1.0
- Author:
- NeqSim Development Team
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidautoSize()Automatically size using default safety factor (1.2 = 20% margin).voidautoSize(double safetyFactor) Automatically size the equipment based on connected stream conditions.default voidAutomatically size using company-specific design standards.Get a detailed sizing report after auto-sizing.default StringGet sizing report as JSON for programmatic access.booleanCheck if equipment has been auto-sized.
-
Method Details
-
autoSize
void autoSize(double safetyFactor) Automatically size the equipment based on connected stream conditions.This method calculates dimensions and design parameters using the inlet stream properties and applies the specified safety factor. The equipment must have a valid inlet stream connected before calling this method.
- Parameters:
safetyFactor- multiplier for design capacity, typically 1.1-1.3 (10-30% over design)- Throws:
IllegalStateException- if inlet stream is not connected or not initialized
-
autoSize
default void autoSize()Automatically size using default safety factor (1.2 = 20% margin). -
autoSize
Automatically size using company-specific design standards.This method applies design rules from the specified company's technical requirements (TR) documents. The standards are loaded from the NeqSim design database.
- Parameters:
companyStandard- company name (e.g., "Equinor", "Shell", "TotalEnergies")trDocument- TR document reference (e.g., "TR2000", "DEP-31.38.01.11")
-
isAutoSized
boolean isAutoSized()Check if equipment has been auto-sized.- Returns:
- true if autoSize() has been called successfully
-
getSizingReport
String getSizingReport()Get a detailed sizing report after auto-sizing.The report includes:
- Design basis (flow rates, pressures, temperatures)
- Calculated dimensions
- Design parameters (K-factor, Cv, velocity, etc.)
- Safety margins
- Returns:
- formatted sizing report string
-
getSizingReportJson
Get sizing report as JSON for programmatic access.- Returns:
- JSON string with sizing data
-