Class FlowRateOptimizer.ProcessLiftCurveTable
java.lang.Object
neqsim.process.util.optimizer.FlowRateOptimizer.ProcessLiftCurveTable
- All Implemented Interfaces:
Serializable
- Enclosing class:
FlowRateOptimizer
Process lift curve table for reservoir simulator integration.
Stores operating points for a grid of flow rates and inlet pressures, providing methods to access pressure, power, and utilization data. Output can be formatted for Eclipse VFP tables.
- Version:
- 1.0
- Author:
- ESOL
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate double[]private Stringprivate double[]private FlowRateOptimizer.ProcessOperatingPoint[][]private Stringprivate static final longSerialization version UID.private String -
Constructor Summary
ConstructorsConstructorDescriptionProcessLiftCurveTable(String tableName, double[] flowRates, double[] inletPressures, List<String> compressorNames) Creates a new process lift curve table. -
Method Summary
Modifier and TypeMethodDescriptionFinds the operating point with minimum total power across all feasible points.double[]double[]double[][]Gets the maximum utilization values as a 2D array.getOperatingPoint(int flowIndex, int pressureIndex) Gets an operating point at the specified indices.double[][]Gets the outlet pressure values as a 2D array.double[][]Gets the total power values as a 2D array.voidsetFlowRateUnit(String flowRateUnit) voidsetOperatingPoint(int flowIndex, int pressureIndex, FlowRateOptimizer.ProcessOperatingPoint point) Sets an operating point at the specified indices.voidsetPressureUnit(String pressureUnit) voidsetTableName(String tableName) Returns a formatted string in Eclipse VFP-like format.Returns a formatted string representation suitable for display.toJson()Converts the table to JSON format.
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerialization version UID.- See Also:
-
tableName
-
flowRates
private double[] flowRates -
inletPressures
private double[] inletPressures -
compressorNames
-
flowRateUnit
-
pressureUnit
-
operatingPoints
-
-
Constructor Details
-
ProcessLiftCurveTable
public ProcessLiftCurveTable(String tableName, double[] flowRates, double[] inletPressures, List<String> compressorNames) Creates a new process lift curve table.- Parameters:
tableName- name of the tableflowRates- array of flow ratesinletPressures- array of inlet pressurescompressorNames- list of compressor names
-
-
Method Details
-
setOperatingPoint
public void setOperatingPoint(int flowIndex, int pressureIndex, FlowRateOptimizer.ProcessOperatingPoint point) Sets an operating point at the specified indices.- Parameters:
flowIndex- flow rate indexpressureIndex- inlet pressure indexpoint- the operating point
-
getOperatingPoint
Gets an operating point at the specified indices.- Parameters:
flowIndex- flow rate indexpressureIndex- inlet pressure index- Returns:
- the operating point, or null if not set
-
getOutletPressureValues
public double[][] getOutletPressureValues()Gets the outlet pressure values as a 2D array.- Returns:
- outlet pressures [flowIndex][pressureIndex], NaN for infeasible points
-
getTotalPowerValues
public double[][] getTotalPowerValues()Gets the total power values as a 2D array.- Returns:
- total power [flowIndex][pressureIndex], NaN for infeasible points
-
getMaxUtilizationValues
public double[][] getMaxUtilizationValues()Gets the maximum utilization values as a 2D array.- Returns:
- max utilization [flowIndex][pressureIndex], NaN for infeasible points
-
findMinimumPowerPoint
Finds the operating point with minimum total power across all feasible points.- Returns:
- the minimum power operating point, or null if no feasible points
-
toFormattedString
Returns a formatted string representation suitable for display.- Returns:
- formatted table string
-
toEclipseFormat
Returns a formatted string in Eclipse VFP-like format.- Returns:
- Eclipse-compatible formatted string
-
toJson
-
getTableName
- Returns:
- the tableName
-
setTableName
- Parameters:
tableName- the tableName to set
-
getFlowRates
public double[] getFlowRates()- Returns:
- the flowRates
-
getInletPressures
public double[] getInletPressures()- Returns:
- the inletPressures
-
getCompressorNames
-
getFlowRateUnit
- Returns:
- the flowRateUnit
-
setFlowRateUnit
- Parameters:
flowRateUnit- the flowRateUnit to set
-
getPressureUnit
- Returns:
- the pressureUnit
-
setPressureUnit
- Parameters:
pressureUnit- the pressureUnit to set
-