Class BottleneckResult
java.lang.Object
neqsim.process.equipment.capacity.BottleneckResult
Result class containing information about the bottleneck equipment and constraint.
This class is returned by ProcessSystem.findBottleneck() and contains the equipment that is limiting process capacity, along with the specific constraint that is most limiting.
- Version:
- 1.0
- Author:
- NeqSim Development Team
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final CapacityConstraintThe most limiting constraint on the bottleneck equipment.private final ProcessEquipmentInterfaceThe equipment that is the bottleneck.private final doubleThe utilization of the bottleneck constraint. -
Constructor Summary
ConstructorsConstructorDescriptionBottleneckResult(ProcessEquipmentInterface equipment, CapacityConstraint constraint, double utilization) Creates a bottleneck result. -
Method Summary
Modifier and TypeMethodDescriptionstatic BottleneckResultempty()Creates an empty bottleneck result (no bottleneck found).Gets the limiting constraint.Gets the name of the limiting constraint.Gets the bottleneck equipment.Gets the name of the bottleneck equipment.doubleGets the available margin as a fraction.doubleGets the available margin as a percentage.doubleGets the utilization as a fraction.doubleGets the utilization as a percentage.booleanChecks if a bottleneck was found.booleanChecks if the bottleneck constraint is exceeded.booleanChecks if the bottleneck is near its limit (above warning threshold).toString()
-
Field Details
-
equipment
The equipment that is the bottleneck. -
constraint
The most limiting constraint on the bottleneck equipment. -
utilization
private final double utilizationThe utilization of the bottleneck constraint.
-
-
Constructor Details
-
BottleneckResult
public BottleneckResult(ProcessEquipmentInterface equipment, CapacityConstraint constraint, double utilization) Creates a bottleneck result.- Parameters:
equipment- the bottleneck equipment (may be null if no constraints defined)constraint- the limiting constraint (may be null if no constraints defined)utilization- the utilization as fraction (1.0 = 100%)
-
-
Method Details
-
empty
Creates an empty bottleneck result (no bottleneck found).- Returns:
- an empty result
-
hasBottleneck
public boolean hasBottleneck()Checks if a bottleneck was found.- Returns:
- true if equipment and constraint are not null
-
getEquipment
Gets the bottleneck equipment.- Returns:
- the equipment, or null if no bottleneck
-
getEquipmentName
Gets the name of the bottleneck equipment.- Returns:
- the equipment name, or "None" if no bottleneck
-
getConstraint
Gets the limiting constraint.- Returns:
- the constraint, or null if no bottleneck
-
getConstraintName
Gets the name of the limiting constraint.- Returns:
- the constraint name, or "None" if no bottleneck
-
getUtilization
public double getUtilization()Gets the utilization as a fraction.- Returns:
- utilization (1.0 = 100%)
-
getUtilizationPercent
public double getUtilizationPercent()Gets the utilization as a percentage.- Returns:
- utilization percentage (100.0 = 100%)
-
isExceeded
public boolean isExceeded()Checks if the bottleneck constraint is exceeded.- Returns:
- true if utilization is above 100%
-
isNearLimit
public boolean isNearLimit()Checks if the bottleneck is near its limit (above warning threshold).- Returns:
- true if constraint is near limit
-
getMargin
public double getMargin()Gets the available margin as a fraction.- Returns:
- margin (0.2 = 20% headroom)
-
getMarginPercent
public double getMarginPercent()Gets the available margin as a percentage.- Returns:
- margin percentage
-
toString
-