Package jline.solvers

Class NetworkBoundsTable

java.lang.Object
jline.solvers.AvgTable
jline.solvers.NetworkBoundsTable

public class NetworkBoundsTable extends AvgTable
Table of bound brackets produced by SolverBA, in the layout of NetworkAvgTable.

Each row is a station-class pair carrying the lower and upper side of a bound family: queue length (Qlower, Qupper) and throughput (Tlower, Tupper). The two sides bracket the exact solution.

One-sided families (cub is upper-only, mbjb and ldbcmp are lower-only) carry NaN on the missing side. NaN is preserved rather than replaced by zero, so a reader can tell "no bound on this side" apart from "the bound is zero".

See Also:
  • Constructor Details

    • NetworkBoundsTable

      public NetworkBoundsTable(List<Double> Qlower, List<Double> Qupper, List<Double> Tlower, List<Double> Tupper)
      Creates a bounds table from the four bracket columns.
      Parameters:
      Qlower - list of queue-length lower bounds
      Qupper - list of queue-length upper bounds
      Tlower - list of throughput lower bounds
      Tupper - list of throughput upper bounds
  • Method Details

    • getQlower

      public List<Double> getQlower()
      Returns the queue-length lower bounds.
      Returns:
      the Qlower column
    • getQupper

      public List<Double> getQupper()
      Returns the queue-length upper bounds.
      Returns:
      the Qupper column
    • getTlower

      public List<Double> getTlower()
      Returns the throughput lower bounds.
      Returns:
      the Tlower column
    • getTupper

      public List<Double> getTupper()
      Returns the throughput upper bounds.
      Returns:
      the Tupper column
    • getClassNames

      public List<String> getClassNames()
      Returns the job class names, one per row.
      Returns:
      the class names
    • setClassNames

      public void setClassNames(List<String> classNames)
      Sets the job class names, one per row.
      Parameters:
      classNames - the class names
    • getStationNames

      public List<String> getStationNames()
      Returns the station names, one per row.
      Returns:
      the station names
    • setStationNames

      public void setStationNames(List<String> stationNames)
      Sets the station names, one per row.
      Parameters:
      stationNames - the station names
    • setNumberOfDigits

      public void setNumberOfDigits(int nd)
      Sets the number of decimal digits used when printing.
      Parameters:
      nd - number of decimal digits
    • setOptions

      public void setOptions(SolverOptions options)
      Sets the solver options associated with this table.
      Overrides:
      setOptions in class AvgTable
      Parameters:
      options - the solver options
    • print

      public void print()
      Prints the table using the options attached to it.
      Specified by:
      print in class AvgTable
    • print

      public void print(SolverOptions options)
      Prints the table.

      Unlike NetworkAvgTable.print(), no row is suppressed on the grounds of being all-zero: a bound of zero is a meaningful result, and a one-sided family would otherwise lose rows whose only present side is zero. Row filtering happens once, in SolverBA.getBoundsTable.

      Parameters:
      options - the solver options controlling verbosity
    • printTable

      public void printTable()
      Prints the table using the options attached to it.
    • printTable

      public void printTable(SolverOptions options)
      Prints the table.
      Parameters:
      options - the solver options controlling verbosity