why i'm getting this error?
1 次查看(过去 30 天)
显示 更早的评论
why i'm getting this error: Error using * Inner matrix dimensions must agree.
thanks
2 个评论
David Fletcher
2018-3-25
编辑:David Fletcher
2018-3-25
Sounds like you're trying to do inner matrix multiplication rather than element by element multiplication
possibly here: (a line number where the error occurred might be handy)
*an*cos*(2*pi*f0*n.'*t) + *bn*sin*(2*pi*f0*n.'*t
instead of
an.*cos(2*pi*f0*n.'*t) + bn.*sin(2*pi*f0*n.'*t
采纳的回答
Star Strider
2018-3-25
Your ‘an’ and ‘bn’ are (1x4) vectors, and ‘t’ is (1x500).
One way to avoid it is to transpose ‘an’ and ‘bn’ to column vectors:
s = s + a0 + an'*cos(2*pi*f0*n.'*t) + bn'*sin(2*pi*f0*n.'*t);
I do not know what you want for a final result. If you want a single row vector for each ‘n’, sum them:
s = s + a0 + sum(an'*cos(2*pi*f0*n.'*t) + bn'*sin(2*pi*f0*n.'*t));
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Time-Frequency Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!