Class WellScheduler.ScheduleResult

java.lang.Object
neqsim.process.util.fielddevelopment.WellScheduler.ScheduleResult
All Implemented Interfaces:
Serializable
Enclosing class:
WellScheduler

public static final class WellScheduler.ScheduleResult extends Object implements Serializable
Schedule optimization result.

Contains the complete optimized schedule and associated metrics including deferred production, production gains, and facility utilization.

Version:
1.0
Author:
ESOL
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • optimizedSchedule

      private final List<WellScheduler.Intervention> optimizedSchedule
    • wellUptime

      private final Map<String,Double> wellUptime
    • totalDeferredProduction

      private final double totalDeferredProduction
    • totalProductionGain

      private final double totalProductionGain
    • dailyFacilityRate

      private final Map<LocalDate, Double> dailyFacilityRate
    • dailyBottleneck

      private final Map<LocalDate, String> dailyBottleneck
    • overallAvailability

      private final double overallAvailability
    • rateUnit

      private final String rateUnit
  • Constructor Details

    • ScheduleResult

      public ScheduleResult(List<WellScheduler.Intervention> optimizedSchedule, Map<String,Double> wellUptime, double totalDeferredProduction, double totalProductionGain, Map<LocalDate, Double> dailyFacilityRate, Map<LocalDate, String> dailyBottleneck, double overallAvailability, String rateUnit)
      Creates a schedule result.
      Parameters:
      optimizedSchedule - list of scheduled interventions
      wellUptime - map of well name to uptime fraction
      totalDeferredProduction - production lost during interventions
      totalProductionGain - production gained from interventions
      dailyFacilityRate - daily total production rates
      dailyBottleneck - daily bottleneck equipment
      overallAvailability - overall system availability
      rateUnit - rate unit for production values
  • Method Details

    • getOptimizedSchedule

      public List<WellScheduler.Intervention> getOptimizedSchedule()
      Gets the optimized intervention schedule.
      Returns:
      unmodifiable list of interventions
    • getWellUptime

      public Map<String,Double> getWellUptime()
      Gets well uptime fractions.
      Returns:
      map of well name to uptime (0-1)
    • getTotalDeferredProduction

      public double getTotalDeferredProduction()
      Gets total deferred production during interventions.
      Returns:
      deferred production in rate units * days
    • getTotalProductionGain

      public double getTotalProductionGain()
      Gets total production gain from successful interventions.
      Returns:
      production gain in rate units * days
    • getDailyFacilityRate

      public Map<LocalDate, Double> getDailyFacilityRate()
      Gets daily facility production rates.
      Returns:
      map of date to production rate
    • getDailyBottleneck

      public Map<LocalDate, String> getDailyBottleneck()
      Gets daily bottleneck equipment.
      Returns:
      map of date to bottleneck name
    • getOverallAvailability

      public double getOverallAvailability()
      Gets overall system availability.
      Returns:
      availability fraction (0-1)
    • getNetProductionImpact

      public double getNetProductionImpact()
      Gets the net production impact (gain minus deferred).
      Returns:
      net production change
    • toGanttMarkdown

      public String toGanttMarkdown()
      Generates a Mermaid Gantt chart for the schedule.
      Returns:
      Mermaid Gantt chart syntax
    • toMarkdownTable

      public String toMarkdownTable()
      Generates a summary table in Markdown format.
      Returns:
      Markdown table