Class CompressorOperatingHistory

java.lang.Object
neqsim.process.equipment.compressor.CompressorOperatingHistory
All Implemented Interfaces:
Serializable

public class CompressorOperatingHistory extends Object implements Serializable
Records and tracks compressor operating history for analysis and trending.

This class stores operating points over time, enabling post-simulation analysis of compressor behavior, surge events, and performance trends.

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

  • Constructor Details

    • CompressorOperatingHistory

      public CompressorOperatingHistory()
  • Method Details

    • recordOperatingPoint

      public void recordOperatingPoint(double time, Compressor compressor)
      Record a new operating point from a compressor.
      Parameters:
      time - simulation time in seconds
      compressor - the compressor to record data from
    • recordOperatingPoint

      public void recordOperatingPoint(CompressorOperatingHistory.OperatingPoint point)
      Record a new operating point.
      Parameters:
      point - the operating point to record
    • getHistory

      Get the complete operating history.
      Returns:
      list of all recorded operating points
    • getTimeInSurge

      public double getTimeInSurge()
      Get the total time spent in surge condition.
      Returns:
      time in seconds
    • getSurgeEventCount

      public int getSurgeEventCount()
      Get the number of surge events.
      Returns:
      count of times the compressor entered surge
    • getPeakPower

      Get the operating point where peak power occurred.
      Returns:
      the peak power operating point, or null if no data recorded
    • getPeakHead

      Get the operating point where peak head occurred.
      Returns:
      the peak head operating point, or null if no data recorded
    • getPeakFlow

      Get the operating point where peak flow occurred.
      Returns:
      the peak flow operating point, or null if no data recorded
    • getMinimumSurgeMargin

      public double getMinimumSurgeMargin()
      Get the minimum surge margin observed.
      Returns:
      minimum surge margin as ratio, or 1.0 if no data
    • getAverageEfficiency

      public double getAverageEfficiency()
      Get the average efficiency over the recorded period.
      Returns:
      average polytropic efficiency
    • getPointCount

      public int getPointCount()
      Get the number of recorded operating points.
      Returns:
      count of points in history
    • clear

      public void clear()
      Clear all recorded history.
    • exportToCSV

      public void exportToCSV(String filename) throws IOException
      Export the operating history to a CSV file.
      Parameters:
      filename - the path to the output file
      Throws:
      IOException - if file cannot be written
    • generateSummary

      public String generateSummary()
      Generate a summary report of the operating history.
      Returns:
      multi-line summary string