我使用simulink功能块来模拟微分方程xdot = -x+x^2
与此同时,我使用乘法器和比较器手动生成相同的功能。
两种模拟都使用积分器块来计算导数xdot,其中积分器的初始条件设置为区间[-0.5:0.5:0.5]
。
我无法弄清楚为什么我会从这些类似的模拟中得到不同的回答?请注意,手动构建模拟响应是正确的。
以下是simulink模型:diff equa model
答案 0 :(得分:0)
AHA!我懂了。看看这个(它是第一个时间步的模拟):
现在我们可以看到问题 - Fcn
阻止了解,u
是一个向量!所以它只适用于矢量的第一个元素!
我发现这很奇怪,请检查帮助:matlab official。 我们可以看到:
u - 块的输入。如果你是一个向量,你(i)代表第i个 向量的元素;你(1)或你独自代表第一个元素。
因此。我认为模型的底部部分就像你想要的那样!