Package org.oristool.models.gspn.chains
Class CTMCStationary<M,S extends CTMCState<M>>
java.lang.Object
org.oristool.models.gspn.chains.CTMCStationary<M,S>
- Type Parameters:
M
- type of logic stateS
- type of CTMC states (including a logic state and an exit rate)
public abstract class CTMCStationary<M,S extends CTMCState<M>>
extends Object
implements Function<DTMC<S>,Map<M,Double>>
Computation of the stationary distribution of a CTMC.
LU factorization is used to solve the linear system of stationary probabilities for the embedded DTMC. Exit rates are then used to obtain stationary probabilities of the CTMC from those of the DTMC.
This analysis can be applied to CTMCs with reducible state space and multiple BSCCs. In this case, the stationary probabilities within each BSCC are weighted according to its absorption probability from the initial distribution of the CTMC.
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionRuns this analysis on a CTMC.static <M,
S extends CTMCState<M>>
CTMCStationary.Builder<M,S> builder()
Creates a builder for analysis configurations (with default values).abstract double
epsilon()
Returns the threshold used to decide whether a probability value should be considered equal to0.0
.abstract AnalysisLogger
logger()
Returns the logger used by this analysis.abstract AnalysisMonitor
monitor()
Returns the monitor used by this analysis.
-
Method Details
-
epsilon
public abstract double epsilon()Returns the threshold used to decide whether a probability value should be considered equal to0.0
.By default, it is equal to
1e-9
.- Returns:
- the threshold used in comparisons to
0.0
-
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
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
Creates a builder for analysis configurations (with default values).- Type Parameters:
M
- type of logic stateS
- type of CTMC states (including a logic state and an exit rate)- Returns:
- a builder of
TimedAnalysis
instances.
-
apply
Runs this analysis on a CTMC.
-