LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
sn_rtnodes_to_rtorig.h File Reference

Port of matlab/src/api/sn/sn_rtnodes_to_rtorig.m. More...

#include <cstddef>
#include <string>
#include <vector>
#include "line/api/mc/dtmc_stochcomp.h"
#include "line/lang/qn/network_struct.h"
#include "line/num/number.h"
Include dependency graph for sn_rtnodes_to_rtorig.h:

Go to the source code of this file.

Classes

struct  line::api::SnRtOrig< T >
 What sn_rtnodes_to_rtorig returns: the flat matrix and its per-class-pair blocks. More...

Namespaces

namespace  line
namespace  line::api

Functions

template<class T>
SnRtOrig< T > line::api::sn_rtnodes_to_rtorig (const qn::NetworkStruct< T > &sn)

Detailed Description

Port of matlab/src/api/sn/sn_rtnodes_to_rtorig.m.

sn.rtnodes is over every node the refresh built, INCLUDING the artificial CS_* class-switch nodes that the routing expansion inserts. This recovers the routing over the ORIGINAL nodes by taking the stochastic complement over their rows, i.e. by eliminating the artificial ones rather than dropping them – dropping would lose the class switch the node performs.

The original nodes are those BEFORE the first CS_ node, because the expansion appends. A model with no class switching therefore keeps every node and the complement is the identity operation on rtnodes.

ARITHMETIC: field. dtmc_stochcomp is a linear solve.

Definition in file sn_rtnodes_to_rtorig.h.