module YPetri::Simulation::Transitions::Type_ts
Public Instance Methods
delta()
click to toggle source
Delta contribution to free places.
# File lib/y_petri/simulation/transitions/ts.rb, line 18 def delta delta_closure.call end
delta_closures()
click to toggle source
ts transitions have action closures.
# File lib/y_petri/simulation/transitions/ts.rb, line 12 def delta_closures map &:delta_closure end
to_delta_closure()
click to toggle source
Constructs a delta closure that outputs a delta vector corresponding to free places. The vector is the delta contribution of the transitions in this collection.
# File lib/y_petri/simulation/transitions/ts.rb, line 33 def to_delta_closure fp = free_places closures = delta_closures sMV = simulation.MarkingVector code_sections = map.with_index do |t, i| "a = closures[#{i}].call\n" + t.increment_by_codomain_code( vector: "delta", source: "a" ) end body = code_sections.join( "\n" ) λ = <<-LAMBDA -> do delta = sMV.zero( fp ) #{body} return delta end LAMBDA eval λ end
Also aliased as: delta_closure
Δ()
click to toggle source
Delta contribution to all places
# File lib/y_petri/simulation/transitions/ts.rb, line 24 def Δ f2a * delta end
Also aliased as: delta_all