Download Kepler User Manual

Transcript
Section 5
through a list of multiple species, and invokes the RunCompositeActor to calculate the
niche model for each one.
The initial inputs of a workflow contained in a RunCompositeActor are specified as
parameters or via port-parameters. The RunCompositeActor in the example uses two portparameters: Species_Name and Location_Filename. The values of the
parameters (mephitis and location.dat) are used for the first workflow iteration.
Subsequent iterations use values passed to the RunCompositeActor by the top-level
workflow via ports (i.e., additional species names and associated data to be processed).
5.6.5 Creating Feedback Loops
From integrating differential equations, to modeling signal amplification or how global
warming and the concentration of greenhouse gases are related, feedback loops are a
common workflow structure. A feedback loop consists of iterations that rely on the value
of previous iterations. The simple example in Figure 5.60 shows a workflow that adds
one to the value of each previous workflow iteration and outputs the new sum, for
example. A relation is used to branch the looped output so that the sums can be displayed
as well as cycled back to the input of the Add or Subtract actor.
Figure 5.59: A simple feedback loop used to add one to the value of the previous iteration.
Note that the workflow in Figure 5.60 uses a SampleDelay actor, which is required when
constructing a feedback loop that uses an SDF director. The SampleDelay actor gets the
iteration loop 'started'. Because the input of the feedback loop depends on its output, the
loop will deadlock on the first iteration because there is not yet any output. The
SampleDelay actor breaks this deadlock by providing some initial values (specified with
167