fmdtools.define.flow
The flow subpackage provides a representation of flows, which are used to connect Blocks in an Architecture. Different types of flows are provided in the following modules, as shown below/
Different types of flows defined in fmdtools.
These are provided in the modules:
fmdtools.define.flow.base
Flow classes are used to represent variables that are shared between blocks, such as connections or a shared environment.
Flows are represented symbolically as circles in fmdtools visualizations, as shown below:
Like blocks, flows (see example below) can hold containers (e.g., States, Parameters, etc.) in order to represent different properties:
Example flow class structure.
The following template shows the basic syntax used to define simple flows in a system:
Flow class template/example.
fmdtools.define.flow.multiflow
MultiFlow can be used to represent signals and perceptions in which a flow may have independent copies on the side of the source and perceiver.
Flows are represented symbolically as pentagons in fmdtools visualizations, as shown below:
MultiFlow enables the representation of independent flow copies in a single class using the structure shown below:
Illustration of the class structure for MultiFlows.
fmdtools.define.flow.commsflow
CommsFlow can be used to represent communication exchanges between agents. CommsFlows are represented as octagons in fmdtools model visualizations:
CommsFlow enables this passing of exchanges using the structure shown below:
Illustration of CommsFlow class structure.