Matlab壳函数误差

Matlab壳函数误差,matlab,Matlab,我有一个函数,policyinteration(r,param),它有五个输出。我想创建一个函数excess(r,param),它的唯一输出是policyiteration的第一个输出 这就是我所做的一切: function [a]=excess(r,param) [a,~,~,~,~]=policyiteration(r,param); 每当我运行完整的程序时,Matlab都会说: Subscript indices must either be real positive integer

我有一个函数,
policyinteration(r,param)
,它有五个输出。我想创建一个函数
excess(r,param)
,它的唯一输出是policyiteration的第一个输出

这就是我所做的一切:

function [a]=excess(r,param)

[a,~,~,~,~]=policyiteration(r,param);
每当我运行完整的程序时,Matlab都会说:

Subscript indices must either be real positive integers or logicals.
我做错了什么


谢谢

愚蠢的问题:您绝对确定错误来自名为
excess
的函数中的行吗?是的,其他一切都正常,包括policyiteration。但是当我隔离并尝试过多时,就会发生这种情况。除非
policyinteration
的实现是奇数,并且取决于输出的数量
nargout
(这在理论上是可能的,但不是一个好主意),否则只需调用
a=policyinteration(r,param)。这个错误真的没有意义。可能您的工作区未清除,并且您有一个名为
exter
policyinteration
的数组变量,该变量会隐藏您的函数。谢谢。我在policyiteration中的一个输出被称为Overse,它抛弃了一切。我不知道这是个问题。现在都修好了。谢谢