![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
The assembled drift terms of a net. More...
#include <line/solvers/fluid/fluid_petri_terms.h>
Public Attributes | |
| std::size_t | I = 0 |
| nodes | |
| std::size_t | K = 0 |
| classes | |
| std::size_t | M = 0 |
| stations | |
| std::vector< std::size_t > | places |
| std::vector< std::size_t > | transitions |
| 1-based node indices | |
| std::vector< std::string > | names_node |
| 0-based, one per node | |
| std::size_t | nstate = 0 |
| marking coordinates plus phase coordinates | |
| std::size_t | nm = 0 |
| marking coordinates alone | |
| std::vector< std::vector< std::ptrdiff_t > > | pidx |
| pidx(p,k) is the state coordinate of (0-based node p, class k), or npos. | |
| std::vector< std::size_t > | coord_node |
| std::vector< std::size_t > | coord_class |
| std::vector< std::ptrdiff_t > | coord_station |
| std::vector< PetriMode > | modes |
| std::vector< std::size_t > | timed_idx |
| std::vector< std::size_t > | imm_idx |
| Matrix< double > | D |
| (nstate x nev) incidence | |
| std::vector< double > | rate_base |
| std::size_t | nev = 0 |
| std::vector< int > | ev_kind |
| std::vector< int > | ev_mode |
| std::vector< int > | ev_phase |
| std::vector< int > | ev_to |
| std::vector< std::ptrdiff_t > | ev_station |
| std::vector< std::ptrdiff_t > | ev_class |
| std::vector< std::size_t > | imm_col |
| std::vector< std::size_t > | latch_col |
| std::vector< std::size_t > | stoch_col |
| std::vector< std::size_t > | latch_mode |
| std::vector< std::pair< std::size_t, std::size_t > > | cov_pairs |
| The Sigma entries the closure reads, and the map back to them. | |
| std::size_t | npair = 0 |
| std::vector< std::vector< std::ptrdiff_t > > | pair_index |
| std::vector< std::size_t > | cov_idx |
| std::map< std::size_t, std::vector< std::size_t > > | consumers |
| (station*K + class) -> the events that take tokens out of / into it. | |
| std::map< std::size_t, std::vector< std::size_t > > | producers |
| std::map< std::size_t, std::vector< double > > | consumer_w |
| std::vector< double > | x0 |
| std::vector< std::vector< double > > | m0full |
The assembled drift terms of a net.
Definition at line 111 of file fluid_petri_terms.h.
| std::map<std::size_t, std::vector<double> > line::fluid::petri::PetriTerms::consumer_w |
Definition at line 146 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::solver_fluid_petri().
| std::map<std::size_t, std::vector<std::size_t> > line::fluid::petri::PetriTerms::consumers |
(station*K + class) -> the events that take tokens out of / into it.
Definition at line 145 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::solver_fluid_petri().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::coord_class |
Definition at line 123 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::solver_fluid_petri().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::coord_node |
Definition at line 123 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::solver_fluid_petri().
| std::vector<std::ptrdiff_t> line::fluid::petri::PetriTerms::coord_station |
Definition at line 124 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::solver_fluid_petri().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::cov_idx |
Definition at line 142 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::pair<std::size_t, std::size_t> > line::fluid::petri::PetriTerms::cov_pairs |
The Sigma entries the closure reads, and the map back to them.
Definition at line 139 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::solver_fluid_petri().
| Matrix<double> line::fluid::petri::PetriTerms::D |
(nstate x nev) incidence
Definition at line 129 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_conservation(), and line::fluid::petri::petri_jacobian().
| std::vector<std::ptrdiff_t> line::fluid::petri::PetriTerms::ev_class |
Definition at line 133 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<int> line::fluid::petri::PetriTerms::ev_kind |
Definition at line 132 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_jacobian(), line::fluid::petri::petri_rates(), and line::fluid::petri::solver_fluid_petri().
| std::vector<int> line::fluid::petri::PetriTerms::ev_mode |
Definition at line 132 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_jacobian(), line::fluid::petri::petri_rates(), and line::fluid::petri::solver_fluid_petri().
| std::vector<int> line::fluid::petri::PetriTerms::ev_phase |
Definition at line 132 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_jacobian(), and line::fluid::petri::petri_rates().
| std::vector<std::ptrdiff_t> line::fluid::petri::PetriTerms::ev_station |
Definition at line 133 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<int> line::fluid::petri::PetriTerms::ev_to |
Definition at line 132 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::size_t line::fluid::petri::PetriTerms::I = 0 |
nodes
Definition at line 112 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::solver_fluid_petri().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::imm_col |
Definition at line 135 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::imm_idx |
Definition at line 127 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_immediate(), line::fluid::petri::petri_rates(), and line::fluid::petri::solver_fluid_petri().
| std::size_t line::fluid::petri::PetriTerms::K = 0 |
classes
Definition at line 113 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_constraints(), and line::fluid::petri::solver_fluid_petri().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::latch_col |
Definition at line 135 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::latch_mode |
Definition at line 136 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_rates(), and line::fluid::petri::solver_fluid_petri().
| std::size_t line::fluid::petri::PetriTerms::M = 0 |
stations
Definition at line 114 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::vector<double> > line::fluid::petri::PetriTerms::m0full |
Definition at line 149 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<PetriMode> line::fluid::petri::PetriTerms::modes |
| std::vector<std::string> line::fluid::petri::PetriTerms::names_node |
0-based, one per node
Definition at line 116 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_constraints(), and line::fluid::petri::solver_fluid_petri().
| std::size_t line::fluid::petri::PetriTerms::nev = 0 |
Definition at line 131 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_conservation(), line::fluid::petri::petri_jacobian(), line::fluid::petri::petri_rates(), and line::fluid::petri::solver_fluid_petri().
| std::size_t line::fluid::petri::PetriTerms::nm = 0 |
marking coordinates alone
Definition at line 119 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::solver_fluid_petri().
| std::size_t line::fluid::petri::PetriTerms::npair = 0 |
Definition at line 140 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_theta(), and line::fluid::petri::solver_fluid_petri().
| std::size_t line::fluid::petri::PetriTerms::nstate = 0 |
marking coordinates plus phase coordinates
Definition at line 118 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_conservation(), line::fluid::petri::petri_constraints(), line::fluid::petri::petri_jacobian(), and line::fluid::petri::solver_fluid_petri().
| std::vector<std::vector<std::ptrdiff_t> > line::fluid::petri::PetriTerms::pair_index |
Definition at line 141 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::vector<std::ptrdiff_t> > line::fluid::petri::PetriTerms::pidx |
pidx(p,k) is the state coordinate of (0-based node p, class k), or npos.
Definition at line 122 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::petri_constraints().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::places |
Definition at line 115 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::petri_constraints().
| std::map<std::size_t, std::vector<std::size_t> > line::fluid::petri::PetriTerms::producers |
Definition at line 145 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::solver_fluid_petri().
| std::vector<double> line::fluid::petri::PetriTerms::rate_base |
Definition at line 130 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_jacobian(), line::fluid::petri::petri_rates(), and line::fluid::petri::solver_fluid_petri().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::stoch_col |
Definition at line 135 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::timed_idx |
Definition at line 127 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::solver_fluid_petri().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::transitions |
1-based node indices
Definition at line 115 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<double> line::fluid::petri::PetriTerms::x0 |
Definition at line 148 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_conservation(), and line::fluid::petri::solver_fluid_petri().