Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
for [2015/10/11 21:20]
admin
for [2026/08/28 03:20] (current)
hermann Sync from local documentation review
Line 1: Line 1:
-====== For ====== ​+====== For ======
  
 ===== Description ===== ===== Description =====
  
-This container ​makes a set of functorslinked in dataflow chainiterate ​number of times.+This container ​creates ​a set of steps between two boundschanging the step by fixed increment on every iterationand executes the functors it contains once for each step. Each execution is called ​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  | [[Real Value Type|Real Value]]  | Initial step or model iteration. ​ | +| First Iteration Step  | [[Real Value Type]] ​ | Initial step or model iteration. ​ | 
-| Last Iteration Step  | [[Real Value Type|Real Value]]  | 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  | [[Real Value Type|Real Value]]  | 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
 +