Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
for [2013/09/27 17:33] admin |
for [2026/08/28 03:20] (current) hermann Sync from local documentation review |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | - Ordered List Item====== For ====== | + | ====== For ====== |
| ===== Description ===== | ===== Description ===== | ||
| - | This container makes a set of functors, linked in a dataflow chain, iterate a number of times. | + | 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 ===== | ===== Inputs ===== | ||
| ^ Name ^ Type ^ Description ^ | ^ Name ^ Type ^ Description ^ | ||
| - | | First Iteration Step | [[Double Type|Double]] | Initial step or model iteration. | | + | | First Iteration Step | [[Real Value Type]] | Initial step or model iteration. | |
| - | | Last Iteration Step | [[Double Type|Double]] | Final step or model iteration. | | + | | Last Iteration Step | [[Real Value Type]] | Last step or model iteration. | |
| ===== Optional Inputs ===== | ===== Optional Inputs ===== | ||
| - | ^ Name ^ Type ^ Description ^ | + | ^ Name ^ Type ^ Description ^ Default Value ^ |
| - | | Step Increment | [[Double Type|Double]] | Increment/decrement used to set the number of the next step or model iteration. This value must always be non-zero. If the initial step is less than the final step, this value must be positive. Otherwise, this value must be negative. | | + | | 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 | | ||
| - | ===== Output ===== | + | ===== 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 ===== | ===== Internal Outputs ===== | ||
| ^ Name ^ Type ^ Description ^ | ^ Name ^ Type ^ Description ^ | ||
| - | | Step | [[Double Type|Double]] | Current step. | | + | | Step | [[Real Value Type]] | Current step or model iteration. | |
| ===== Group ===== | ===== Group ===== | ||
| Line 28: | Line 32: | ||
| ===== Notes ===== | ===== 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 ===== | ===== Internal Name ===== | ||
| For | For | ||
| + | |||