Class ConformityRuleSet

java.lang.Object
neqsim.process.mechanicaldesign.separator.conformity.ConformityRuleSet
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
ConformityRuleSet.TR3500RuleSet

public abstract class ConformityRuleSet extends Object implements Serializable
Defines conformity rules for a specific design standard.

Each rule set defines what checks to perform based on the standard (TR3500, Shell DEP, API 12J, NORSOK P-002) and what internals are installed. The checks are internals-aware: inlet devices trigger momentum checks, demisting cyclones trigger drainage checks, mesh pads trigger mesh K-value checks, etc.

Usage:

ConformityRuleSet rules = ConformityRuleSet.create("TR3500");
ConformityReport report = rules.evaluate(scrubberMechDesign);
Version:
1.0
Author:
NeqSim Development Team
See Also:
  • Field Details

    • serialVersionUID

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

      private final String name
  • Constructor Details

    • ConformityRuleSet

      protected ConformityRuleSet(String name)
      Constructs a ConformityRuleSet.
      Parameters:
      name - the standard name
  • Method Details

    • create

      public static ConformityRuleSet create(String standardName)
      Creates a rule set for the named standard.
      Parameters:
      standardName - the standard identifier: "TR3500", "API-12J", "Shell-DEP", "NORSOK-P002"
      Returns:
      a ConformityRuleSet for the named standard
      Throws:
      IllegalArgumentException - if the standard is not recognized
    • getName

      public String getName()
      Gets the standard name.
      Returns:
      the standard name
    • evaluate

      public abstract ConformityReport evaluate(GasScrubberMechanicalDesign design)
      Evaluates all applicable conformity checks against the given mechanical design.

      The checks run depend on what internals are installed. The method reads operating conditions from the scrubber's current fluid state (after the most recent run).

      Parameters:
      design - the scrubber mechanical design to check
      Returns:
      a conformity report with all check results
    • getConstraintNames

      public abstract List<String> getConstraintNames(GasScrubberMechanicalDesign design)
      Returns the names of CapacityConstraints that this standard defines.

      These can be used to enable the corresponding constraints on the Separator via separator.enableConstraints(...).

      Parameters:
      design - the mechanical design (to check which internals are installed)
      Returns:
      list of constraint names to enable