我有一个关于使用带有成对变量的for循环的问题。
现在我正在使用循环:
For i=1:1:10
Code
End
代码执行Simulink模型。我需要在这个模型中引入两个变量。一个是Torque(A1-A10),另一个是TriggerTime(B1-B10)。但我需要成对使用它们。因此,例如我想用A1,B1,i(1)条件执行模型,下一次迭代使用A2,B2,i(2)等等。我在考虑类似的事情:
TriggerTime= [B1 B2. ..B10]
Torque=[ A1 A2… A10]
YY = 1;
For i= 1:1:10
TriggerTime[1,YY];
Break torque[1,YY];
Y= Y +1;
Code
End
纯粹在MATLAB中我认为这个代码可以工作(或不工作?)。但是当谈到我的Simulink模型时,它会让它变得更复杂一些:
ERROR_MESSAGE:
和
Simulink_model_part:
我试图弄清楚如何管理这些问题,但却无法解决。我可以看到它应该很简单,但无法理解我如何调整代码。
答案 0 :(得分:0)
很难回答关于Simulink的问题,因为提供的关于模型的信息很少,但是你在简单的for循环中遇到了一些问题,这让我想到问题就在于它。
这是你的例子:
TriggerTime= [B1 B2. ..B10]
Torque=[ A1 A2… A10]
YY = 1;
For i= 1:1:10
TriggerTime[1,YY];
Break torque[1,YY];
Y= Y +1;
Code
End
这些是一些问题:
i
。Y
,但也未使用。i
的初始化包含冗余1,应该只读取i=1:10
。[break][1]
,它终止了for循环。TriggerTime
和Torque
的初始化会产生两个1D数组,但是你期望在for循环中有两个2D数组,因为你给出了两个索引,{{ 1}}。尝试使用for循环,看看它是否更好:
[1,YY]