Package neqsim.process.util.reconciliation


package neqsim.process.util.reconciliation
Data reconciliation and steady-state detection for online process optimization.

This package provides two complementary capabilities for online process optimization:

1. Steady-State Detection (SSD) — monitors process variables over a sliding window and determines when the process has reached steady state using the R-statistic (ratio of filtered to unfiltered variance), optional slope and std.dev tests. Only steady-state data should be fed into reconciliation or model calibration.

2. Data Reconciliation — weighted least squares (WLS) adjustment of plant measurements so that mass (and energy) balance constraints are exactly satisfied, with gross error detection via normalized residual tests and iterative elimination of faulty sensors.

Key classes:

Typical online workflow:

// 1. Monitor for steady state
SteadyStateDetector ssd = new SteadyStateDetector(30);
ssd.addVariable(new SteadyStateVariable("feed", 30).setUncertainty(20.0));
ssd.addVariable(new SteadyStateVariable("gas", 30).setUncertainty(15.0));
ssd.addVariable(new SteadyStateVariable("liquid", 30).setUncertainty(10.0));

// 2. Push readings and check
ssd.updateVariable("feed", 1000.5);
ssd.updateVariable("gas", 600.2);
ssd.updateVariable("liquid", 399.1);
SteadyStateResult ssResult = ssd.evaluate();

// 3. When steady, reconcile
if (ssResult.isAtSteadyState()) {
  DataReconciliationEngine engine = ssd.createReconciliationEngine();
  engine.addMassBalanceConstraint("Sep", new String[] {"feed"}, new String[] {"gas", "liquid"});
  ReconciliationResult recResult = engine.reconcile();
  System.out.println(recResult.toReport());
}
Version:
1.0
Author:
Process Optimization Team
See Also: