LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
line::fluid::petri::PetriTerms Struct Reference

The assembled drift terms of a net. More...

#include <line/solvers/fluid/fluid_petri_terms.h>

Collaboration diagram for line::fluid::petri::PetriTerms:

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< PetriModemodes
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

Detailed Description

The assembled drift terms of a net.

Definition at line 111 of file fluid_petri_terms.h.

Member Data Documentation

◆ consumer_w

std::map<std::size_t, std::vector<double> > line::fluid::petri::PetriTerms::consumer_w

◆ consumers

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().

◆ coord_class

std::vector<std::size_t> line::fluid::petri::PetriTerms::coord_class

◆ coord_node

std::vector<std::size_t> line::fluid::petri::PetriTerms::coord_node

◆ coord_station

std::vector<std::ptrdiff_t> line::fluid::petri::PetriTerms::coord_station

◆ cov_idx

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().

◆ cov_pairs

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().

◆ D

Matrix<double> line::fluid::petri::PetriTerms::D

◆ ev_class

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().

◆ ev_kind

std::vector<int> line::fluid::petri::PetriTerms::ev_kind

◆ ev_mode

std::vector<int> line::fluid::petri::PetriTerms::ev_mode

◆ ev_phase

std::vector<int> line::fluid::petri::PetriTerms::ev_phase

◆ ev_station

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().

◆ ev_to

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().

◆ I

std::size_t line::fluid::petri::PetriTerms::I = 0

◆ imm_col

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().

◆ imm_idx

std::vector<std::size_t> line::fluid::petri::PetriTerms::imm_idx

◆ K

std::size_t line::fluid::petri::PetriTerms::K = 0

◆ latch_col

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().

◆ latch_mode

std::vector<std::size_t> line::fluid::petri::PetriTerms::latch_mode

◆ M

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().

◆ m0full

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().

◆ modes

◆ names_node

std::vector<std::string> line::fluid::petri::PetriTerms::names_node

◆ nev

◆ nm

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().

◆ npair

std::size_t line::fluid::petri::PetriTerms::npair = 0

◆ nstate

std::size_t line::fluid::petri::PetriTerms::nstate = 0

◆ pair_index

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().

◆ pidx

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().

◆ places

std::vector<std::size_t> line::fluid::petri::PetriTerms::places

◆ producers

std::map<std::size_t, std::vector<std::size_t> > line::fluid::petri::PetriTerms::producers

◆ rate_base

std::vector<double> line::fluid::petri::PetriTerms::rate_base

◆ stoch_col

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().

◆ timed_idx

std::vector<std::size_t> line::fluid::petri::PetriTerms::timed_idx

◆ transitions

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().

◆ x0

std::vector<double> line::fluid::petri::PetriTerms::x0

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