![]() |
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 plus fluid levels | |
| std::size_t | nm = 0 |
| marking coordinates alone | |
| std::vector< std::size_t > | fluid_places |
| Fluid places (FSPN): 1-based nodes, their level coordinates, capacities and initial levels. | |
| std::size_t | nf = 0 |
| std::vector< std::ptrdiff_t > | fidx |
| (I) level coordinate of a 0-based node, or -1 | |
| std::vector< std::size_t > | fluid_slot |
| std::vector< double > | fluid_cap |
| std::vector< double > | fluid_init |
| std::vector< std::ptrdiff_t > | fluid_station |
| 0-based station of each fluid place | |
| std::vector< std::string > | fluid_name |
| 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 > | ev_flow |
| Kind 6: the flow's position in its mode's flow_slot; 0 for every other kind. | |
| 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 > | flow_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 138 of file fluid_petri_terms.h.
| std::map<std::size_t, std::vector<double> > line::fluid::petri::PetriTerms::consumer_w |
Definition at line 184 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| 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 183 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::coord_class |
Definition at line 159 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::coord_node |
Definition at line 159 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::ptrdiff_t> line::fluid::petri::PetriTerms::coord_station |
Definition at line 160 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::cov_idx |
Definition at line 180 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 177 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| Matrix<double> line::fluid::petri::PetriTerms::D |
(nstate x nev) incidence
Definition at line 165 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 169 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::ev_flow |
Kind 6: the flow's position in its mode's flow_slot; 0 for every other kind.
Definition at line 171 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<int> line::fluid::petri::PetriTerms::ev_kind |
Definition at line 168 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<int> line::fluid::petri::PetriTerms::ev_mode |
Definition at line 168 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<int> line::fluid::petri::PetriTerms::ev_phase |
Definition at line 168 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 169 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 168 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::ptrdiff_t> line::fluid::petri::PetriTerms::fidx |
(I) level coordinate of a 0-based node, or -1
Definition at line 151 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::flow_col |
Definition at line 173 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<double> line::fluid::petri::PetriTerms::fluid_cap |
Definition at line 153 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::petri_constraints().
| std::vector<double> line::fluid::petri::PetriTerms::fluid_init |
Definition at line 153 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::string> line::fluid::petri::PetriTerms::fluid_name |
Definition at line 155 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::fluid_places |
Fluid places (FSPN): 1-based nodes, their level coordinates, capacities and initial levels.
Definition at line 149 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::fluid_slot |
Definition at line 152 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::petri_constraints().
| std::vector<std::ptrdiff_t> line::fluid::petri::PetriTerms::fluid_station |
0-based station of each fluid place
Definition at line 154 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 139 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::imm_col |
Definition at line 173 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 163 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_immediate(), and line::fluid::petri::petri_rates().
| std::size_t line::fluid::petri::PetriTerms::K = 0 |
classes
Definition at line 140 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::latch_col |
Definition at line 173 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 174 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::petri_rates().
| std::size_t line::fluid::petri::PetriTerms::M = 0 |
stations
Definition at line 141 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 187 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<PetriMode> line::fluid::petri::PetriTerms::modes |
Definition at line 162 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_immediate(), line::fluid::petri::petri_jacobian(), line::fluid::petri::petri_rates(), and line::fluid::petri::petri_theta().
| std::vector<std::string> line::fluid::petri::PetriTerms::names_node |
0-based, one per node
Definition at line 143 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::petri_constraints().
| std::size_t line::fluid::petri::PetriTerms::nev = 0 |
Definition at line 167 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_conservation(), line::fluid::petri::petri_jacobian(), and line::fluid::petri::petri_rates().
| std::size_t line::fluid::petri::PetriTerms::nf = 0 |
Definition at line 150 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::petri_constraints().
| std::size_t line::fluid::petri::PetriTerms::nm = 0 |
marking coordinates alone
Definition at line 146 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::size_t line::fluid::petri::PetriTerms::npair = 0 |
Definition at line 178 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::petri_theta().
| std::size_t line::fluid::petri::PetriTerms::nstate = 0 |
marking coordinates plus phase coordinates plus fluid levels
Definition at line 145 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), line::fluid::petri::petri_conservation(), line::fluid::petri::petri_constraints(), and line::fluid::petri::petri_jacobian().
| std::vector<std::vector<std::ptrdiff_t> > line::fluid::petri::PetriTerms::pair_index |
Definition at line 179 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 158 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 142 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 183 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<double> line::fluid::petri::PetriTerms::rate_base |
Definition at line 166 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::size_t> line::fluid::petri::PetriTerms::stoch_col |
Definition at line 173 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 163 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms().
| std::vector<std::size_t> line::fluid::petri::PetriTerms::transitions |
1-based node indices
Definition at line 142 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 186 of file fluid_petri_terms.h.
Referenced by line::fluid::petri::petri_build_terms(), and line::fluid::petri::petri_conservation().