Matlab编码器,单元阵列未完全定义

时间:2016-09-27 07:16:02

标签: matlab cell-array matlab-coder

我已经构建了以下功能:

function [obs,dw,rot] = myfun(T,obs,dw,dt,rot)

if rot == 0

        v = (0:dt:T(1)-dw);
   obs{1} = v./T(1);
       dw = (dt+v(end)-T(1));

for i = 2:numel(obs)

        v = (dw:dt:T(i)); 
   obs{i} = v./T(i)+(rot+(i-1));
       dw = (dt+v(end)-T(i));


end
else

for i = 1:numel(T)

        v = (dw:dt:T(i)); 
   obs{i} = v./T(i)+(rot+i);
       dw = (dt+v(end)-T(i));


 end

end

rot = rot + numel(T);

end

end

例如,

dw=0; rot=0; dt=1; T=1+2*rand(10,1); obs=cell(length(T),1);

并申请

[obs,dw,rot] = myfun(T,obs,dw,dt,rot);

当我尝试使用 Matlab Coder 来加速myfun时, 它显示以下错误:

MATLAB单元阵列' obs'没有完全定义。

有什么想法吗?

0 个答案:

没有答案