如何使用Real();复杂();函数在Matlab中定义一个复数?

时间:2015-07-04 10:11:53

标签: matlab matlab-compiler

我来自简单的音频数字世界,我在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

2 个答案:

答案 0 :(得分:1)

  

使用COMPLEX函数将左侧变量的初始赋值更改为复数值。

这正是你必须要做的。

vagrant up

您必须告诉编码人员为复杂变量分配一个具有足够空间的变量。

答案 1 :(得分:0)

目前已经解决了这个问题:

更改初始数组语句:

carr= zeros (N,tcol) ;  
tfr = complex(carr,0);

可能有更好的答案。