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

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

#include <cmath>
#include <cstddef>
#include "line/lang/qn/network_struct.h"
#include "line/num/number.h"
Include dependency graph for sn_has_classdep_routing.h:

Go to the source code of this file.

Namespaces

namespace  line
namespace  line::api

Functions

template<class T>
bool line::api::sn_has_classdep_routing (const qn::NetworkStruct< T > &sn)

Detailed Description

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

True when the routing depends on the class: either some edge switches class (an off-diagonal (r,s) block entry) or two classes leave the same pair (i,j) with different probabilities. SolverMVA reads it to decide whether a per-chain aggregate routing is faithful, so a false negative aggregates a class-dependent model and returns a chain answer for a class question.

INDEX SPACE. The reference walks i and j over STATIONS while indexing sn.rt, which is over STATEFUL NODES. The two coincide unless the model has a stateful non-station node (a Router, a Cache), and this port reproduces the reference walk rather than correcting it: the predicate gates a dispatch branch, and answering it on a different index space would send models down a different path here than in every other codebase.

ARITHMETIC: field. Comparisons only.

Definition in file sn_has_classdep_routing.h.