![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
A local rate matrix W_k^e of the Kronecker descriptor, held row-compressed. More...
#include <line/api/mdd/mdd_types.h>
Classes | |
| class | Builder |
| Incremental triplet builder; duplicate entries are accumulated. More... | |
Static Public Member Functions | |
| static MddLocalMatrix< T > | identity (std::size_t d) |
| The identity of the given order, used for a level an event does not touch. | |
Public Attributes | |
| std::size_t | dim = 0 |
| Order of the (square) local matrix, i.e. | |
| std::vector< std::vector< std::size_t > > | cols |
| cols[i] holds the column indices of the nonzeros of row i. | |
| std::vector< std::vector< T > > | vals |
| vals[i] holds the values of the nonzeros of row i, aligned with cols[i]. | |
| std::vector< T > | row_sum |
| row_sum[i] is the local enabling rate lambda[i]. | |
| std::size_t | nnz = 0 |
| Total number of stored nonzeros. | |
A local rate matrix W_k^e of the Kronecker descriptor, held row-compressed.
The aggregation only ever walks a row of W and needs its row sums (the local enabling rates lambda_k^e), so the rows are stored as parallel column/value arrays rather than as a general sparse matrix. Duplicate triplets are summed when the matrix is built, so a caller may emit the same (i,j) more than once.
Definition at line 46 of file mdd_types.h.
|
inlinestatic |
The identity of the given order, used for a level an event does not touch.
Definition at line 59 of file mdd_types.h.
References cols, dim, nnz, row_sum, and vals.
Referenced by line::mdd::mdd_mcd().
| std::vector<std::vector<std::size_t> > line::mdd::MddLocalMatrix< T >::cols |
cols[i] holds the column indices of the nonzeros of row i.
Definition at line 50 of file mdd_types.h.
Referenced by line::mdd::MddLocalMatrix< T >::Builder::build(), and identity().
| std::size_t line::mdd::MddLocalMatrix< T >::dim = 0 |
Order of the (square) local matrix, i.e.
the level domain.
Definition at line 48 of file mdd_types.h.
Referenced by line::mdd::MddLocalMatrix< T >::Builder::build(), and identity().
| std::size_t line::mdd::MddLocalMatrix< T >::nnz = 0 |
Total number of stored nonzeros.
Definition at line 56 of file mdd_types.h.
Referenced by line::mdd::MddLocalMatrix< T >::Builder::build(), identity(), line::mdd::mdd_descriptor(), and line::mdd::mdd_ps().
| std::vector<T> line::mdd::MddLocalMatrix< T >::row_sum |
row_sum[i] is the local enabling rate lambda[i].
Definition at line 54 of file mdd_types.h.
Referenced by line::mdd::MddLocalMatrix< T >::Builder::build(), and identity().
| std::vector<std::vector<T> > line::mdd::MddLocalMatrix< T >::vals |
vals[i] holds the values of the nonzeros of row i, aligned with cols[i].
Definition at line 52 of file mdd_types.h.
Referenced by line::mdd::MddLocalMatrix< T >::Builder::build(), and identity().