我来自简单的音频数字世界,我在Matlab编码器编译中发现复数错误:
左侧被限制为非复杂,但右侧是复杂的。要纠正此问题,请使用REAL函数使右侧真实,或使用COMPLEX函数将左侧变量的初始赋值更改为复数值。
如何在这种情况下使用真实功能?
tfr= zeros (N,tcol) ;
for icol=1:tcol,
tfr(1,icol)= sum(g2 .* x(ti-points,1) .* conj(x(ti-points,xcol))); % error here
答案 0 :(得分:1)
使用COMPLEX函数将左侧变量的初始赋值更改为复数值。
这正是你必须要做的。
vagrant up
您必须告诉编码人员为复杂变量分配一个具有足够空间的变量。
答案 1 :(得分:0)
目前已经解决了这个问题:
更改初始数组语句:
carr= zeros (N,tcol) ;
tfr = complex(carr,0);
可能有更好的答案。