使用迭代子系统中的 Assignment 模块分配信号值
R2026b此示例说明如何在 Simulink® 中将在 for 循环中计算的值赋给信号中的指定元素。您可以将 Assignment 和 For Iterator Subsystem 模块组合起来用于此类赋值。您可以使用向量、矩阵或多维信号,并在单一时间步内完成赋值。
在 ex_assignment_block_with_for_iterator 模型中,For Iterator 子系统内部的 Assignment 模块将来自 for 循环的信号值赋给输出向量信号。

模型行为
For Iterator 模块创建一个索引
,该索引乘以因子 3。Assignment 模块使用此放大后的索引值作为由 U 指示的输入。Assignment 模块使用索引值
将值赋给输出向量 Y。Assignment 和 For Iterator 模块都使用从 1 开始的索引。在第一次迭代中,Assignment 模块将第一个输入 Y0 复制到输出 Y,并将第二个输入 U 赋给输出 Y(E1)。在后续迭代中,Assignment 模块将 U 的当前值赋给 Y(Ei),即不先将 Y0 复制到 Y。这些操作发生在单个时间步内。
模型仿真
对模型进行仿真。Display 模块显示值 3、6 和 9,它们分别是第一次、第二次和第三次迭代中索引值 1、2 和 3 的三倍。