LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
line::ctmc::CtmcSolution< T > Struct Template Reference

Everything one CTMC solve produces. More...

#include <line/solvers/ctmc/solver_ctmc_analyzer.h>

Collaboration diagram for line::ctmc::CtmcSolution< T >:

Public Attributes

CtmcResult< T > chain
std::vector< T > pi
 stationary distribution over chain.space
CtmcAvg< T > avg
std::vector< std::size_t > cutoff
 the per-class cutoff actually used
std::string actualmethod = "default"
std::vector< std::size_t > fjclassmap
 fjclassmap when the model was fork-join, empty otherwise: the ORIGINAL class of each auxiliary sibling class of the AUGMENTED struct that chain and pi are indexed by.
solvers::CacheMetrics< T > cache
 What the chain says about the model's Cache nodes: exact, since the hit and miss shares are read off the stationary law rather than approximated.
std::string warning
 Set when the chain is a reducible mixture solved from an invented seed.

Detailed Description

template<class T>
struct line::ctmc::CtmcSolution< T >

Everything one CTMC solve produces.

chain is the generator RESTRICTED to the component that was kept, together with the state space and the per-state arrival and departure rates on it. The rates are carried rather than recomputed because Q has already summed every synchronization's contribution into one entry, and a per-class rate cannot be recovered from that sum afterwards.

Definition at line 200 of file solver_ctmc_analyzer.h.

Member Data Documentation

◆ actualmethod

◆ avg

◆ cache

template<class T>
solvers::CacheMetrics<T> line::ctmc::CtmcSolution< T >::cache

What the chain says about the model's Cache nodes: exact, since the hit and miss shares are read off the stationary law rather than approximated.

Empty on a model with no Cache.

Definition at line 218 of file solver_ctmc_analyzer.h.

Referenced by line::ctmc::solve_struct(), and line::ctmc::solver_ctmc_avg_table().

◆ chain

◆ cutoff

template<class T>
std::vector<std::size_t> line::ctmc::CtmcSolution< T >::cutoff

the per-class cutoff actually used

Definition at line 204 of file solver_ctmc_analyzer.h.

Referenced by line::ctmc::solve_struct().

◆ fjclassmap

template<class T>
std::vector<std::size_t> line::ctmc::CtmcSolution< T >::fjclassmap

fjclassmap when the model was fork-join, empty otherwise: the ORIGINAL class of each auxiliary sibling class of the AUGMENTED struct that chain and pi are indexed by.

avg is already folded back onto the original classes, so this is what relates the two index spaces.

Definition at line 212 of file solver_ctmc_analyzer.h.

Referenced by line::ctmc::solver_ctmc_analyzer().

◆ pi

◆ warning

template<class T>
std::string line::ctmc::CtmcSolution< T >::warning

Set when the chain is a reducible mixture solved from an invented seed.

Definition at line 220 of file solver_ctmc_analyzer.h.

Referenced by line::ctmc::solve_struct().


The documentation for this struct was generated from the following file: