不能使用一些Matlab MPC Toolbox功能

时间:2014-12-09 08:57:23

标签: matlab toolbox mpc

我正在尝试使用MPC工具箱中的setoutdist Matlab函数(我在Windows 8.1上使用Matlab R2013a)。作为我收到的回复:

    Undefined function 'setoutdist' for input arguments of type 'ss'.

我可以使用help setoutdist获得有关此功能的帮助。当我输入函数名称和左括号时,我正在接收带有参数列表的提示。当我使用which setoutdist -all时,我收到了正确的输出:

C:\Program Files\MATLAB\R2013a\toolbox\mpc\mpc\@mpc\setoutdist.m  % mpc method code here

但是即使在默认的Matlab路径中该函数也不起作用,所以我不认为它是阴影的。 其他功能也是如此,例如setindistsetestimmpc_struct等,但mpcmpcstatempcmove功能有效正确。

我在尝试:clear allclear classessrehash toolboxrehash pathresetrehash toolboxreset,使用pathtool恢复默认路径。我已经阻止了防病毒软件,并在其列表中添加了exeptions。我甚至重新安装了我的Matlab,没有任何帮助。

也许这很重要:当我尝试编辑setoutdist.m时,我收到的消息表明访问被拒绝了。

我会非常感谢任何帮助...

1 个答案:

答案 0 :(得分:0)

您是如何致电setoutdist的?正确的语法是三者之一(参见documentation - 对于R2014b):

setoutdist(MPCobj,'integrators')
setoutdist(MPCobj,'remove',channels)
setoutdist(MPCobj,'model',model)

其中MPCobj是Model Predictive Controller对象,例如使用mpc函数创建。从错误消息看,您正在使用状态空间对象调用该函数,这是不允许的(我猜测)。