Class SolverCTMC.symbolicGeneratorResult

java.lang.Object
jline.solvers.ctmc.SolverCTMC.symbolicGeneratorResult
Enclosing class:
SolverCTMC

public static class SolverCTMC.symbolicGeneratorResult extends Object
  • Field Details

    • eventFilt

      public MatrixCell eventFilt
      Normalized filtration matrix of each event (coefficient of its symbol); empty if the event has no positive rates
    • infGenTerms

      public MatrixCell infGenTerms
      Per-event contribution to the symbolic infinitesimal generator (diagonal included)
    • symbols

      public List<String> symbols
      Symbol names x1..xE; null for events with no positive rates
    • invertSymbol

      public boolean invertSymbol
      True if event filtrations are divided by their symbol instead of multiplied
    • stateSpace

      public Matrix stateSpace
    • nodeStateSpace

      public MatrixCell nodeStateSpace
    • syncInfo

      public Map<Integer,Sync> syncInfo
  • Constructor Details

  • Method Details

    • evalInfGen

      public Matrix evalInfGen(double[] x)
      Evaluate the symbolic generator at the given symbol values.
      Parameters:
      x - value of symbol xe at index e-1, one per event
      Returns:
      numeric infinitesimal generator
    • evalInfGen

      public Matrix evalInfGen(Map<String,Double> assignment)
      Evaluate the symbolic generator at the given symbol assignment.
      Parameters:
      assignment - map from symbol name (e.g. "x1") to value
      Returns:
      numeric infinitesimal generator
    • getSymbolicEntry

      public String getSymbolicEntry(int i, int j)
      Symbolic expression of generator entry (i,j), e.g. "2*x1 - 3*x2".
      Parameters:
      i - row index
      j - column index
      Returns:
      expression string; "0" if the entry is zero
    • toExpressionMatrix

      public String[][] toExpressionMatrix()
      The whole symbolic generator as expression strings, row major.

      This is the wire form the computer algebra backend consumes, see SymEngine.

      Returns:
      n by n array of expressions, "0" where the entry is zero
    • activeSymbols

      public List<String> activeSymbols()
      Symbols that actually occur in the generator.

      An event with no positive rate contributes no symbol and is stored as a null in symbols; those nulls are dropped here so the list matches the symbols the expressions mention.

      Returns:
      the non-null symbol names, in event order
    • prettyPrint

      public void prettyPrint()
      Print the symbolic generator, one row of expressions per state.