For
Description
This container creates a set of steps between two bounds, changing the step by a fixed increment on every iteration, and executes the functors it contains once for each step. Each execution is called a step. While a step runs, the container makes the current step available to its contents through the internal output port Step.
Inputs
| Name | Type | Description |
|---|---|---|
| First Iteration Step | Real Value Type | Initial step or model iteration. |
| Last Iteration Step | Real Value Type | Last step or model iteration. |
Optional Inputs
| Name | Type | Description | Default Value |
|---|---|---|---|
| Step Increment | Real Value Type | Increment or decrement applied to reach the next step or model iteration. | 1 |
| Sequence Input | None Type | Ensures that the functor connected to this port finishes executing before this container starts. | None |
Outputs
| Name | Type | Description |
|---|---|---|
| Sequence Output | None Type | Connect this port to another container's Sequence Input to make this container finish executing before that other container starts. |
Internal Outputs
| Name | Type | Description |
|---|---|---|
| Step | Real Value Type | Current step or model iteration. |
Group
Notes
Step Increment cannot be zero, and its sign must agree with the direction from First Iteration Step to Last Iteration Step — positive when First Iteration Step is less than Last Iteration Step, negative when it is greater. Otherwise the loop would never reach Last Iteration Step and run forever, so the model raises an error.
Unlike other loop containers, the content of this container always executes at least once, even when First Iteration Step and Last Iteration Step are equal. A result it produces can therefore be used directly outside the container, with no need for a junction.
When there is no dependency between steps, this container may process several of them at the same time instead of one after another.
Internal Name
For