Class OneGenTransient

java.lang.Object
org.oristool.models.stpn.onegen.OneGenTransient
All Implemented Interfaces:
Engine<PetriNet,Marking,TransientSolution<DeterministicEnablingState,Marking>>

public abstract class OneGenTransient extends Object implements Engine<PetriNet,Marking,TransientSolution<DeterministicEnablingState,Marking>>
Transient analysis of STPNs with at most one general transition enabled in each state.
  • Method Details

    • timeBound

      public abstract BigDecimal timeBound()
      Returns the maximum time bound for the analysis.

      This parameter has no default value; it must be specified by the user.

      Returns:
      time bound of transient probabilities
    • timeStep

      public abstract BigDecimal timeStep()
      Returns the step used to compute transient probabilities from 0 to this.timeBound().

      This parameter has no default value; it must be specified by the user.

      Returns:
      step of transient probabilities
    • error

      public abstract BigDecimal error()
      Returns the maximum allowed error for the computation of transient probabilities of subordinated CTMCs.

      This parameter has no default value; it must be specified by the user.

      Returns:
      error of subordinated transient probabilities
    • stopOn

      public abstract Supplier<StopCriterion> stopOn()
      Returns the supplier of local stop criterion instances used by this analysis. It can be used to avoid the expansion of some state classes, as if their states were absorbing.

      A stop criterion instance is generated for each run.

      By default, an always-false local stop criterion is used.

      Returns:
      the supplier of local stop criterion
    • monitor

      public abstract AnalysisMonitor monitor()
      Returns the monitor used by this analysis. It is used to stop the analysis early and to notify messages to the user.

      By default, an always-false, message-discarding monitor is used.

      Returns:
      the monitor used by this analysis
    • logger

      public abstract AnalysisLogger logger()
      Returns the logger used by this analysis. It is used to print progress information.

      By default, logs are discarded.

      Returns:
      the logger used by this analysis
    • builder

      public static OneGenTransient.Builder builder()
      Creates a builder for analysis configurations (with default values).
      Returns:
      a builder of TimedAnalysis instances.
    • compute

      Description copied from interface: Engine
      Runs the analysis engine on a given model and initial state.
      Specified by:
      compute in interface Engine<PetriNet,Marking,TransientSolution<DeterministicEnablingState,Marking>>
      Parameters:
      pn - input model (such as a Petri net)
      m - initial state for the analysis (such as a Marking)
      Returns:
      the result of the analysis
    • canAnalyze

      public boolean canAnalyze(PetriNet pn, ValidationMessageCollector c)
      Description copied from interface: Engine
      Checks if the analysis can be applied to the given model.

      Problems are collected in a ValidationMessageCollector.

      Specified by:
      canAnalyze in interface Engine<PetriNet,Marking,TransientSolution<DeterministicEnablingState,Marking>>
      Parameters:
      pn - input model (such as a Petri net)
      c - collector of error messages
      Returns:
      true if the analysis can be applied to the given model