Class ConvergenceDiagnostics

java.lang.Object
neqsim.process.equipment.util.ConvergenceDiagnostics
All Implemented Interfaces:
Serializable

public class ConvergenceDiagnostics extends Object implements Serializable
Diagnoses convergence issues in process systems with recycle loops and adjusters.

Inspects all Recycle and Adjuster units in a ProcessSystem to identify which loops are converged, which are stuck, and provides actionable remediation suggestions. Designed for both programmatic use and AI agent troubleshooting.

Usage:

ProcessSystem process = ...;
process.run();

ConvergenceDiagnostics diag = new ConvergenceDiagnostics(process);
ConvergenceDiagnostics.DiagnosticReport report = diag.analyze();

if (!report.isConverged()) {
  System.out.println(report.toJson());
  for (String suggestion : report.getSuggestions()) {
    System.out.println("  - " + suggestion);
  }
}
Version:
1.0
Author:
Even Solbraa
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Serialization version.
      See Also:
    • logger

      private static final org.apache.logging.log4j.Logger logger
      Logger object for class.
    • process

      private final ProcessSystem process
      The process system to diagnose.
  • Constructor Details

    • ConvergenceDiagnostics

      public ConvergenceDiagnostics(ProcessSystem process)
      Creates a convergence diagnostics analyzer for the given process.
      Parameters:
      process - the process system to analyze
  • Method Details

    • analyze

      Analyzes convergence of all recycle and adjuster units.
      Returns:
      diagnostic report with per-unit status and suggestions
    • analyzeRecycle

      private ConvergenceDiagnostics.RecycleStatus analyzeRecycle(Recycle recycle)
      Analyzes a single recycle unit.
      Parameters:
      recycle - the recycle to analyze
      Returns:
      status of the recycle
    • analyzeAdjuster

      private ConvergenceDiagnostics.AdjusterStatus analyzeAdjuster(Adjuster adjuster)
      Analyzes a single adjuster unit.
      Parameters:
      adjuster - the adjuster to analyze
      Returns:
      status of the adjuster
    • generateRecycleSuggestions

      private List<String> generateRecycleSuggestions(ConvergenceDiagnostics.RecycleStatus status)
      Generates remediation suggestions for an unconverged recycle.
      Parameters:
      status - the recycle status
      Returns:
      list of suggestions
    • generateAdjusterSuggestions

      private List<String> generateAdjusterSuggestions(ConvergenceDiagnostics.AdjusterStatus status)
      Generates remediation suggestions for an unconverged adjuster.
      Parameters:
      status - the adjuster status
      Returns:
      list of suggestions