LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
line::SolverCTMC Class Reference

SolverCTMC: the average table plus the chain it was computed from. More...

#include <line/solvers/solver.h>

Inheritance diagram for line::SolverCTMC:
Collaboration diagram for line::SolverCTMC:

Public Member Functions

 SolverCTMC (Network &m, const SolverOptions &o=SolverOptions())
 SolverCTMC (Network &m, const std::string &method)
Matrix< double > state_space ()
 getStateSpace(): the aggregate state space, one row per state.
Matrix< double > generator ()
 getGenerator(): the infinitesimal generator over that space.
double prob_aggr (std::size_t node, const std::vector< double > &state)
 getProbAggr(node, state): the aggregate marginal of one state.
std::vector< double > marg_aggr (std::size_t node)
 getProbStateAggr(node): the marginal over every state of one station.
std::vector< std::vector< CdfCurve > > cdf_respt ()
 getCdfRespT(): the response-time CDF per (station, class).
Public Member Functions inherited from line::NetworkSolver
virtual ~NetworkSolver ()
const std::string & get_name () const
 getName(): the solver's own name, e.g.
const SolverOptionsoptions () const
 The options this solver was built with.
Networkmodel () const
 The model this solver was built on.
const AvgTableavg_table ()
 getAvgTable(): the average table, solving on first demand.
const AvgTableavg_sys_table ()
 getAvgSysTable(): the per-class system columns of the same solve.
const AvgTablerun_analyzer ()
 runAnalyzer(): force the solve, returning the table it produced.
std::vector< std::string > list_valid_methods () const
 listValidMethods(): the methods this solver advertises on this model.
bool is_solved () const
 isSolved() / hasResults(): whether a solve has been performed.
void reset ()
 reset(): discard the cached solve.
std::string method_used ()
 getMethodUsed(): the method the solve actually resolved to.

Static Public Member Functions

static void print_inf_gen (const Matrix< double > &Q, const Matrix< double > &space)
 CTMC.printInfGen(Q, SS): the generator beside the state it belongs to.

Additional Inherited Members

Protected Member Functions inherited from line::NetworkSolver
 NetworkSolver (Network &m, const std::string &name, const SolverOptions &o)
Protected Attributes inherited from line::NetworkSolver
Networkmodel_
std::string name_
SolverOptions opts_
AvgTable table_
bool solved_ = false

Detailed Description

SolverCTMC: the average table plus the chain it was computed from.

Definition at line 124 of file solver.h.

Constructor & Destructor Documentation

◆ SolverCTMC() [1/2]

line::SolverCTMC::SolverCTMC ( Network & m,
const SolverOptions & o = SolverOptions() )
inlineexplicit

Definition at line 126 of file solver.h.

References line::NetworkSolver::NetworkSolver().

◆ SolverCTMC() [2/2]

line::SolverCTMC::SolverCTMC ( Network & m,
const std::string & method )
inline

Definition at line 128 of file solver.h.

References line::NetworkSolver::NetworkSolver().

Member Function Documentation

◆ cdf_respt()

std::vector< std::vector< CdfCurve > > line::SolverCTMC::cdf_respt ( )

getCdfRespT(): the response-time CDF per (station, class).

Definition at line 415 of file solver_facade.cpp.

References line::qn::Network< T >::get_struct(), line::NetworkSolver::model_, line::NetworkSolver::opts_, and line::ctmc::solver_ctmc_cdf_respt().

◆ generator()

Matrix< double > line::SolverCTMC::generator ( )

getGenerator(): the infinitesimal generator over that space.

Definition at line 368 of file solver_facade.cpp.

References line::ctmc::ctmc_get_infgen(), line::qn::Network< T >::get_struct(), line::NetworkSolver::model_, line::NetworkSolver::opts_, and line::ctmc::solver_ctmc_analyzer().

◆ marg_aggr()

std::vector< double > line::SolverCTMC::marg_aggr ( std::size_t node)

◆ print_inf_gen()

void line::SolverCTMC::print_inf_gen ( const Matrix< double > & Q,
const Matrix< double > & space )
static

CTMC.printInfGen(Q, SS): the generator beside the state it belongs to.

Definition at line 428 of file solver_facade.cpp.

References line::Matrix< T >::cols(), and line::Matrix< T >::rows().

◆ prob_aggr()

double line::SolverCTMC::prob_aggr ( std::size_t node,
const std::vector< double > & state )

◆ state_space()

Matrix< double > line::SolverCTMC::state_space ( )

getStateSpace(): the aggregate state space, one row per state.

Definition at line 362 of file solver_facade.cpp.

References line::ctmc::ctmc_get_state_space(), line::qn::Network< T >::get_struct(), line::NetworkSolver::model_, line::NetworkSolver::opts_, and line::ctmc::solver_ctmc_analyzer().


The documentation for this class was generated from the following files: