![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Variable layout of the p1-level models. More...
#include <line/api/mapqn/mapqn_p1_common.h>
Public Member Functions | |
| MapqnP1Index () | |
| MapqnP1Index (int m, int n, const std::vector< int > &k, bool with_p2) | |
| std::size_t | pk (int i, int k) const |
| Flat (queue, phase) index, range sumK. | |
| std::size_t | half (int i, int ni, int h) const |
| Flat (queue, population, phase) half-index, range block. | |
| std::size_t | U (int i, int k) const |
| std::size_t | IT (int i, int k) const |
| std::size_t | Q (int i, int k) const |
| std::size_t | C (int j, int k, int i) const |
| std::size_t | p1 (int j, int k, int i, int ni, int h) const |
| std::size_t | p1c (int j, int k, int i, int ni, int h) const |
| std::size_t | p2 (int j, int nj, int k, int i, int ni, int h) const |
| std::size_t | num_vars () const |
Public Attributes | |
| int | M = 0 |
| int | N = 0 |
| std::vector< int > | K |
| std::vector< int > | cumK |
| cumK[i] = sum_{i' < i} K(i') | |
| std::size_t | sumK = 0 |
| sum_i K(i) | |
| std::size_t | block = 0 |
| (N+1) * sumK, the pairwise half-index range | |
| bool | has_p2 = false |
| std::size_t | off_U = 0 |
| std::size_t | off_IT = 0 |
| std::size_t | off_Q = 0 |
| std::size_t | off_C = 0 |
| std::size_t | off_p1 = 0 |
| std::size_t | off_p1c = 0 |
| std::size_t | off_p2 = 0 |
| std::size_t | total = 0 |
Variable layout of the p1-level models.
with_p2 selects the quadratic reduction's extra block; the linear reduction carries no joint variables at all, and allocating them would square the model for nothing.
Definition at line 55 of file mapqn_p1_common.h.
|
inline |
Definition at line 65 of file mapqn_p1_common.h.
|
inline |
|
inline |
Definition at line 96 of file mapqn_p1_common.h.
|
inline |
|
inline |
Definition at line 94 of file mapqn_p1_common.h.
Referenced by line::mapqn::mapqn_bnd_lr(), and line::mapqn::mapqn_bnd_qr().
|
inline |
Definition at line 109 of file mapqn_p1_common.h.
References total.
Referenced by line::mapqn::mapqn_bnd_lr(), and line::mapqn::mapqn_bnd_qr().
|
inline |
|
inline |
|
inline |
Definition at line 105 of file mapqn_p1_common.h.
|
inline |
|
inline |
Definition at line 95 of file mapqn_p1_common.h.
Referenced by line::mapqn::mapqn_bnd_lr(), and line::mapqn::mapqn_bnd_qr().
|
inline |
Definition at line 93 of file mapqn_p1_common.h.
Referenced by line::mapqn::mapqn_bnd_lr(), and line::mapqn::mapqn_bnd_qr().
| std::size_t line::mapqn::MapqnP1Index::block = 0 |
(N+1) * sumK, the pairwise half-index range
Definition at line 60 of file mapqn_p1_common.h.
Referenced by MapqnP1Index(), p1(), p1c(), and p2().
| std::vector<int> line::mapqn::MapqnP1Index::cumK |
cumK[i] = sum_{i' < i} K(i')
Definition at line 58 of file mapqn_p1_common.h.
Referenced by half(), MapqnP1Index(), and pk().
| bool line::mapqn::MapqnP1Index::has_p2 = false |
Definition at line 61 of file mapqn_p1_common.h.
Referenced by MapqnP1Index().
| std::vector<int> line::mapqn::MapqnP1Index::K |
Definition at line 57 of file mapqn_p1_common.h.
Referenced by half(), and MapqnP1Index().
| int line::mapqn::MapqnP1Index::M = 0 |
Definition at line 56 of file mapqn_p1_common.h.
Referenced by C(), and MapqnP1Index().
| int line::mapqn::MapqnP1Index::N = 0 |
Definition at line 56 of file mapqn_p1_common.h.
Referenced by half(), and MapqnP1Index().
| std::size_t line::mapqn::MapqnP1Index::off_C = 0 |
Definition at line 62 of file mapqn_p1_common.h.
Referenced by C(), and MapqnP1Index().
| std::size_t line::mapqn::MapqnP1Index::off_IT = 0 |
Definition at line 62 of file mapqn_p1_common.h.
Referenced by IT(), and MapqnP1Index().
| std::size_t line::mapqn::MapqnP1Index::off_p1 = 0 |
Definition at line 63 of file mapqn_p1_common.h.
Referenced by MapqnP1Index(), and p1().
| std::size_t line::mapqn::MapqnP1Index::off_p1c = 0 |
Definition at line 63 of file mapqn_p1_common.h.
Referenced by MapqnP1Index(), and p1c().
| std::size_t line::mapqn::MapqnP1Index::off_p2 = 0 |
Definition at line 63 of file mapqn_p1_common.h.
Referenced by MapqnP1Index(), and p2().
| std::size_t line::mapqn::MapqnP1Index::off_Q = 0 |
Definition at line 62 of file mapqn_p1_common.h.
Referenced by MapqnP1Index(), and Q().
| std::size_t line::mapqn::MapqnP1Index::off_U = 0 |
Definition at line 62 of file mapqn_p1_common.h.
Referenced by MapqnP1Index(), and U().
| std::size_t line::mapqn::MapqnP1Index::sumK = 0 |
| std::size_t line::mapqn::MapqnP1Index::total = 0 |
Definition at line 63 of file mapqn_p1_common.h.
Referenced by MapqnP1Index(), and num_vars().