Class SolverCandidate

java.lang.Object
jline.solvers.auto.SolverCandidate

public final class SolverCandidate extends Object
One row of SolverAUTO.findSolver(): a (family, method) pair this model can be asked for, whether it runs, what kind of answer it returns and which measures it can report.

The fields are the columns of the MATLAB table returned by @SolverAUTO/findSolver.m and of the pandas frame returned by the native python twin, under the same names, so a report can be compared across the three codebases row for row.

  • Field Details

    • CLASS_EXACT

      public static final String CLASS_EXACT
      See Also:
    • CLASS_APPROX

      public static final String CLASS_APPROX
      An approximation of the model's true measures.
      See Also:
    • CLASS_BOUND

      public static final String CLASS_BOUND
      A bracket rather than an estimate.
      See Also:
    • CLASS_SIMULATION

      public static final String CLASS_SIMULATION
      A seed-dependent estimate from a sample path.
      See Also:
    • solver

      public final String solver
      The method family: "mva", "ctmc", "ldes", ...
    • method

      public final String method
      The method name to pass as a method name, e.g. "mva.exact".
    • runnable

      public final boolean runnable
      True when the model passes this method's own support gate.
    • methodClass

      public final String methodClass
      One of the four CLASS_ constants.
    • metrics

      public final String metrics
      The measure groups the family answers, comma-joined.
    • reason

      public final String reason
      Why a refused pair was refused, prefixed by "'x' runs as 'y' on this model." when the name resolves; empty for a runnable pair that runs as itself.
  • Constructor Details

    • SolverCandidate

      public SolverCandidate(String solver, String method, boolean runnable, String methodClass, String metrics, String reason)
      Parameters:
      solver - the method family
      method - the qualified method name
      runnable - whether the model passes this method's gate
      methodClass - one of the CLASS_ constants
      metrics - comma-joined measure groups
      reason - the refusal reason, empty when runnable
  • Method Details

    • getSolver

      public String getSolver()
      Returns:
      the method family
    • getMethod

      public String getMethod()
      Returns:
      the qualified method name
    • isRunnable

      public boolean isRunnable()
      Returns:
      whether the model passes this method's gate
    • getMethodClass

      public String getMethodClass()
      Returns:
      one of the CLASS_ constants
    • getMetrics

      public String getMetrics()
      Returns:
      the comma-joined measure groups
    • getReason

      public String getReason()
      Returns:
      the refusal reason, empty when runnable
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • toTable

      public static String toTable(List<SolverCandidate> rows)
      The rows as an aligned text table, the form the CLI and a console caller want. The Reason column is last and unpadded, since it is the only one whose width is unbounded.
      Parameters:
      rows - the rows to render, may be empty
      Returns:
      the table as a printable string, with a trailing newline