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

One conservation law, as an aggregation over a node's structural neighbours. More...

#include <line/api/lqn/lqn_balance_equations.h>

Collaboration diagram for line::lqn::LqnRelation< T >:

Public Attributes

std::string kind
 little | callflow | entryflow | actflow | hostutil
std::string branch
 the case that produced it: ref/inf/queueing/fwd/arrival, or a call type
std::size_t target = 0
 absolute index the relation is anchored on
std::string targetname
std::vector< std::size_t > terms
 absolute indices to aggregate over
std::vector< bool > termisentry
 per term, true for an ENTRY class (open arrival, or a reference task's own cycle) and false for a CALL class; the two read their rate from different vectors
std::vector< T > coeff
 constant coefficient of each term
T rhsconst = num_traits<T>::from_int(0)
 right-hand-side constant
double mult = 0.0
double maxmult = 0.0
double repl = 1.0
bool scaled = false
 the per-class utilization needs *mult to reach job units
bool phase2 = false
bool setup = false
bool degenerate = false
 unusable as a residual: infinite mult, no terms, zero call count
bool clamped = false
 instantiated and saturated: the equality is unattainable
std::string text
bool has_residual = false
 NaN until instantiated.
T lhs = num_traits<T>::from_int(0)
T rhs = num_traits<T>::from_int(0)
T residual = num_traits<T>::from_int(0)
T relresidual = num_traits<T>::from_int(0)
std::vector< T > perclassutil

Detailed Description

template<class T>
struct line::lqn::LqnRelation< T >

One conservation law, as an aggregation over a node's structural neighbours.

Definition at line 100 of file lqn_balance_equations.h.

Member Data Documentation

◆ branch

template<class T>
std::string line::lqn::LqnRelation< T >::branch

the case that produced it: ref/inf/queueing/fwd/arrival, or a call type

Definition at line 102 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ clamped

template<class T>
bool line::lqn::LqnRelation< T >::clamped = false

instantiated and saturated: the equality is unattainable

Definition at line 115 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ coeff

template<class T>
std::vector<T> line::lqn::LqnRelation< T >::coeff

constant coefficient of each term

Definition at line 109 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ degenerate

template<class T>
bool line::lqn::LqnRelation< T >::degenerate = false

unusable as a residual: infinite mult, no terms, zero call count

Definition at line 114 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ has_residual

template<class T>
bool line::lqn::LqnRelation< T >::has_residual = false

NaN until instantiated.

has_residual is false when no solution was supplied, or when this relation needs a datum the solution does not carry.

Definition at line 119 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ kind

template<class T>
std::string line::lqn::LqnRelation< T >::kind

little | callflow | entryflow | actflow | hostutil

Definition at line 101 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ lhs

template<class T>
T line::lqn::LqnRelation< T >::lhs = num_traits<T>::from_int(0)

Definition at line 120 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ maxmult

template<class T>
double line::lqn::LqnRelation< T >::maxmult = 0.0

Definition at line 111 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ mult

template<class T>
double line::lqn::LqnRelation< T >::mult = 0.0

Definition at line 111 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ perclassutil

template<class T>
std::vector<T> line::lqn::LqnRelation< T >::perclassutil

Definition at line 122 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ phase2

template<class T>
bool line::lqn::LqnRelation< T >::phase2 = false

Definition at line 113 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ relresidual

template<class T>
T line::lqn::LqnRelation< T >::relresidual = num_traits<T>::from_int(0)

Definition at line 121 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ repl

template<class T>
double line::lqn::LqnRelation< T >::repl = 1.0

Definition at line 111 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ residual

template<class T>
T line::lqn::LqnRelation< T >::residual = num_traits<T>::from_int(0)

Definition at line 121 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ rhs

template<class T>
T line::lqn::LqnRelation< T >::rhs = num_traits<T>::from_int(0)

Definition at line 120 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ rhsconst

template<class T>
T line::lqn::LqnRelation< T >::rhsconst = num_traits<T>::from_int(0)

right-hand-side constant

Definition at line 110 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ scaled

template<class T>
bool line::lqn::LqnRelation< T >::scaled = false

the per-class utilization needs *mult to reach job units

Definition at line 112 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ setup

template<class T>
bool line::lqn::LqnRelation< T >::setup = false

Definition at line 113 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ target

template<class T>
std::size_t line::lqn::LqnRelation< T >::target = 0

absolute index the relation is anchored on

Definition at line 103 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ targetname

template<class T>
std::string line::lqn::LqnRelation< T >::targetname

Definition at line 104 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ termisentry

template<class T>
std::vector<bool> line::lqn::LqnRelation< T >::termisentry

per term, true for an ENTRY class (open arrival, or a reference task's own cycle) and false for a CALL class; the two read their rate from different vectors

Definition at line 108 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ terms

template<class T>
std::vector<std::size_t> line::lqn::LqnRelation< T >::terms

absolute indices to aggregate over

Definition at line 105 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().

◆ text

template<class T>
std::string line::lqn::LqnRelation< T >::text

Definition at line 116 of file lqn_balance_equations.h.

Referenced by line::lqn::lqn_balance_equations().


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