A simple and effective simulator can be built by focusing on the atomic models and relegating the network models to telling the simulator how atomic models are connected. The simulator devised in this section works from the bottom up. Network models are intermediate steps through which events pass as they travel between the atomic components; every operation begins and ends with an atomic model.

The basis for this approach has two parts:

1. The state transition function of the resultant of a network is defined by the state transition functions of the atomic components at the leaves of the tree rooted in that network. We can, therefore, skip the construction of resultants for the intermediate networks and work directly with the atomic models at the leaves.

2. The sets of influencees can be used to compute the set of atomic components, which may be anywhere in the hierarchy of models, that are influenced by any particular atomic component. The calculation starts with an atomic model, ends with a set of atomic models, and is done recursively by employing the sets of influencees and coupling functions of each network encountered along the way.

The set AN of atomic models that are beneath a network model N is found by descending recursively into the network and adding to AN all of the atomic models that are found. The set AN is defined by


If N is the network to be simulated, then AN is the set of atomic models that the simulator ...

Get Building Software for Simulation: Theory and Algorithms, with Applications in C++ now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.