Class ProductionProfile

java.lang.Object
neqsim.process.safety.risk.dynamic.ProductionProfile
All Implemented Interfaces:
Serializable

public class ProductionProfile extends Object implements Serializable
Represents a production profile during an equipment failure event.

Captures the time-varying production rate including:

  • Shutdown transient as production drops
  • Steady-state degraded operation
  • Ramp-up transient as production recovers

Production Profile Phases

Production
    ^
100%|_____                          _____
    |     \                        /
 50%|      \______________________/
    |       |                    |
  0%|-------|---------------------|-------> Time
    |  Shut |   Degraded Period   | Ramp
    | down  |                     |  Up
Version:
1.0
Author:
NeqSim Development Team
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • equipmentName

      private String equipmentName
      Equipment that failed.
    • failureMode

      private String failureMode
      Failure mode description.
    • baselineProduction

      private double baselineProduction
      Baseline production rate (kg/hr).
    • degradedProduction

      private double degradedProduction
      Degraded production rate (kg/hr).
    • repairDuration

      private double repairDuration
      Total repair duration (hours).
    • shutdownTransientLoss

      private double shutdownTransientLoss
      Production loss during shutdown transient (kg).
    • shutdownDuration

      private double shutdownDuration
      Shutdown transient duration (hours).
    • steadyStateLoss

      private double steadyStateLoss
      Production loss during steady-state degraded operation (kg).
    • steadyStateDuration

      private double steadyStateDuration
      Steady-state degraded duration (hours).
    • rampUpTransientLoss

      private double rampUpTransientLoss
      Production loss during ramp-up transient (kg).
    • rampUpDuration

      private double rampUpDuration
      Ramp-up transient duration (hours).
    • totalLoss

      private double totalLoss
      Total production loss (kg).
    • totalProduction

      private double totalProduction
      Total production during event (kg).
    • transientLossFraction

      private double transientLossFraction
      Fraction of loss from transients.
    • timeSeries

      private List<ProductionProfile.TimePoint> timeSeries
      Time series data for detailed analysis.
  • Constructor Details

    • ProductionProfile

      public ProductionProfile(String equipmentName)
      Creates a production profile for an equipment failure.
      Parameters:
      equipmentName - name of failed equipment
    • ProductionProfile

      public ProductionProfile(String equipmentName, String failureMode)
      Creates a production profile with failure mode.
      Parameters:
      equipmentName - name of failed equipment
      failureMode - failure mode description
  • Method Details

    • getEquipmentName

      public String getEquipmentName()
      Gets the equipment name.
      Returns:
      equipment name
    • getFailureMode

      public String getFailureMode()
      Gets the failure mode.
      Returns:
      failure mode
    • getBaselineProduction

      public double getBaselineProduction()
      Gets the baseline production rate.
      Returns:
      baseline production in kg/hr
    • getDegradedProduction

      public double getDegradedProduction()
      Gets the degraded production rate.
      Returns:
      degraded production in kg/hr
    • getRepairDuration

      public double getRepairDuration()
      Gets the repair duration.
      Returns:
      repair duration in hours
    • getShutdownTransientLoss

      public double getShutdownTransientLoss()
      Gets the shutdown transient loss.
      Returns:
      shutdown loss in kg
    • getShutdownDuration

      public double getShutdownDuration()
      Gets the shutdown duration.
      Returns:
      shutdown duration in hours
    • getSteadyStateLoss

      public double getSteadyStateLoss()
      Gets the steady-state loss.
      Returns:
      steady-state loss in kg
    • getSteadyStateDuration

      public double getSteadyStateDuration()
      Gets the steady-state duration.
      Returns:
      steady-state duration in hours
    • getRampUpTransientLoss

      public double getRampUpTransientLoss()
      Gets the ramp-up transient loss.
      Returns:
      ramp-up loss in kg
    • getRampUpDuration

      public double getRampUpDuration()
      Gets the ramp-up duration.
      Returns:
      ramp-up duration in hours
    • getTotalLoss

      public double getTotalLoss()
      Gets the total production loss.
      Returns:
      total loss in kg
    • getTotalProduction

      public double getTotalProduction()
      Gets the total production during the event.
      Returns:
      total production in kg
    • getTransientLossFraction

      public double getTransientLossFraction()
      Gets the fraction of loss from transients.
      Returns:
      transient loss fraction (0-1)
    • getTimeSeries

      public List<ProductionProfile.TimePoint> getTimeSeries()
      Gets the time series data.
      Returns:
      list of time points
    • getProductionLossPercent

      public double getProductionLossPercent()
      Gets the production loss percentage.
      Returns:
      loss percentage (0-100)
    • getTotalTransientLoss

      public double getTotalTransientLoss()
      Gets the total transient loss.
      Returns:
      total transient loss in kg
    • setFailureMode

      public void setFailureMode(String failureMode)
      Sets the failure mode.
      Parameters:
      failureMode - failure mode description
    • setBaselineProduction

      public void setBaselineProduction(double rate)
      Sets the baseline production rate.
      Parameters:
      rate - production rate in kg/hr
    • setDegradedProduction

      public void setDegradedProduction(double rate)
      Sets the degraded production rate.
      Parameters:
      rate - production rate in kg/hr
    • setRepairDuration

      public void setRepairDuration(double hours)
      Sets the repair duration.
      Parameters:
      hours - repair duration in hours
    • setShutdownTransientLoss

      public void setShutdownTransientLoss(double loss)
      Sets the shutdown transient loss.
      Parameters:
      loss - loss in kg
    • setShutdownDuration

      public void setShutdownDuration(double hours)
      Sets the shutdown duration.
      Parameters:
      hours - duration in hours
    • setSteadyStateLoss

      public void setSteadyStateLoss(double loss)
      Sets the steady-state loss.
      Parameters:
      loss - loss in kg
    • setSteadyStateDuration

      public void setSteadyStateDuration(double hours)
      Sets the steady-state duration.
      Parameters:
      hours - duration in hours
    • setRampUpTransientLoss

      public void setRampUpTransientLoss(double loss)
      Sets the ramp-up transient loss.
      Parameters:
      loss - loss in kg
    • setRampUpDuration

      public void setRampUpDuration(double hours)
      Sets the ramp-up duration.
      Parameters:
      hours - duration in hours
    • calculateTotals

      public void calculateTotals()
      Calculates total values from component values.
    • buildTimeSeries

      private void buildTimeSeries()
      Builds time series data for visualization.
    • toMap

      public Map<String,Object> toMap()
      Converts to map for JSON serialization.
      Returns:
      map representation
    • toJson

      public String toJson()
      Converts to JSON string.
      Returns:
      JSON representation
    • toString

      public String toString()
      Overrides:
      toString in class Object