Class ModelPredictiveController.QualityConstraint

java.lang.Object
neqsim.process.controllerdevice.ModelPredictiveController.QualityConstraint
Enclosing class:
ModelPredictiveController

public static final class ModelPredictiveController.QualityConstraint extends Object
Representation of a quality constraint handled by the MPC. Each constraint links a measurement device with linear sensitivities describing how the quality responds to control actions, feed composition shifts and feed rate changes. Inequality limits are enforced softly by the quadratic program to keep the process within specification while still penalising unnecessary control effort.
  • Field Details

    • name

      private final String name
    • measurement

      private final MeasurementDeviceInterface measurement
    • unit

      private final String unit
    • limit

      private final double limit
    • margin

      private final double margin
    • controlSensitivity

      private final double[] controlSensitivity
    • compositionSensitivity

      private final Map<String,Double> compositionSensitivity
    • rateSensitivity

      private final double rateSensitivity
    • lastMeasurement

      private double lastMeasurement
    • predictedValue

      private double predictedValue
  • Constructor Details

  • Method Details

    • builder

      Parameters:
      name - identifier for the constraint
      Returns:
      builder instance
    • getControlSensitivity

      double[] getControlSensitivity()
    • computeFeedEffect

      double computeFeedEffect(Map<String,Double> deltaComposition, double deltaRate)
    • getMeasurement

      MeasurementDeviceInterface getMeasurement()
    • getUnit

      String getUnit()
    • getLimit

      double getLimit()
    • getMargin

      double getMargin()
    • getName

      String getName()
    • getLastMeasurement

      double getLastMeasurement()
    • setLastMeasurement

      void setLastMeasurement(double value)
    • getPredictedValue

      double getPredictedValue()
    • setPredictedValue

      void setPredictedValue(double value)