Files
IIabm/product.py
2023-08-22 23:22:30 -04:00

26 lines
879 B
Python

import agentpy as ap
class ProductAgent(ap.Agent):
def setup(self, code, name):
self.product_network = self.model.product_network
self.code = code
self.name = name
def a_successors(self):
# find successors of a product, return in AgentList (ProductAgent)
nodes = self.product_network.graph.successors(
self.product_network.positions[self])
return ap.AgentList(
self.model,
[ap.AgentIter(self.model, node).to_list()[0] for node in nodes])
def a_predecessors(self):
# find predecessors of a product, return in AgentList (ProductAgent)
nodes = self.product_network.graph.predecessors(
self.product_network.positions[self])
return ap.AgentList(
self.model,
[ap.AgentIter(self.model, node).to_list()[0] for node in nodes])