Next: Nodes with indexes
Up: INTRODUCTION
Previous: Example of continuous simulation
A summary of the characteristics of the predefined node types is shown
in the following list. Any node can be activated by an event that
refers to it. Others (not all) may be also activated during the
network scanning process.
Some node types have EL and IL, others only EL, others none
of them. When activation is attempted by the scanning process, it
may be inhibited in certain conditions (EL empty). Otherwise
the code is executed each time that the node is scanned. The
user can avoid these repetitions by means of special instructions.
All activation of a node starts a scanning process with the exception
of type C nodes.
See Chapter 4 for a detailed account of the processing of the
different node types.
- I (Input) Generates messages that enter the
simulation process.
It creates messages and sends them to
the successor nodes.
It has neither EL nor IL.
It may only be activated by an
event that refers to it. It is never
activated again
by the scanning of the network.
- L (Line) Simulates queue discipline.
The messages that enter its EL are passed
to its IL where they remain in the order
indicated by the code.
This order may be FIFO (First In First Out)
LIFO (Last In First Out) or any other
programmed by the user.
It is activated by an event or during
the scanning of the network if the EL is not
empty.
- G (Gate) Stops or allows message flow.
It has an EL for the retained messages. It may
be activated by an event or during the
scanning of the network if the EL is not empty.
The instruction STATE, used to change the state
of the gate, is only executed if the node is
activated explicitly by an event which refers
to the node.
- R (Resource) Simulates resources used by messages.
A real value (called the node capacity)
is associated to the Resource type node.
The messages in the EL represent entities
that demand a certain quantity of that
capacity during a certain period of time.
The code has two parts. One examines the
incoming messages, the other processes the
outgoing messages.
The EL is examined and, for each
message, it is checked if the demanded
quantity is
available. If it is so, the message is
moved to the IL,
the time of future depart is scheduled
in the FEL, and
the quantity of resource used for the message is
subtracted from the available capacity.
If there is not
enough capacity, the message remains in the EL.
When the depart event is executed,
the message with the
corresponding time of depart is
extracted from the IL
and it is sent to the successor node. If there
are more than one successor, a copy is sent to
each of them.
The user can also control this process of message
sending using the RELEASE instruction.
Each time the node moves a message, the network
is scanned. The part of
the code that processes the departing message
is only activated by a departing event and
executed only once in the event process.
The part that deals with the incoming messages
in the EL may be activated
during the scanning of the network, but only
if the EL is not empty.
- D (Decision) Selects messages from predecessor nodes and
sends them to successor nodes. It has an EL for each
Š predecessor. Some messages are taking from the ELs
and sent to the successor nodes according to the
selection rules indicated in the code. It is
activated during the scanning process and only if
any of the EL has messages.
- E (Exit) Destroys messages. The message in the EL is
processed. The code in the node is executed and the
message is destroyed.
The node is activated during the
scanning of the network if the EL is not empty.
- C (Continuous) Solves systems of ordinary differential
equations of first order. It accepts instructions
of the form
<variable>' := <expression>
.
The system considers a succession of such
instructions as a system of differential equations.
When the node is activated,
the solving process starts. It may be interrupted
and continued when the node is deactivated or
activated by special instructions. During the
execution the node schedules its own activation
at each integration step. This activations does
not cause scanning of the network. C type nodes
have neither EL nor IL. - A (Autonomous) Executes events at scheduled times. It is only
activated by an event that refers to it. It is not
activated again during the scanning of the network.
It has neither EL nor IL. It can activate
itself and other nodes, change variables,
and send messages.
- X (General) Used to general processes programmed by the user.
These nodes may be designed by any other letter
different of G, L, I, D, E, R, C, A. The node is
activated during scanning processes
(this is the main difference
with the A type). It has not EL or IL unless this
is explicitly required by the user. The management
of these lists must be programmed by the user with
the help of GLIDER instructions and procedures.
Next: Nodes with indexes
Up: INTRODUCTION
Previous: Example of continuous simulation
Marta Sananes-Domingo
Fri Mar 17 10:05:26 PST 2000